my_api_client 1.3.1 → 2.1.0

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 (248) hide show
  1. checksums.yaml +4 -4
  2. data/.dockerignore +8 -0
  3. data/.envrc.skeleton +0 -1
  4. data/.github/dependabot.yml +130 -7
  5. data/.github/workflows/ci.yml +348 -0
  6. data/.github/workflows/dependabot-auto-merge.yml +148 -0
  7. data/.github/workflows/release.yml +35 -0
  8. data/.github/workflows/rubocop_challenge.yml +35 -0
  9. data/.gitignore +1 -0
  10. data/.rubocop.yml +1 -1
  11. data/.ruby-version +1 -1
  12. data/AGENTS.md +149 -0
  13. data/CHANGELOG.md +81 -2
  14. data/CLAUDE.md +6 -0
  15. data/Dockerfile +22 -0
  16. data/Gemfile +4 -2
  17. data/Gemfile.lock +68 -66
  18. data/README.md +398 -62
  19. data/docker-compose.yml +29 -0
  20. data/docs/runbooks/dependabot_pr_auto_merge.md +122 -0
  21. data/gemfiles/rails_7.2.gemfile +1 -1
  22. data/gemfiles/{rails_7.1.gemfile → rails_8.0.gemfile} +2 -2
  23. data/gemfiles/{rails_6.1.gemfile → rails_8.1.gemfile} +2 -2
  24. data/lib/my_api_client/default_error_handlers.rb +1 -1
  25. data/lib/my_api_client/errors/client_error.rb +5 -1
  26. data/lib/my_api_client/integrations/bugsnag.rb +1 -1
  27. data/lib/my_api_client/version.rb +1 -1
  28. data/lib/my_api_client.rb +1 -1
  29. data/my_api/.ruby-version +1 -1
  30. data/my_api/AGENTS.md +35 -0
  31. data/my_api/Dockerfile +25 -0
  32. data/my_api/Gemfile +5 -16
  33. data/my_api/Gemfile.lock +257 -229
  34. data/my_api/README.md +36 -25
  35. data/my_api/Rakefile +3 -2
  36. data/my_api/app/controllers/application_controller.rb +1 -2
  37. data/my_api/app/controllers/error_controller.rb +2 -2
  38. data/my_api/app/controllers/header_controller.rb +6 -3
  39. data/my_api/app/controllers/pagination_controller.rb +5 -15
  40. data/my_api/app/controllers/rest_controller.rb +12 -16
  41. data/my_api/app/controllers/status_controller.rb +3 -4
  42. data/my_api/config/application.rb +12 -67
  43. data/{rails_app/rails_6.1 → my_api}/config/boot.rb +1 -1
  44. data/{rails_app/rails_7.1 → my_api}/config/environment.rb +0 -2
  45. data/my_api/config/environments/development.rb +6 -6
  46. data/my_api/config/environments/production.rb +5 -8
  47. data/my_api/config/environments/test.rb +5 -6
  48. data/my_api/config/routes.rb +2 -10
  49. data/my_api/config.ru +2 -4
  50. data/my_api/public/index.html +10 -90
  51. data/{rails_app/rails_7.0 → my_api}/spec/rails_helper.rb +3 -4
  52. data/my_api/spec/requests/error_controller_spec.rb +18 -0
  53. data/my_api/spec/requests/pagination_controller_spec.rb +22 -0
  54. data/my_api/spec/requests/rest_controller_spec.rb +22 -0
  55. data/my_api/spec/requests/status_controller_spec.rb +20 -0
  56. data/my_api/spec/spec_helper.rb +15 -23
  57. data/my_api_client.gemspec +3 -3
  58. data/rails_app/AGENTS.md +13 -0
  59. data/rails_app/rails_7.2/Dockerfile +1 -1
  60. data/rails_app/rails_7.2/Gemfile +3 -1
  61. data/rails_app/rails_7.2/Gemfile.lock +155 -131
  62. data/rails_app/{rails_7.1 → rails_8.0}/.dockerignore +16 -2
  63. data/rails_app/{rails_6.1 → rails_8.0}/.gitattributes +2 -1
  64. data/rails_app/rails_8.0/.github/workflows/ci.yml +39 -0
  65. data/rails_app/{rails_6.1 → rails_8.0}/.gitignore +11 -7
  66. data/rails_app/rails_8.0/.rubocop.yml +8 -0
  67. data/rails_app/rails_8.0/.ruby-version +1 -0
  68. data/rails_app/{rails_7.1 → rails_8.0}/Dockerfile +28 -18
  69. data/rails_app/rails_8.0/Gemfile +15 -0
  70. data/rails_app/rails_8.0/Gemfile.lock +287 -0
  71. data/rails_app/{rails_6.1 → rails_8.0}/Rakefile +1 -3
  72. data/rails_app/{rails_7.1 → rails_8.0}/app/controllers/application_controller.rb +0 -2
  73. data/rails_app/rails_8.0/app/jobs/application_job.rb +7 -0
  74. data/rails_app/rails_8.0/app/mailers/application_mailer.rb +4 -0
  75. data/rails_app/{rails_7.0 → rails_8.0}/app/models/application_record.rb +0 -2
  76. data/rails_app/rails_8.0/app/views/layouts/mailer.html.erb +13 -0
  77. data/rails_app/rails_8.0/app/views/layouts/mailer.text.erb +1 -0
  78. data/rails_app/rails_8.0/bin/brakeman +7 -0
  79. data/rails_app/rails_8.0/bin/dev +2 -0
  80. data/rails_app/rails_8.0/bin/docker-entrypoint +14 -0
  81. data/rails_app/rails_8.0/bin/rails +4 -0
  82. data/rails_app/rails_8.0/bin/rake +4 -0
  83. data/rails_app/rails_8.0/bin/rubocop +8 -0
  84. data/rails_app/{rails_7.1 → rails_8.0}/bin/setup +11 -12
  85. data/rails_app/rails_8.0/bin/thrust +5 -0
  86. data/rails_app/{rails_7.1 → rails_8.0}/config/application.rb +14 -16
  87. data/rails_app/rails_8.0/config/boot.rb +3 -0
  88. data/rails_app/rails_8.0/config/cable.yml +10 -0
  89. data/rails_app/rails_8.0/config/credentials.yml.enc +1 -0
  90. data/rails_app/{rails_7.1 → rails_8.0}/config/database.yml +18 -2
  91. data/rails_app/{rails_6.1 → rails_8.0}/config/environment.rb +1 -3
  92. data/rails_app/rails_8.0/config/environments/development.rb +70 -0
  93. data/rails_app/rails_8.0/config/environments/production.rb +86 -0
  94. data/rails_app/{rails_7.1 → rails_8.0}/config/environments/test.rb +16 -19
  95. data/rails_app/{rails_7.1 → rails_8.0}/config/initializers/cors.rb +0 -1
  96. data/rails_app/{rails_7.1 → rails_8.0}/config/initializers/filter_parameter_logging.rb +2 -4
  97. data/rails_app/{rails_7.0 → rails_8.0}/config/initializers/inflections.rb +0 -1
  98. data/rails_app/rails_8.0/config/puma.rb +41 -0
  99. data/rails_app/{rails_7.1 → rails_8.0}/config/routes.rb +1 -3
  100. data/rails_app/rails_8.0/config/storage.yml +34 -0
  101. data/rails_app/{rails_7.1 → rails_8.0}/config.ru +1 -3
  102. data/rails_app/{rails_7.1 → rails_8.0}/db/seeds.rb +0 -1
  103. data/rails_app/{rails_7.1 → rails_8.0}/spec/rails_helper.rb +1 -1
  104. data/rails_app/rails_8.1/.dockerignore +45 -0
  105. data/rails_app/rails_8.1/.gitattributes +9 -0
  106. data/rails_app/rails_8.1/.github/workflows/ci.yml +52 -0
  107. data/rails_app/rails_8.1/.gitignore +33 -0
  108. data/rails_app/rails_8.1/.rspec +1 -0
  109. data/rails_app/rails_8.1/.rubocop.yml +8 -0
  110. data/rails_app/rails_8.1/.ruby-version +1 -0
  111. data/rails_app/rails_8.1/Dockerfile +68 -0
  112. data/rails_app/rails_8.1/Gemfile +15 -0
  113. data/rails_app/rails_8.1/Gemfile.lock +290 -0
  114. data/rails_app/{rails_7.0 → rails_8.1}/Rakefile +1 -3
  115. data/rails_app/{rails_6.1 → rails_8.1}/app/controllers/application_controller.rb +0 -2
  116. data/rails_app/rails_8.1/app/jobs/application_job.rb +7 -0
  117. data/rails_app/rails_8.1/app/mailers/application_mailer.rb +4 -0
  118. data/rails_app/{rails_7.1 → rails_8.1}/app/models/application_record.rb +0 -2
  119. data/rails_app/rails_8.1/app/views/layouts/mailer.html.erb +13 -0
  120. data/rails_app/rails_8.1/app/views/layouts/mailer.text.erb +1 -0
  121. data/rails_app/rails_8.1/bin/brakeman +7 -0
  122. data/rails_app/rails_8.1/bin/bundler-audit +6 -0
  123. data/rails_app/rails_8.1/bin/ci +6 -0
  124. data/rails_app/rails_8.1/bin/dev +2 -0
  125. data/rails_app/{rails_7.1 → rails_8.1}/bin/docker-entrypoint +1 -1
  126. data/rails_app/rails_8.1/bin/rails +4 -0
  127. data/rails_app/rails_8.1/bin/rake +4 -0
  128. data/rails_app/rails_8.1/bin/rubocop +8 -0
  129. data/rails_app/{rails_7.0 → rails_8.1}/bin/setup +13 -13
  130. data/rails_app/rails_8.1/bin/thrust +5 -0
  131. data/rails_app/{rails_6.1 → rails_8.1}/config/application.rb +19 -17
  132. data/rails_app/rails_8.1/config/boot.rb +3 -0
  133. data/rails_app/rails_8.1/config/bundler-audit.yml +5 -0
  134. data/rails_app/rails_8.1/config/cable.yml +10 -0
  135. data/rails_app/rails_8.1/config/ci.rb +19 -0
  136. data/rails_app/rails_8.1/config/credentials.yml.enc +1 -0
  137. data/rails_app/rails_8.1/config/database.yml +40 -0
  138. data/rails_app/{rails_7.0 → rails_8.1}/config/environment.rb +1 -3
  139. data/rails_app/rails_8.1/config/environments/development.rb +73 -0
  140. data/rails_app/rails_8.1/config/environments/production.rb +86 -0
  141. data/rails_app/rails_8.1/config/environments/test.rb +53 -0
  142. data/rails_app/{rails_7.0 → rails_8.1}/config/initializers/cors.rb +1 -2
  143. data/rails_app/rails_8.1/config/initializers/filter_parameter_logging.rb +8 -0
  144. data/rails_app/{rails_7.1 → rails_8.1}/config/initializers/inflections.rb +0 -1
  145. data/rails_app/rails_8.1/config/locales/en.yml +31 -0
  146. data/rails_app/rails_8.1/config/puma.rb +42 -0
  147. data/rails_app/rails_8.1/config/routes.rb +10 -0
  148. data/rails_app/rails_8.1/config/storage.yml +27 -0
  149. data/rails_app/{rails_7.0 → rails_8.1}/config.ru +1 -3
  150. data/rails_app/rails_8.1/db/seeds.rb +9 -0
  151. data/rails_app/{rails_6.1 → rails_8.1}/spec/rails_helper.rb +1 -2
  152. metadata +141 -138
  153. data/.circleci/config.yml +0 -344
  154. data/README.jp.md +0 -785
  155. data/gemfiles/rails_7.0.gemfile +0 -15
  156. data/my_api/.envrc.skeleton +0 -3
  157. data/my_api/.jetskeep +0 -1
  158. data/my_api/Procfile +0 -7
  159. data/my_api/app/helpers/application_helper.rb +0 -5
  160. data/my_api/app/jobs/application_job.rb +0 -7
  161. data/my_api/app/models/application_item.rb +0 -5
  162. data/my_api/config/dynamodb.yml +0 -22
  163. data/my_api/spec/controllers/error_controller_spec.rb +0 -43
  164. data/my_api/spec/controllers/header_controller_spec.rb +0 -33
  165. data/my_api/spec/controllers/pagination_controller_spec.rb +0 -73
  166. data/my_api/spec/controllers/rest_controller_spec.rb +0 -99
  167. data/my_api/spec/controllers/status_controller_spec.rb +0 -47
  168. data/my_api/spec/fixtures/payloads/posts-index.json +0 -51
  169. data/my_api/spec/fixtures/payloads/posts-show.json +0 -53
  170. data/rails_app/rails_6.1/.rspec +0 -3
  171. data/rails_app/rails_6.1/Gemfile +0 -17
  172. data/rails_app/rails_6.1/Gemfile.lock +0 -195
  173. data/rails_app/rails_6.1/app/models/application_record.rb +0 -5
  174. data/rails_app/rails_6.1/bin/bundle +0 -122
  175. data/rails_app/rails_6.1/bin/rails +0 -6
  176. data/rails_app/rails_6.1/bin/rake +0 -6
  177. data/rails_app/rails_6.1/bin/setup +0 -35
  178. data/rails_app/rails_6.1/config/credentials.yml.enc +0 -1
  179. data/rails_app/rails_6.1/config/database.yml +0 -25
  180. data/rails_app/rails_6.1/config/environments/development.rb +0 -59
  181. data/rails_app/rails_6.1/config/environments/production.rb +0 -97
  182. data/rails_app/rails_6.1/config/environments/test.rb +0 -51
  183. data/rails_app/rails_6.1/config/initializers/application_controller_renderer.rb +0 -9
  184. data/rails_app/rails_6.1/config/initializers/backtrace_silencers.rb +0 -10
  185. data/rails_app/rails_6.1/config/initializers/cors.rb +0 -17
  186. data/rails_app/rails_6.1/config/initializers/filter_parameter_logging.rb +0 -8
  187. data/rails_app/rails_6.1/config/initializers/inflections.rb +0 -17
  188. data/rails_app/rails_6.1/config/initializers/mime_types.rb +0 -5
  189. data/rails_app/rails_6.1/config/initializers/wrap_parameters.rb +0 -16
  190. data/rails_app/rails_6.1/config/locales/en.yml +0 -33
  191. data/rails_app/rails_6.1/config/routes.rb +0 -5
  192. data/rails_app/rails_6.1/config.ru +0 -8
  193. data/rails_app/rails_6.1/db/seeds.rb +0 -8
  194. data/rails_app/rails_7.0/Gemfile +0 -13
  195. data/rails_app/rails_7.0/Gemfile.lock +0 -212
  196. data/rails_app/rails_7.0/app/controllers/application_controller.rb +0 -4
  197. data/rails_app/rails_7.0/bin/bundle +0 -122
  198. data/rails_app/rails_7.0/bin/rails +0 -6
  199. data/rails_app/rails_7.0/bin/rake +0 -6
  200. data/rails_app/rails_7.0/config/application.rb +0 -41
  201. data/rails_app/rails_7.0/config/boot.rb +0 -5
  202. data/rails_app/rails_7.0/config/credentials.yml.enc +0 -1
  203. data/rails_app/rails_7.0/config/database.yml +0 -25
  204. data/rails_app/rails_7.0/config/environments/development.rb +0 -58
  205. data/rails_app/rails_7.0/config/environments/production.rb +0 -70
  206. data/rails_app/rails_7.0/config/environments/test.rb +0 -52
  207. data/rails_app/rails_7.0/config/initializers/filter_parameter_logging.rb +0 -8
  208. data/rails_app/rails_7.0/config/locales/en.yml +0 -33
  209. data/rails_app/rails_7.0/config/routes.rb +0 -8
  210. data/rails_app/rails_7.0/db/seeds.rb +0 -8
  211. data/rails_app/rails_7.1/Gemfile +0 -16
  212. data/rails_app/rails_7.1/Gemfile.lock +0 -241
  213. data/rails_app/rails_7.1/README.md +0 -24
  214. data/rails_app/rails_7.1/Rakefile +0 -8
  215. data/rails_app/rails_7.1/bin/bundle +0 -122
  216. data/rails_app/rails_7.1/bin/rails +0 -6
  217. data/rails_app/rails_7.1/bin/rake +0 -6
  218. data/rails_app/rails_7.1/config/boot.rb +0 -5
  219. data/rails_app/rails_7.1/config/credentials.yml.enc +0 -1
  220. data/rails_app/rails_7.1/config/environments/development.rb +0 -58
  221. data/rails_app/rails_7.1/config/environments/production.rb +0 -74
  222. data/rails_app/rails_7.1/config/puma.rb +0 -46
  223. data/rails_app/rails_7.1/public/robots.txt +0 -2
  224. data/rails_app/rails_7.1/spec/spec_helper.rb +0 -13
  225. data/rails_app/rails_7.1/vendor/.keep +0 -0
  226. data/rails_app/rails_7.2/.github/dependabot.yml +0 -12
  227. /data/rails_app/{rails_7.1 → rails_8.0}/.rspec +0 -0
  228. /data/rails_app/{rails_6.1 → rails_8.0}/README.md +0 -0
  229. /data/rails_app/{rails_6.1 → rails_8.0}/app/controllers/concerns/.keep +0 -0
  230. /data/rails_app/{rails_6.1/app/javascript → rails_8.0/app/models/concerns}/.keep +0 -0
  231. /data/rails_app/{rails_7.1 → rails_8.0}/config/locales/en.yml +0 -0
  232. /data/rails_app/{rails_6.1/app/models/concerns → rails_8.0/lib/tasks}/.keep +0 -0
  233. /data/rails_app/{rails_6.1/lib/tasks → rails_8.0/log}/.keep +0 -0
  234. /data/rails_app/{rails_6.1 → rails_8.0}/public/robots.txt +0 -0
  235. /data/rails_app/{rails_6.1/tmp → rails_8.0/script}/.keep +0 -0
  236. /data/rails_app/{rails_6.1 → rails_8.0}/spec/spec_helper.rb +0 -0
  237. /data/rails_app/{rails_6.1/tmp/pids → rails_8.0/storage}/.keep +0 -0
  238. /data/rails_app/{rails_6.1 → rails_8.0}/vendor/.keep +0 -0
  239. /data/rails_app/{rails_7.0 → rails_8.1}/README.md +0 -0
  240. /data/rails_app/{rails_7.1 → rails_8.1}/app/controllers/concerns/.keep +0 -0
  241. /data/rails_app/{rails_7.1 → rails_8.1}/app/models/concerns/.keep +0 -0
  242. /data/rails_app/{rails_7.1 → rails_8.1}/lib/tasks/.keep +0 -0
  243. /data/rails_app/{rails_7.1/storage → rails_8.1/log}/.keep +0 -0
  244. /data/rails_app/{rails_7.0 → rails_8.1}/public/robots.txt +0 -0
  245. /data/rails_app/{rails_7.1/tmp → rails_8.1/script}/.keep +0 -0
  246. /data/rails_app/{rails_7.0 → rails_8.1}/spec/spec_helper.rb +0 -0
  247. /data/rails_app/{rails_7.1/tmp/pids → rails_8.1/storage}/.keep +0 -0
  248. /data/rails_app/{rails_7.1/tmp/storage → rails_8.1/vendor}/.keep +0 -0
@@ -0,0 +1,35 @@
1
+ name: Release
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - release
7
+ workflow_dispatch:
8
+
9
+ concurrency:
10
+ group: release-${{ github.workflow }}-${{ github.ref }}
11
+ cancel-in-progress: true
12
+
13
+ permissions:
14
+ contents: write
15
+ id-token: write
16
+
17
+ jobs:
18
+ release:
19
+ runs-on: ubuntu-latest
20
+ steps:
21
+ # rubygems/release-gem runs `rake release`, which pushes the git tag,
22
+ # so the checkout credentials must persist for this release job.
23
+ - uses: actions/checkout@v7 # zizmor: ignore[artipacked]
24
+ with:
25
+ fetch-depth: 0
26
+ ref: ${{ github.ref_name }}
27
+
28
+ - name: Set up Ruby
29
+ uses: ruby/setup-ruby@95ef2b042f9d7a56d8268cba8559e2842e2ad01b # v1.321.0
30
+ with:
31
+ ruby-version: '4.0'
32
+ bundler-cache: true
33
+
34
+ - name: Release gem via Trusted Publishing
35
+ uses: rubygems/release-gem@v1
@@ -0,0 +1,35 @@
1
+ name: Rubocop Challenge
2
+
3
+ on:
4
+ schedule:
5
+ - cron: "30 23 * * *" # 8:30am every day (JST)
6
+ workflow_dispatch:
7
+
8
+ concurrency:
9
+ group: rubocop-challenge-${{ github.ref }}
10
+ cancel-in-progress: true
11
+
12
+ permissions:
13
+ contents: write
14
+ pull-requests: write
15
+
16
+ jobs:
17
+ rubocop_challenge:
18
+ if: ${{ github.event_name == 'workflow_dispatch' || github.ref == 'refs/heads/master' }}
19
+ runs-on: ubuntu-latest
20
+ steps:
21
+ # rubocop_challenger pushes a branch and opens a pull request,
22
+ # so the checkout credentials must persist for the git push.
23
+ - uses: actions/checkout@v7 # zizmor: ignore[artipacked]
24
+
25
+ - name: Set up Ruby
26
+ uses: ruby/setup-ruby@95ef2b042f9d7a56d8268cba8559e2842e2ad01b # v1.321.0
27
+ with:
28
+ ruby-version: '4.0'
29
+
30
+ - name: Rubocop Challenge
31
+ env:
32
+ GITHUB_ACCESS_TOKEN: ${{ secrets.GITHUB_TOKEN }}
33
+ run: |
34
+ gem install rubocop_challenger
35
+ rubocop_challenger go --email=ryz310@gmail.com --name=ryz310
data/.gitignore CHANGED
@@ -9,3 +9,4 @@
9
9
 
10
10
  # rspec failure tracking
11
11
  .rspec_status
12
+ .envrc
data/.rubocop.yml CHANGED
@@ -7,7 +7,7 @@ plugins:
7
7
  inherit_from: .rubocop_todo.yml
8
8
 
9
9
  AllCops:
10
- TargetRubyVersion: 3.1
10
+ TargetRubyVersion: 3.3
11
11
  NewCops: enable
12
12
  Exclude:
13
13
  - rails_app/**/*
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.1.6
1
+ 3.3.12
data/AGENTS.md ADDED
@@ -0,0 +1,149 @@
1
+ # AGENTS.md
2
+
3
+ ## Branch Creation Rule
4
+
5
+ - Always create a new branch from `master`.
6
+ - Before creating a branch, update local `master` with the latest commits from `origin`.
7
+ - After updating local `master`, reload and re-read `AGENTS.md` before starting any new task.
8
+ - Use a branch prefix that matches the agent tool in use:
9
+ - Codex: `codex/<new-branch-name>`
10
+ - Claude Code: `claude/<new-branch-name>`
11
+ - Example flow (replace `<prefix>` with the prefix for your tool):
12
+ 1. `git checkout master`
13
+ 2. `git fetch origin`
14
+ 3. `git pull --ff-only origin master`
15
+ 4. Re-open `AGENTS.md` and confirm instructions
16
+ 5. `git checkout -b <prefix>/<new-branch-name>`
17
+
18
+ ## Development Version Policy
19
+
20
+ - In development environments, always use the oldest versions among currently supported Ruby and Rails.
21
+ - Current baseline: Ruby 3.3 and Rails 7.2.
22
+ - Patch versions may be updated to the latest available releases within the selected baseline (e.g., Ruby 3.3.x and Rails 7.2.x).
23
+ - When updating support policy, also update `.ruby-version`, `Dockerfile` (`ARG RUBY_VERSION` and `BUNDLE_GEMFILE`), and development Dockerfiles under `rails_app/`.
24
+
25
+ ## Support Matrix Update Procedure
26
+
27
+ - Decide target support matrix first (Ruby and Rails versions to keep/add/remove).
28
+ - Update `my_api_client.gemspec`:
29
+ - `required_ruby_version`
30
+ - `activesupport` minimum version
31
+ - Update CI matrix in `.github/workflows/ci.yml`:
32
+ - `build_gem.strategy.matrix.ruby_version` / `rails_version`
33
+ - `verify_generator.strategy.matrix.ruby_version` / `rails_version`
34
+ - update representative matrix-gated conditions (e.g. coverage/upload conditions) to the intended runtime/framework pair
35
+ - Check other workflows under `.github/workflows/` for fixed Ruby versions and align them when support policy changes.
36
+ - Update supported versions in:
37
+ - `README.md`
38
+ - `AGENTS.md` (`Development Version Policy` baseline line)
39
+ - Keep development baseline files aligned:
40
+ - `.ruby-version`
41
+ - `Dockerfile` (`ARG RUBY_VERSION`)
42
+ - `rails_app/*/Dockerfile` (`ARG RUBY_VERSION`) for supported Rails verification apps
43
+ - `rails_app/*/.ruby-version` for supported Rails verification apps (Dependabot
44
+ reads the per-directory `.ruby-version` to resolve the path gem; a stale value
45
+ breaks `@dependabot rebase` with "can't resolve your Ruby dependency files")
46
+ - Before commit, list every `.ruby-version` in the repo and confirm each matches
47
+ the intended baseline:
48
+ `find . -name .ruby-version | xargs -I{} sh -c 'echo "{}: $(cat {})"'`
49
+ - Keep verification assets aligned with supported Rails:
50
+ - remove unsupported `gemfiles/rails_*.gemfile`
51
+ - remove unsupported `rails_app/rails_*` directories
52
+ - keep only supported Rails verification app directories
53
+ - Validate before commit. A support matrix change affects config files
54
+ (e.g. `.rubocop.yml` `TargetRubyVersion`, gemspec constraints) that break
55
+ lint/specs even without any `.rb` change, so always run all three below
56
+ regardless of the general Validation Rule:
57
+ - `docker run --rm -v "$PWD":/app -w /app my_api_client-dev bundle exec rspec`
58
+ - `docker run --rm -v "$PWD":/app -w /app my_api_client-dev bundle exec rubocop`
59
+ - `docker run --rm -v "$PWD":/app -w /app my_api_client-dev bundle exec rake build`
60
+ - If any `rails_app/rails_*/Gemfile.lock` drifts from gemspec constraints, sync at least the `my_api_client` entry (`version` and `activesupport` lower bound).
61
+
62
+ ## Docker Development Commands
63
+
64
+ - Command selection policy:
65
+ - Use `docker compose` for integration specs that require the `my_api` server.
66
+ - Use `docker run` for lint, build, and local non-integration spec execution.
67
+ - Build development image:
68
+ - `docker build -t my_api_client-dev .`
69
+ - Open a shell in the container (mount local source):
70
+ - `docker run --rm -it -v "$PWD":/app -w /app my_api_client-dev bash`
71
+ - Install/update gems:
72
+ - `docker run --rm -it -v "$PWD":/app -w /app my_api_client-dev bundle install`
73
+ - Run all specs:
74
+ - `docker run --rm -it -v "$PWD":/app -w /app my_api_client-dev bundle exec rspec`
75
+ - Run integration specs with real HTTP:
76
+ - `docker compose up -d --build my_api`
77
+ - `docker compose run --rm test bundle exec rspec`
78
+ - (integration only) `docker compose run --rm test bundle exec rspec spec/integrations/api_clients`
79
+ - (my_api request specs) `docker compose run --rm my_api bundle exec rspec spec/requests`
80
+ - `docker compose down --volumes --remove-orphans`
81
+ - Run RuboCop:
82
+ - `docker run --rm -it -v "$PWD":/app -w /app my_api_client-dev bundle exec rubocop`
83
+ - Build gem package:
84
+ - `docker run --rm -it -v "$PWD":/app -w /app my_api_client-dev bundle exec rake build`
85
+ - Install gem locally in container:
86
+ - `docker run --rm -it -v "$PWD":/app -w /app my_api_client-dev bundle exec rake install`
87
+
88
+ ## Validation Rule
89
+
90
+ - Run RuboCop and confirm there are no offenses only when `.rb` files are changed.
91
+
92
+ ## Retrospective Rule
93
+
94
+ - Propose a KPT retrospective when a task reaches a completion point, such as after creating a Pull Request.
95
+ - Based on the KPT results, propose updates to `AGENTS.md`.
96
+ - The timing of the retrospective may be decided by Codex when it is appropriate.
97
+ - Output destination rule: KPT content must be shared only in this Codex conversation unless the user explicitly requests another destination.
98
+ - Do not post KPT content to GitHub comments/issues/PRs unless the user explicitly requests it.
99
+
100
+ ## README Update Checklist
101
+
102
+ - When editing `README.md`, run a typo/consistency sweep before finishing.
103
+ - Check common typo patterns: `api_clinet`, `erros`, `reqest`, `resouce`.
104
+ - Verify sample request parameters match method signatures and examples (e.g. query/body keys).
105
+ - Verify JSONPath examples match sample JSON structures (e.g. `links` vs `link`).
106
+ - When removing or renaming documentation files, run `rg -n "<old-file-name>" --glob "*.md"` and resolve remaining references before finishing.
107
+
108
+ ## Documentation Language Policy
109
+
110
+ - `README.md` is the single source of truth for repository documentation.
111
+ - Do not add language-specific README copies (for example `README.jp.md`).
112
+ - For Japanese reading support, rely on browser translation features instead of maintaining duplicate files.
113
+
114
+ ## Pull Request Description Rule
115
+
116
+ - In PR descriptions, include a `Purpose of this change` section that explains why the change is needed, not only what changed.
117
+ - Write PR titles and descriptions in English to keep them consistent across the repository.
118
+
119
+ ## GitHub CLI Body Safety
120
+
121
+ - When using `gh pr create`, `gh pr comment`, or similar commands with markdown body text, avoid inline shell strings that include backticks.
122
+ - Prefer one of the following:
123
+ - Use plain text without backticks in inline `--body`.
124
+ - Write the body to a temporary file and pass it via file-based options (or equivalent safe method) to prevent shell command substitution.
125
+
126
+ ## GitHub Actions Pinning Policy
127
+
128
+ - Pin third-party actions to a full commit SHA with a version comment (e.g. `uses: ruby/setup-ruby@<sha> # v1.321.0`) to satisfy zizmor `unpinned-uses`.
129
+ - GitHub-owned actions (`actions/*`, `github/*`, `rubygems/*`, `dependabot/*`) may stay ref-pinned; Dependabot (`github-actions`) keeps the pins and version comments updated.
130
+
131
+ ## Runbook
132
+
133
+ - Dependabot PR review and auto-merge operation steps are documented in `docs/runbooks/dependabot_pr_auto_merge.md`.
134
+
135
+ ## CHANGELOG Organization Rule
136
+
137
+ - Do NOT add `CHANGELOG.md` entries in individual feature/fix PRs.
138
+ Entries are compiled and added at gem release time, not per-PR.
139
+ - Follow the format of past versions in `CHANGELOG.md`.
140
+ - Use `-` for bullet list items (not `*`).
141
+ - Categorize entries under these headings, keeping only the headings that have entries (omit empty ones):
142
+ `Feature`, `Bugfix`, `Security`, `Breaking Change`, `Rubocop Challenge`, `Dependabot`, `Misc`.
143
+ - Keep the category order above.
144
+ - Dependabot section:
145
+ - List only bumps for the gem itself (root `Gemfile` / `.github/workflows`).
146
+ - Do NOT list bumps under `rails_app/*` or `my_api` (verification/test apps).
147
+ - When the same gem is bumped multiple times within a release, keep a single entry and merge the version range from the earliest `from` to the latest `to` (e.g. `Bump bugsnag from 6.27.1 to 6.30.0`).
148
+ - Only a change that breaks backward compatibility goes under `Breaking Change`.
149
+ A rename that keeps backward compatibility (e.g. via an alias) is a `Feature`, not a breaking change.
data/CHANGELOG.md CHANGED
@@ -1,5 +1,86 @@
1
1
  # Change log
2
2
 
3
+ ## v2.1.0 (Aug 11, 2026)
4
+
5
+ ### Security
6
+
7
+ - [#1335](https://github.com/ryz310/my_api_client/pull/1335) Pin third-party actions to commit SHA ([@ryz310](https://github.com/ryz310))
8
+ - [#1337](https://github.com/ryz310/my_api_client/pull/1337) Scope Dependabot auto-merge permissions per job ([@ryz310](https://github.com/ryz310))
9
+ - [#1338](https://github.com/ryz310/my_api_client/pull/1338) Use non-spoofable actor check for Dependabot auto-merge ([@ryz310](https://github.com/ryz310))
10
+ - [#1339](https://github.com/ryz310/my_api_client/pull/1339) Use pull_request trigger for Dependabot auto-merge ([@ryz310](https://github.com/ryz310))
11
+ - [#1340](https://github.com/ryz310/my_api_client/pull/1340) Disable credential persistence on checkout (zizmor artipacked) ([@ryz310](https://github.com/ryz310))
12
+
13
+ ### Dependabot
14
+
15
+ - [#1237](https://github.com/ryz310/my_api_client/pull/1237) Bump dependabot/fetch-metadata from 2 to 3 ([@ryz310](https://github.com/ryz310))
16
+ - [#1291](https://github.com/ryz310/my_api_client/pull/1291) Bump actions/checkout from 6 to 7 ([@ryz310](https://github.com/ryz310))
17
+ - [#1317](https://github.com/ryz310/my_api_client/pull/1317) Bump simplecov from 0.22.0 to 1.0.3 ([@ryz310](https://github.com/ryz310))
18
+ - [#1323](https://github.com/ryz310/my_api_client/pull/1323) Bump activesupport from 8.1.3 to 8.1.3.1 ([@ryz310](https://github.com/ryz310))
19
+ - [#1329](https://github.com/ryz310/my_api_client/pull/1329) Bump json from 2.21.1 to 2.21.2 ([@ryz310](https://github.com/ryz310))
20
+
21
+ ### Misc
22
+
23
+ - [#1330](https://github.com/ryz310/my_api_client/pull/1330) Add dependency cooldown to Gemfile and Dependabot ([@ryz310](https://github.com/ryz310))
24
+ - [#1331](https://github.com/ryz310/my_api_client/pull/1331) Always auto-merge verification app Dependabot PRs (except rails major) ([@ryz310](https://github.com/ryz310))
25
+ - [#1332](https://github.com/ryz310/my_api_client/pull/1332) Drop Ruby 3.2 support (EOL) ([@ryz310](https://github.com/ryz310))
26
+ - [#1334](https://github.com/ryz310/my_api_client/pull/1334) Require English for PR titles and descriptions ([@ryz310](https://github.com/ryz310))
27
+ - [#1336](https://github.com/ryz310/my_api_client/pull/1336) Use tool-specific branch prefix in branch creation rule ([@ryz310](https://github.com/ryz310))
28
+ - [#1341](https://github.com/ryz310/my_api_client/pull/1341) Align rails_app .ruby-version with Ruby 3.3 baseline ([@ryz310](https://github.com/ryz310))
29
+
30
+ ## v2.0.0 (Jul 21, 2026)
31
+
32
+ This major release marks the shift to an AI-assisted (agent-driven) development workflow.
33
+ The development environment, CI/CD, and contribution guidelines were reorganized around AI
34
+ coding agents (see `AGENTS.md`), which is the primary reason for the major version bump.
35
+
36
+ ### Feature
37
+
38
+ - [#1153](https://github.com/ryz310/my_api_client/pull/1153) Rename from UnprocessableEntity to UnprocessableContent ([@ashimomura](https://github.com/ashimomura))
39
+
40
+ ### Bugfix
41
+
42
+ - [#1276](https://github.com/ryz310/my_api_client/pull/1276) Stop stringifying the metadata left in the Bugsnag breadcrumb ([@masakiq](https://github.com/masakiq))
43
+
44
+ ### Dependabot
45
+
46
+ - [#1111](https://github.com/ryz310/my_api_client/pull/1111) Bump rexml from 3.4.1 to 3.4.2 ([@ryz310](https://github.com/ryz310))
47
+ - [#1114](https://github.com/ryz310/my_api_client/pull/1114) Bump faraday from 2.13.1 to 2.14.0 ([@ryz310](https://github.com/ryz310))
48
+ - [#1117](https://github.com/ryz310/my_api_client/pull/1117) Bump rubocop-performance from 1.25.0 to 1.26.1 ([@ryz310](https://github.com/ryz310))
49
+ - [#1119](https://github.com/ryz310/my_api_client/pull/1119) Bump rspec from 3.13.1 to 3.13.2 ([@ryz310](https://github.com/ryz310))
50
+ - [#1121](https://github.com/ryz310/my_api_client/pull/1121) Bump sawyer from 0.9.2 to 0.9.3 ([@ryz310](https://github.com/ryz310))
51
+ - [#1128](https://github.com/ryz310/my_api_client/pull/1128) Bump rubocop-rspec_rails from 2.31.0 to 2.32.0 ([@ryz310](https://github.com/ryz310))
52
+ - [#1161](https://github.com/ryz310/my_api_client/pull/1161) Bump pry-byebug from 3.11.0 to 3.12.0 ([@ryz310](https://github.com/ryz310))
53
+ - [#1184](https://github.com/ryz310/my_api_client/pull/1184) Bump actions/upload-artifact from 6 to 7 ([@ryz310](https://github.com/ryz310))
54
+ - [#1183](https://github.com/ryz310/my_api_client/pull/1183) Bump actions/download-artifact from 4 to 8 ([@ryz310](https://github.com/ryz310))
55
+ - [#1214](https://github.com/ryz310/my_api_client/pull/1214) Bump webmock from 3.25.1 to 3.26.2 ([@ryz310](https://github.com/ryz310))
56
+ - [#1216](https://github.com/ryz310/my_api_client/pull/1216) Bump activesupport from 7.2.2.1 to 8.1.3 ([@ryz310](https://github.com/ryz310))
57
+ - [#1236](https://github.com/ryz310/my_api_client/pull/1236) Bump bugsnag from 6.27.1 to 6.30.0 ([@ryz310](https://github.com/ryz310))
58
+ - [#1235](https://github.com/ryz310/my_api_client/pull/1235) Bump rake from 13.3.0 to 13.4.1 ([@ryz310](https://github.com/ryz310))
59
+ - [#1298](https://github.com/ryz310/my_api_client/pull/1298) Bump yard from 0.9.37 to 0.9.45 ([@ryz310](https://github.com/ryz310))
60
+
61
+ ### Misc
62
+
63
+ - [#1133](https://github.com/ryz310/my_api_client/pull/1133) Migrate CI from CircleCI to GitHub Actions ([@ryz310](https://github.com/ryz310))
64
+ - [#1134](https://github.com/ryz310/my_api_client/pull/1134) Set up Docker-based development environment ([@ryz310](https://github.com/ryz310))
65
+ - [#1135](https://github.com/ryz310/my_api_client/pull/1135) Update support matrix (Ruby 3.2-4.0 / Rails 7.2-8.1) ([@ryz310](https://github.com/ryz310))
66
+ - [#1136](https://github.com/ryz310/my_api_client/pull/1136) Migrate CI coverage upload from Code Climate to Qlty ([@ryz310](https://github.com/ryz310))
67
+ - [#1137](https://github.com/ryz310/my_api_client/pull/1137) Add Dependabot auto-merge workflow for dev patch updates ([@ryz310](https://github.com/ryz310))
68
+ - [#1142](https://github.com/ryz310/my_api_client/pull/1142) Adjust CI triggers and SimpleCov spec filtering ([@ryz310](https://github.com/ryz310))
69
+ - [#1143](https://github.com/ryz310/my_api_client/pull/1143) Add KPT retrospective rule and extend Dependabot dev auto-merge ([@ryz310](https://github.com/ryz310))
70
+ - [#1144](https://github.com/ryz310/my_api_client/pull/1144) Migrate my_api from Jets to Rails 8.1 with compose-based CI integration ([@ryz310](https://github.com/ryz310))
71
+ - [#1155](https://github.com/ryz310/my_api_client/pull/1155) Fix my_api compose build to honor Gemfile.lock ([@ryz310](https://github.com/ryz310))
72
+ - [#1156](https://github.com/ryz310/my_api_client/pull/1156) Enable PR CI for external contributors and split release workflow ([@ryz310](https://github.com/ryz310))
73
+ - [#1157](https://github.com/ryz310/my_api_client/pull/1157) Fix Dependabot auto-merge workflow in non-checkout context ([@ryz310](https://github.com/ryz310))
74
+ - [#1158](https://github.com/ryz310/my_api_client/pull/1158) Consolidate Dependabot config and remove redundant rails_app files ([@ryz310](https://github.com/ryz310))
75
+ - [#1175](https://github.com/ryz310/my_api_client/pull/1175) Adjust Dependabot auto-merge conditions for rails_app ([@ryz310](https://github.com/ryz310))
76
+ - [#1177](https://github.com/ryz310/my_api_client/pull/1177) Add runbook for Dependabot PR auto-merge workflow ([@ryz310](https://github.com/ryz310))
77
+ - [#1178](https://github.com/ryz310/my_api_client/pull/1178) Refine dependabot auto-merge runbook procedure ([@ryz310](https://github.com/ryz310))
78
+ - [#1179](https://github.com/ryz310/my_api_client/pull/1179) docs: clarify Dependabot rebase retry procedure ([@ryz310](https://github.com/ryz310))
79
+ - [#1180](https://github.com/ryz310/my_api_client/pull/1180) docs: complete README WIP sections and refine wording ([@ryz310](https://github.com/ryz310))
80
+ - [#1181](https://github.com/ryz310/my_api_client/pull/1181) Consolidate README docs and remove README.jp.md ([@ryz310](https://github.com/ryz310))
81
+ - [#1187](https://github.com/ryz310/my_api_client/pull/1187) Split Dependabot auto-merge logic by ecosystem ([@ryz310](https://github.com/ryz310))
82
+ - [#1308](https://github.com/ryz310/my_api_client/pull/1308) Switch release workflow to RubyGems Trusted Publishing ([@ryz310](https://github.com/ryz310))
83
+
3
84
  ## v1.3.1 (Jun 10, 2025)
4
85
 
5
86
  ### Misc
@@ -411,10 +492,8 @@ See: https://github.com/ryz310/my_api_client/blob/master/lib/my_api_client/defau
411
492
  ### Feature
412
493
 
413
494
  - [#220](https://github.com/ryz310/my_api_client/pull/220) Pageable HTTP request ([@ryz310](https://github.com/ryz310))
414
-
415
495
  - Add `#pageable_get` method (alias: `#pget`)
416
496
  - For example:
417
-
418
497
  - API client definition
419
498
 
420
499
  ```ruby
data/CLAUDE.md ADDED
@@ -0,0 +1,6 @@
1
+ # CLAUDE.md
2
+
3
+ This project shares its agent instructions across tools. Claude Code follows the
4
+ same guidelines documented for Codex in `AGENTS.md`.
5
+
6
+ @AGENTS.md
data/Dockerfile ADDED
@@ -0,0 +1,22 @@
1
+ # syntax=docker/dockerfile:1
2
+
3
+ ARG RUBY_VERSION=3.3.12
4
+ FROM ruby:${RUBY_VERSION}-slim
5
+
6
+ WORKDIR /app
7
+
8
+ RUN apt-get update -qq && \
9
+ apt-get install --no-install-recommends -y build-essential git && \
10
+ rm -rf /var/lib/apt/lists /var/cache/apt/archives
11
+
12
+ ENV BUNDLE_PATH=/usr/local/bundle \
13
+ BUNDLE_JOBS=4 \
14
+ BUNDLE_RETRY=3
15
+
16
+ RUN gem install bundler -v "~> 2.0"
17
+
18
+ COPY . /app
19
+
20
+ RUN bundle install
21
+
22
+ CMD ["bash"]
data/Gemfile CHANGED
@@ -1,11 +1,13 @@
1
1
  # frozen_string_literal: true
2
2
 
3
- source 'https://rubygems.org'
3
+ # cooldown: skip gem versions published within the last 7 days to reduce the
4
+ # risk of pulling in a compromised or broken release right after publication.
5
+ source 'https://rubygems.org', cooldown: 7
4
6
 
5
7
  git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
6
8
 
7
9
  group :integrations, optional: true do
8
- gem 'bugsnag', '>= 6.11.0'
10
+ gem 'bugsnag', '>= 6.19.0'
9
11
  end
10
12
 
11
13
  # Specify your gem's dependencies in my_api_client.gemspec
data/Gemfile.lock CHANGED
@@ -1,8 +1,8 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- my_api_client (1.3.1)
5
- activesupport (>= 6.1.0)
4
+ my_api_client (2.1.0)
5
+ activesupport (>= 7.2.0)
6
6
  faraday (>= 0.17.1)
7
7
  jsonpath
8
8
  sawyer (>= 0.8.2)
@@ -10,144 +10,146 @@ PATH
10
10
  GEM
11
11
  remote: https://rubygems.org/
12
12
  specs:
13
- activesupport (7.2.2.1)
13
+ activesupport (8.1.3.1)
14
14
  base64
15
- benchmark (>= 0.3)
16
15
  bigdecimal
17
16
  concurrent-ruby (~> 1.0, >= 1.3.1)
18
17
  connection_pool (>= 2.2.5)
19
18
  drb
20
19
  i18n (>= 1.6, < 2)
20
+ json
21
21
  logger (>= 1.4.2)
22
22
  minitest (>= 5.1)
23
23
  securerandom (>= 0.3)
24
24
  tzinfo (~> 2.0, >= 2.0.5)
25
- addressable (2.8.7)
26
- public_suffix (>= 2.0.2, < 7.0)
25
+ uri (>= 0.13.1)
26
+ addressable (2.9.0)
27
+ public_suffix (>= 2.0.2, < 8.0)
27
28
  ast (2.4.3)
28
29
  base64 (0.3.0)
29
- benchmark (0.4.1)
30
- bigdecimal (3.2.2)
31
- bugsnag (6.27.1)
30
+ bigdecimal (4.1.2)
31
+ bugsnag (6.30.0)
32
32
  concurrent-ruby (~> 1.0)
33
- byebug (12.0.0)
33
+ byebug (13.0.0)
34
+ reline (>= 0.6.0)
34
35
  coderay (1.1.3)
35
- concurrent-ruby (1.3.5)
36
- connection_pool (2.5.3)
37
- crack (1.0.0)
36
+ concurrent-ruby (1.3.8)
37
+ connection_pool (3.0.2)
38
+ crack (1.0.1)
38
39
  bigdecimal
39
40
  rexml
40
41
  diff-lcs (1.6.2)
41
- docile (1.4.1)
42
42
  drb (2.2.3)
43
- faraday (2.13.1)
43
+ faraday (2.14.3)
44
44
  faraday-net_http (>= 2.0, < 3.5)
45
45
  json
46
46
  logger
47
- faraday-net_http (3.4.0)
48
- net-http (>= 0.5.0)
49
- hashdiff (1.2.0)
50
- i18n (1.14.7)
47
+ faraday-net_http (3.4.4)
48
+ net-http (~> 0.5)
49
+ hashdiff (1.2.1)
50
+ i18n (1.15.2)
51
51
  concurrent-ruby (~> 1.0)
52
- json (2.12.2)
52
+ io-console (0.8.2)
53
+ json (2.21.2)
53
54
  jsonpath (1.1.5)
54
55
  multi_json
55
- language_server-protocol (3.17.0.5)
56
+ language_server-protocol (3.17.0.6)
56
57
  lint_roller (1.1.0)
57
58
  logger (1.7.0)
58
59
  method_source (1.1.0)
59
- minitest (5.25.5)
60
- multi_json (1.15.0)
61
- net-http (0.6.0)
62
- uri
63
- parallel (1.27.0)
64
- parser (3.3.8.0)
60
+ minitest (6.0.6)
61
+ drb (~> 2.0)
62
+ prism (~> 1.5)
63
+ multi_json (1.21.1)
64
+ net-http (0.9.1)
65
+ uri (>= 0.11.1)
66
+ parallel (1.28.0)
67
+ parser (3.3.12.0)
65
68
  ast (~> 2.4.1)
66
69
  racc
67
- prism (1.4.0)
68
- pry (0.15.2)
70
+ prism (1.9.0)
71
+ pry (0.16.0)
69
72
  coderay (~> 1.1)
70
73
  method_source (~> 1.0)
71
- pry-byebug (3.11.0)
72
- byebug (~> 12.0)
73
- pry (>= 0.13, < 0.16)
74
- public_suffix (6.0.2)
74
+ reline (>= 0.6.0)
75
+ pry-byebug (3.12.0)
76
+ byebug (~> 13.0)
77
+ pry (>= 0.13, < 0.17)
78
+ public_suffix (7.0.5)
75
79
  racc (1.8.1)
76
80
  rainbow (3.1.1)
77
- rake (13.3.0)
78
- regexp_parser (2.10.0)
79
- rexml (3.4.1)
80
- rspec (3.13.1)
81
+ rake (13.4.2)
82
+ regexp_parser (2.12.0)
83
+ reline (0.6.3)
84
+ io-console (~> 0.5)
85
+ rexml (3.4.4)
86
+ rspec (3.13.2)
81
87
  rspec-core (~> 3.13.0)
82
88
  rspec-expectations (~> 3.13.0)
83
89
  rspec-mocks (~> 3.13.0)
84
- rspec-core (3.13.4)
90
+ rspec-core (3.13.6)
85
91
  rspec-support (~> 3.13.0)
86
92
  rspec-expectations (3.13.5)
87
93
  diff-lcs (>= 1.2.0, < 2.0)
88
94
  rspec-support (~> 3.13.0)
89
- rspec-mocks (3.13.5)
95
+ rspec-mocks (3.13.8)
90
96
  diff-lcs (>= 1.2.0, < 2.0)
91
97
  rspec-support (~> 3.13.0)
92
- rspec-support (3.13.4)
98
+ rspec-support (3.13.7)
93
99
  rspec_junit_formatter (0.6.0)
94
100
  rspec-core (>= 2, < 4, != 2.12.0)
95
- rubocop (1.76.1)
101
+ rubocop (1.88.2)
96
102
  json (~> 2.3)
97
103
  language_server-protocol (~> 3.17.0.2)
98
104
  lint_roller (~> 1.1.0)
99
- parallel (~> 1.10)
105
+ parallel (>= 1.10)
100
106
  parser (>= 3.3.0.2)
101
107
  rainbow (>= 2.2.2, < 4.0)
102
108
  regexp_parser (>= 2.9.3, < 3.0)
103
- rubocop-ast (>= 1.45.0, < 2.0)
109
+ rubocop-ast (>= 1.49.0, < 2.0)
104
110
  ruby-progressbar (~> 1.7)
105
111
  unicode-display_width (>= 2.4.0, < 4.0)
106
- rubocop-ast (1.45.1)
112
+ rubocop-ast (1.50.0)
107
113
  parser (>= 3.3.7.2)
108
- prism (~> 1.4)
109
- rubocop-performance (1.25.0)
114
+ prism (~> 1.7)
115
+ rubocop-performance (1.26.1)
110
116
  lint_roller (~> 1.1)
111
117
  rubocop (>= 1.75.0, < 2.0)
112
- rubocop-ast (>= 1.38.0, < 2.0)
118
+ rubocop-ast (>= 1.47.1, < 2.0)
113
119
  rubocop-rake (0.7.1)
114
120
  lint_roller (~> 1.1)
115
121
  rubocop (>= 1.72.1)
116
- rubocop-rspec (3.6.0)
122
+ rubocop-rspec (3.10.2)
117
123
  lint_roller (~> 1.1)
118
- rubocop (~> 1.72, >= 1.72.1)
119
- rubocop-rspec_rails (2.31.0)
124
+ regexp_parser (>= 2.0)
125
+ rubocop (~> 1.86, >= 1.86.2)
126
+ rubocop-rspec_rails (2.32.0)
120
127
  lint_roller (~> 1.1)
121
128
  rubocop (~> 1.72, >= 1.72.1)
122
129
  rubocop-rspec (~> 3.5)
123
130
  ruby-progressbar (1.13.0)
124
- sawyer (0.9.2)
131
+ sawyer (0.9.3)
125
132
  addressable (>= 2.3.5)
126
133
  faraday (>= 0.17.3, < 3)
127
134
  securerandom (0.4.1)
128
- simplecov (0.22.0)
129
- docile (~> 1.1)
130
- simplecov-html (~> 0.11)
131
- simplecov_json_formatter (~> 0.1)
132
- simplecov-html (0.13.1)
133
- simplecov_json_formatter (0.1.4)
135
+ simplecov (1.0.3)
134
136
  tzinfo (2.0.6)
135
137
  concurrent-ruby (~> 1.0)
136
- unicode-display_width (3.1.4)
137
- unicode-emoji (~> 4.0, >= 4.0.4)
138
- unicode-emoji (4.0.4)
139
- uri (1.0.3)
140
- webmock (3.25.1)
138
+ unicode-display_width (3.2.0)
139
+ unicode-emoji (~> 4.1)
140
+ unicode-emoji (4.2.0)
141
+ uri (1.1.1)
142
+ webmock (3.26.2)
141
143
  addressable (>= 2.8.0)
142
144
  crack (>= 0.3.2)
143
145
  hashdiff (>= 0.4.0, < 2.0.0)
144
- yard (0.9.37)
146
+ yard (0.9.45)
145
147
 
146
148
  PLATFORMS
147
149
  ruby
148
150
 
149
151
  DEPENDENCIES
150
- bugsnag (>= 6.11.0)
152
+ bugsnag (>= 6.19.0)
151
153
  bundler (>= 2.0)
152
154
  my_api_client!
153
155
  pry-byebug
@@ -159,9 +161,9 @@ DEPENDENCIES
159
161
  rubocop-rake
160
162
  rubocop-rspec
161
163
  rubocop-rspec_rails
162
- simplecov (= 0.22.0)
164
+ simplecov (= 1.0.3)
163
165
  webmock
164
166
  yard
165
167
 
166
168
  BUNDLED WITH
167
- 2.6.9
169
+ 4.0.16