microsoft_kiota_serialization_json 0.10.0 → 0.11.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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: d639bc65366dd996f9718322979d0a2016b7153f485a54e827e52872427bbb8a
4
- data.tar.gz: 8df1b983bf62a8ec269fca317f3813df3c4dc188cdba117507d4e36b35af9e96
3
+ metadata.gz: cdbaf363a7da4ffef9473c460d3435062f8f37ad1417ce4f172ee83afa87980c
4
+ data.tar.gz: 62cee70699af59a54aeeb9636744df27fff8434e7652842a37eb59e7ef07a3f3
5
5
  SHA512:
6
- metadata.gz: 360f4f242b9da0b167bc690c839d773437368ac0388d9444cf8c5f42d658214359f7cd79f1f9b4c1e609028c5b9c53ed1ed649b72bf89e439fa8f6add3ef4a25
7
- data.tar.gz: 42566ba5d373ad2962479f8806168503ef40fbce1292a3546d0bcf39740585ba444b062f75ea98a284a2176f25a4acb87f74fd0bc6492e6ced9656556644e590
6
+ metadata.gz: 7d6670a909cd3c15adb39ee9b99537efbd928cd17c952b2874bd89f398c5b28b71816803540a40cc9b21ddaf53779027d54f98769f021fb541cd32744c3f6240
7
+ data.tar.gz: c09ff923f79b2cb6f07de2ae23351412a027b6ad191bc67576a721e4d9af9378ae35e47a1094153599d02bafcdb7f38134b499a14f6217561a94b486d7e16f03
@@ -1,12 +1,20 @@
1
1
  version: 2
2
2
  updates:
3
3
  - package-ecosystem: github-actions
4
- directory: "/"
4
+ directory: /
5
5
  schedule:
6
6
  interval: daily
7
7
  open-pull-requests-limit: 10
8
+ groups:
9
+ codeql:
10
+ patterns:
11
+ - github/codeql-action*
12
+ cooldown:
13
+ default-days: 7
8
14
  - package-ecosystem: bundler
9
- directory: "/"
15
+ directory: /
10
16
  schedule:
11
17
  interval: daily
12
18
  open-pull-requests-limit: 10
19
+ cooldown:
20
+ default-days: 7
@@ -20,7 +20,7 @@ jobs:
20
20
  steps:
21
21
  - name: Dependabot metadata
22
22
  id: metadata
23
- uses: dependabot/fetch-metadata@v3.1.0
23
+ uses: dependabot/fetch-metadata@25dd0e34f4fe68f24cc83900b1fe3fe149efef98 # v3.1.0
24
24
  with:
25
25
  github-token: "${{ secrets.GITHUB_TOKEN }}"
26
26
 
@@ -41,11 +41,11 @@ jobs:
41
41
 
42
42
  steps:
43
43
  - name: Checkout repository
44
- uses: actions/checkout@v6
44
+ uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
45
45
 
46
46
  # Initializes the CodeQL tools for scanning.
47
47
  - name: Initialize CodeQL
48
- uses: github/codeql-action/init@v4
48
+ uses: github/codeql-action/init@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7
49
49
  with:
50
50
  languages: ${{ matrix.language }}
51
51
  # If you wish to specify custom queries, you can do so here or in a config file.
@@ -59,7 +59,7 @@ jobs:
59
59
  # Autobuild attempts to build any compiled languages (C/C++, C#, Go, or Java).
60
60
  # If this step fails, then you should remove it and run the build manually (see below)
61
61
  - name: Autobuild
62
- uses: github/codeql-action/autobuild@v4
62
+ uses: github/codeql-action/autobuild@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7
63
63
 
64
64
  # ℹ️ Command-line programs to run using the OS shell.
65
65
  # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
@@ -72,6 +72,6 @@ jobs:
72
72
  # ./location_of_script_within_repo/buildscript.sh
73
73
 
74
74
  - name: Perform CodeQL Analysis
75
- uses: github/codeql-action/analyze@v4
75
+ uses: github/codeql-action/analyze@ff2f1c621b7f889edc0d3c761ac2e6a3f8cdb0dd # v4.37.7
76
76
  with:
77
77
  category: "/language:${{matrix.language}}"
@@ -32,17 +32,17 @@ jobs:
32
32
  if: needs.check-secret.outputs.has-token == 'true'
33
33
  runs-on: ubuntu-latest
34
34
  steps:
35
- - uses: actions/checkout@v6
35
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
36
36
 
37
37
  - name: Generate GitHub App token
38
38
  id: app-token
39
- uses: actions/create-github-app-token@v3
39
+ uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
40
40
  with:
41
41
  client-id: ${{ vars.RELEASE_PLEASE_TOKEN_PROVIDER_APP_ID }}
42
42
  private-key: ${{ secrets.RELEASE_PLEASE_TOKEN_PROVIDER_PEM }}
43
43
 
44
44
  - name: Release Please
45
- uses: googleapis/release-please-action@v5
45
+ uses: googleapis/release-please-action@45996ed1f6d02564a971a2fa1b5860e934307cf7 # v5.0.0
46
46
  with:
47
47
  token: ${{ steps.app-token.outputs.token }}
48
48
  config-file: release-please-config.json
@@ -14,10 +14,10 @@ jobs:
14
14
  name: production_feeds
15
15
  runs-on: ubuntu-latest
16
16
  steps:
17
- - uses: actions/checkout@v6
17
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
18
18
  with:
19
19
  ref: ${{ github.ref }}
20
- - uses: ruby/setup-ruby@v1
20
+ - uses: ruby/setup-ruby@95ef2b042f9d7a56d8268cba8559e2842e2ad01b # v1.321.0
21
21
  with:
22
22
  ruby-version: '3.4'
23
23
  bundler-cache: true
@@ -15,8 +15,8 @@ jobs:
15
15
  ruby-version: ['3.3', '3.4', '4.0', head, jruby, jruby-head, truffleruby, truffleruby-head]
16
16
  runs-on: ${{ matrix.os }}
17
17
  steps:
18
- - uses: actions/checkout@v6
19
- - uses: ruby/setup-ruby@v1
18
+ - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
19
+ - uses: ruby/setup-ruby@95ef2b042f9d7a56d8268cba8559e2842e2ad01b # v1.321.0
20
20
  with:
21
21
  ruby-version: ${{ matrix.ruby-version }}
22
22
  bundler-cache: true # runs 'bundle install' and caches installed gems automatically
@@ -26,7 +26,7 @@ jobs:
26
26
  run: bundle exec rake
27
27
  - name: Upload artifacts for ruby version 3 and ubuntu
28
28
  if: ${{ matrix.os == 'ubuntu-latest' && matrix.ruby-version == '3.4'}}
29
- uses: actions/upload-artifact@v7
29
+ uses: actions/upload-artifact@043fb46d1a93c77aae656e7c1c64a875d1fc6a0a # v7.0.1
30
30
  with:
31
31
  name: drop
32
32
  path: |
@@ -1,3 +1,3 @@
1
1
  {
2
- ".": "0.10.0"
2
+ ".": "0.11.0"
3
3
  }
data/CHANGELOG.md CHANGED
@@ -5,6 +5,13 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.11.0](https://github.com/microsoft/kiota-serialization-json-ruby/compare/v0.10.0...v0.11.0) (2026-08-20)
9
+
10
+
11
+ ### Features
12
+
13
+ * support composed types in write_object_value ([7afc1d9](https://github.com/microsoft/kiota-serialization-json-ruby/commit/7afc1d9a0077f383bda7fbe9d0b3f316b7d4c3a7))
14
+
8
15
  ## [0.10.0](https://github.com/microsoft/kiota-serialization-json-ruby/compare/v0.9.2...v0.10.0) (2026-04-23)
9
16
 
10
17
 
@@ -147,29 +147,19 @@ module MicrosoftKiotaSerializationJson
147
147
  def write_collection_of_object_values(key, values)
148
148
  if values
149
149
  if !key
150
- return values.map do |v|
151
- self.write_object_value(nil, v)
152
- end
153
- end
154
- @writer[key] = values.map do |v|
155
- self.write_object_value(nil, v).writer
150
+ return values.map { |v| write_object_value(nil, v) }
156
151
  end
152
+ @writer[key] = values.map { |v| object_value_hash(v) }
157
153
  end
158
154
  end
159
155
 
160
- def write_object_value(key, value)
156
+ def write_object_value(key, value, *additional_values_to_merge)
161
157
  if value
162
- if !key
163
- temp = JsonSerializationWriter.new()
164
- value.serialize(temp)
165
- return temp
166
- end
167
- begin
168
- temp = JsonSerializationWriter.new()
169
- value.serialize(temp)
170
- @writer[key] = temp.writer
171
- rescue StandardError => e
172
- raise e.class, "no key or value included in write_boolean_value(key, value)"
158
+ if key
159
+ @writer[key] = object_value_hash(value, *additional_values_to_merge)
160
+ else
161
+ value.serialize(self)
162
+ additional_values_to_merge.each { |v| v.serialize(self) unless v.nil? }
173
163
  end
174
164
  end
175
165
  end
@@ -191,6 +181,17 @@ module MicrosoftKiotaSerializationJson
191
181
  end
192
182
  end
193
183
 
184
+ private
185
+
186
+ def object_value_hash(value, *additional_values_to_merge)
187
+ temp = JsonSerializationWriter.new
188
+ value.serialize(temp)
189
+ additional_values_to_merge.each { |v| v.serialize(temp) unless v.nil? }
190
+ temp.writer
191
+ end
192
+
193
+ public
194
+
194
195
  def write_any_value(key, value)
195
196
  if value
196
197
  if !!value == value
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module MicrosoftKiotaSerializationJson
4
- VERSION = "0.10.0"
4
+ VERSION = "0.11.0"
5
5
  end
@@ -30,9 +30,9 @@ Gem::Specification.new do |spec|
30
30
  spec.executables = spec.files.grep(%r{\Aexe/}) { |f| File.basename(f) }
31
31
  spec.require_paths = ['lib']
32
32
 
33
- spec.add_runtime_dependency 'microsoft_kiota_abstractions', '>= 0.14', '< 0.16'
33
+ spec.add_runtime_dependency 'microsoft_kiota_abstractions', '>= 0.16', '< 0.18'
34
34
  spec.add_runtime_dependency 'uuidtools', '>= 2.2', '< 3.1'
35
- spec.add_runtime_dependency 'json', '>= 2.6.3', '< 2.20.0'
35
+ spec.add_runtime_dependency 'json', '>= 2.6.3', '< 2.22.0'
36
36
  spec.add_development_dependency 'rake', '~> 13.0'
37
37
  spec.add_development_dependency 'rspec', '~> 3.0'
38
38
  spec.add_development_dependency 'rubocop'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: microsoft_kiota_serialization_json
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.10.0
4
+ version: 0.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Microsoft Corporation
@@ -15,20 +15,20 @@ dependencies:
15
15
  requirements:
16
16
  - - ">="
17
17
  - !ruby/object:Gem::Version
18
- version: '0.14'
18
+ version: '0.16'
19
19
  - - "<"
20
20
  - !ruby/object:Gem::Version
21
- version: '0.16'
21
+ version: '0.18'
22
22
  type: :runtime
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  requirements:
26
26
  - - ">="
27
27
  - !ruby/object:Gem::Version
28
- version: '0.14'
28
+ version: '0.16'
29
29
  - - "<"
30
30
  - !ruby/object:Gem::Version
31
- version: '0.16'
31
+ version: '0.18'
32
32
  - !ruby/object:Gem::Dependency
33
33
  name: uuidtools
34
34
  requirement: !ruby/object:Gem::Requirement
@@ -58,7 +58,7 @@ dependencies:
58
58
  version: 2.6.3
59
59
  - - "<"
60
60
  - !ruby/object:Gem::Version
61
- version: 2.20.0
61
+ version: 2.22.0
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
@@ -68,7 +68,7 @@ dependencies:
68
68
  version: 2.6.3
69
69
  - - "<"
70
70
  - !ruby/object:Gem::Version
71
- version: 2.20.0
71
+ version: 2.22.0
72
72
  - !ruby/object:Gem::Dependency
73
73
  name: rake
74
74
  requirement: !ruby/object:Gem::Requirement