From ab5ddb447cad8260d5a0bb4e7ea04190e1e6b0c0 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 4 Apr 2026 15:36:27 +0000 Subject: [PATCH 1/5] codegen metadata --- .stats.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.stats.yml b/.stats.yml index f17b8ce..188067d 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 27 openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/moderation-api%2Fmoderation-api-a4934bf1e7f1348c021b48224f7a7110a6e41838253dda4fbcc720dd2d2ed6b7.yml openapi_spec_hash: 537542216811907b1d4ebf23a54dc669 -config_hash: 6b825a08e19dfb747c5dc1766502b789 +config_hash: 0a024bca1710e3a3194925edfedc513c From 0341b54eca084af6446519fc397ee29db715fda8 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 4 Apr 2026 15:37:02 +0000 Subject: [PATCH 2/5] codegen metadata --- .stats.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.stats.yml b/.stats.yml index 188067d..c602470 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 27 openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/moderation-api%2Fmoderation-api-a4934bf1e7f1348c021b48224f7a7110a6e41838253dda4fbcc720dd2d2ed6b7.yml openapi_spec_hash: 537542216811907b1d4ebf23a54dc669 -config_hash: 0a024bca1710e3a3194925edfedc513c +config_hash: 13d10207114afb65f7ac4e21f4c0e358 From b566903a93491531e66c451db8b86cd2829f68e0 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Sat, 4 Apr 2026 15:43:01 +0000 Subject: [PATCH 3/5] codegen metadata --- .stats.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.stats.yml b/.stats.yml index c602470..188067d 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 27 openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/moderation-api%2Fmoderation-api-a4934bf1e7f1348c021b48224f7a7110a6e41838253dda4fbcc720dd2d2ed6b7.yml openapi_spec_hash: 537542216811907b1d4ebf23a54dc669 -config_hash: 13d10207114afb65f7ac4e21f4c0e358 +config_hash: 0a024bca1710e3a3194925edfedc513c From 748047916ff78fc154b75fb4415fe6b06856bfde Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 9 Apr 2026 10:52:17 +0000 Subject: [PATCH 4/5] fix: multipart encoding for file arrays --- lib/moderation_api/internal/util.rb | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/moderation_api/internal/util.rb b/lib/moderation_api/internal/util.rb index 382526b..4a98a13 100644 --- a/lib/moderation_api/internal/util.rb +++ b/lib/moderation_api/internal/util.rb @@ -610,6 +610,7 @@ def encode_query_params(query) # # @return [Array(String, Enumerable)] private def encode_multipart_streaming(body) + # rubocop:disable Style/CaseEquality # RFC 1521 Section 7.2.1 says we should have 70 char maximum for boundary length boundary = SecureRandom.urlsafe_base64(46) @@ -619,7 +620,7 @@ def encode_query_params(query) in Hash body.each do |key, val| case val - in Array if val.all? { primitive?(_1) } + in Array if val.all? { primitive?(_1) || ModerationAPI::Internal::Type::FileInput === _1 } val.each do |v| write_multipart_chunk(y, boundary: boundary, key: key, val: v, closing: closing) end @@ -635,6 +636,7 @@ def encode_query_params(query) fused_io = fused_enum(strio) { closing.each(&:call) } [boundary, fused_io] + # rubocop:enable Style/CaseEquality end # @api private From 0191c15dff968936129cb280df1582a2ce2c4f44 Mon Sep 17 00:00:00 2001 From: "stainless-app[bot]" <142633134+stainless-app[bot]@users.noreply.github.com> Date: Thu, 9 Apr 2026 10:52:34 +0000 Subject: [PATCH 5/5] release: 2.11.3 --- .release-please-manifest.json | 2 +- CHANGELOG.md | 8 ++++++++ Gemfile.lock | 2 +- README.md | 2 +- lib/moderation_api/version.rb | 2 +- 5 files changed, 12 insertions(+), 4 deletions(-) diff --git a/.release-please-manifest.json b/.release-please-manifest.json index f1ce3b3..074dfc8 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "2.11.2" + ".": "2.11.3" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 6aa9529..17a05b8 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 2.11.3 (2026-04-09) + +Full Changelog: [v2.11.2...v2.11.3](https://github.com/moderation-api/sdk-ruby/compare/v2.11.2...v2.11.3) + +### Bug Fixes + +* multipart encoding for file arrays ([7480479](https://github.com/moderation-api/sdk-ruby/commit/748047916ff78fc154b75fb4415fe6b06856bfde)) + ## 2.11.2 (2026-04-01) Full Changelog: [v2.11.1...v2.11.2](https://github.com/moderation-api/sdk-ruby/compare/v2.11.1...v2.11.2) diff --git a/Gemfile.lock b/Gemfile.lock index 40db1b9..8eb6062 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -11,7 +11,7 @@ GIT PATH remote: . specs: - moderation_api (2.11.2) + moderation_api (2.11.3) cgi connection_pool diff --git a/README.md b/README.md index b9e6585..05a9a8a 100644 --- a/README.md +++ b/README.md @@ -15,7 +15,7 @@ To use this gem, install via Bundler by adding the following to your application ```ruby -gem "moderation_api", "~> 2.11.2" +gem "moderation_api", "~> 2.11.3" ``` diff --git a/lib/moderation_api/version.rb b/lib/moderation_api/version.rb index 86d149a..d956e88 100644 --- a/lib/moderation_api/version.rb +++ b/lib/moderation_api/version.rb @@ -1,5 +1,5 @@ # frozen_string_literal: true module ModerationAPI - VERSION = "2.11.2" + VERSION = "2.11.3" end