aws-sdk-codecommit 1.102.0 → 1.103.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: 79eed7fd2138a657d9de2b81f53af1333a5e2f52f6590411643f8ca6cbf73ae6
4
- data.tar.gz: a93855a512d6b0c4cabb160e02a2102ad73698460116301c7230421ed7401e8d
3
+ metadata.gz: 90637d01b92114feb49542f7bca4c0a8ffdb25f7295895a82bf8c24d4429d835
4
+ data.tar.gz: 30f752c8304b8c77c458313d05dda29691cc11287e47b53003a055199b013a7e
5
5
  SHA512:
6
- metadata.gz: fe8d99a10c9f2bde26394c22285c3b7fecf12c9dc00bd36dd46d2aa2beafad21bc3238837a21b7b6d84a4ae637cbb478ac515cb6b54e3277f80db8d2ccfdf3b3
7
- data.tar.gz: d9726f779d29b1272fdda8a04561e884c0bbab21f552125673919d2afd245889a3c79007ea1a3d3c424e62400f53dffe94e20cae2ed2682bb883f3defdb16af6
6
+ metadata.gz: a7b85fb1b7866e41d6390b04ca8ae9fec8f039e46fc2460f18f54a323a5d8a86b9a06cb47399584384db687d2af70cbd7f3d7b4278f7a718c17bbbfba4e43025
7
+ data.tar.gz: ec834e557f0965ee5aeba4b8632836543140970663a8a522954ec434ad0a474ff2f20b1917e15c7a544e9e5d44e2ad08343158fa3aa41fa93490db83418f3f94
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.103.0 (2026-08-13)
5
+ ------------------
6
+
7
+ * Feature - Added the GetBlobDifferences API operation, which returns line-level diffs between two blob versions without requiring a local clone. Returns structured hunks with context, additions, and deletions. Supports pagination for large diffs.
8
+
4
9
  1.102.0 (2026-07-09)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.102.0
1
+ 1.103.0
@@ -2040,6 +2040,99 @@ module Aws::CodeCommit
2040
2040
  req.send_request(options)
2041
2041
  end
2042
2042
 
2043
+ # Returns a structured, line-level diff between two blob versions in a
2044
+ # repository. The diff is returned as an ordered list of hunks, where
2045
+ # each hunk represents a contiguous run of changed lines together with
2046
+ # any surrounding unchanged context lines.
2047
+ #
2048
+ # Results are paginated. Use `MaxResults` and `NextToken` to retrieve
2049
+ # additional pages.
2050
+ #
2051
+ # For the typical usage workflow, see GetDifferences.
2052
+ #
2053
+ # @option params [required, String] :repository_name
2054
+ # The name of the repository that contains the blobs to compare.
2055
+ #
2056
+ # @option params [required, String] :after_blob_id
2057
+ # The ID of the "after" (destination) blob in the diff. Typically the
2058
+ # value of `afterBlob.blobId` from a `Difference` object returned by
2059
+ # GetDifferences.
2060
+ #
2061
+ # @option params [String] :before_blob_id
2062
+ # The ID of the "before" (source) blob in the diff. Typically the
2063
+ # value of `beforeBlob.blobId` from a `Difference` object returned by
2064
+ # GetDifferences.
2065
+ #
2066
+ # If you do not specify a value, the operation returns a diff against an
2067
+ # empty before-state. This is equivalent to treating the file as newly
2068
+ # added.
2069
+ #
2070
+ # @option params [Integer] :context_lines
2071
+ # The number of unchanged lines of context to include before and after
2072
+ # each block of changes in a hunk. Valid values are 0 through 20.
2073
+ # Defaults to `3`.
2074
+ #
2075
+ # @option params [Boolean] :ignore_whitespace
2076
+ # Specifies whether to ignore whitespace-only changes when computing the
2077
+ # diff. When `true`, the operation treats lines that differ only in
2078
+ # whitespace as unchanged. Defaults to `false`.
2079
+ #
2080
+ # @option params [Integer] :max_results
2081
+ # The maximum number of `DiffHunk` entries to return in a single
2082
+ # response page. Defaults to `100`.
2083
+ #
2084
+ # @option params [String] :next_token
2085
+ # An enumeration token that returns the next batch of results when
2086
+ # present in a request.
2087
+ #
2088
+ # @return [Types::GetBlobDifferencesOutput] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2089
+ #
2090
+ # * {Types::GetBlobDifferencesOutput#hunks #hunks} => Array<Types::DiffHunk>
2091
+ # * {Types::GetBlobDifferencesOutput#is_binary #is_binary} => Boolean
2092
+ # * {Types::GetBlobDifferencesOutput#before_blob_size #before_blob_size} => Integer
2093
+ # * {Types::GetBlobDifferencesOutput#after_blob_size #after_blob_size} => Integer
2094
+ # * {Types::GetBlobDifferencesOutput#next_token #next_token} => String
2095
+ #
2096
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2097
+ #
2098
+ # @example Request syntax with placeholder values
2099
+ #
2100
+ # resp = client.get_blob_differences({
2101
+ # repository_name: "RepositoryName", # required
2102
+ # after_blob_id: "ObjectId", # required
2103
+ # before_blob_id: "ObjectId",
2104
+ # context_lines: 1,
2105
+ # ignore_whitespace: false,
2106
+ # max_results: 1,
2107
+ # next_token: "NextToken",
2108
+ # })
2109
+ #
2110
+ # @example Response structure
2111
+ #
2112
+ # resp.hunks #=> Array
2113
+ # resp.hunks[0].before_start_line #=> Integer
2114
+ # resp.hunks[0].before_line_count #=> Integer
2115
+ # resp.hunks[0].after_start_line #=> Integer
2116
+ # resp.hunks[0].after_line_count #=> Integer
2117
+ # resp.hunks[0].changes #=> Array
2118
+ # resp.hunks[0].changes[0].type #=> String, one of "CONTEXT", "ADD", "DELETE"
2119
+ # resp.hunks[0].changes[0].before_line_number #=> Integer
2120
+ # resp.hunks[0].changes[0].after_line_number #=> Integer
2121
+ # resp.hunks[0].changes[0].content #=> String
2122
+ # resp.is_binary #=> Boolean
2123
+ # resp.before_blob_size #=> Integer
2124
+ # resp.after_blob_size #=> Integer
2125
+ # resp.next_token #=> String
2126
+ #
2127
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetBlobDifferences AWS API Documentation
2128
+ #
2129
+ # @overload get_blob_differences(params = {})
2130
+ # @param [Hash] params ({})
2131
+ def get_blob_differences(params = {}, options = {})
2132
+ req = build_request(:get_blob_differences, params)
2133
+ req.send_request(options)
2134
+ end
2135
+
2043
2136
  # Returns information about a repository branch, including its name and
2044
2137
  # the last commit ID.
2045
2138
  #
@@ -2397,6 +2490,10 @@ module Aws::CodeCommit
2397
2490
  # (such as a branch, tag, HEAD, commit ID, or other fully qualified
2398
2491
  # reference). Results can be limited to a specified path.
2399
2492
  #
2493
+ # For line-level diff details, pass the `beforeBlob.blobId` and
2494
+ # `afterBlob.blobId` values from a `Difference` object to
2495
+ # GetBlobDifferences.
2496
+ #
2400
2497
  # @option params [required, String] :repository_name
2401
2498
  # The name of the repository where you want to get differences.
2402
2499
  #
@@ -5207,7 +5304,7 @@ module Aws::CodeCommit
5207
5304
  tracer: tracer
5208
5305
  )
5209
5306
  context[:gem_name] = 'aws-sdk-codecommit'
5210
- context[:gem_version] = '1.102.0'
5307
+ context[:gem_version] = '1.103.0'
5211
5308
  Seahorse::Client::Request.new(handlers, context)
5212
5309
  end
5213
5310
 
@@ -161,6 +161,12 @@ module Aws::CodeCommit
161
161
  DescribePullRequestEventsInput = Shapes::StructureShape.new(name: 'DescribePullRequestEventsInput')
162
162
  DescribePullRequestEventsOutput = Shapes::StructureShape.new(name: 'DescribePullRequestEventsOutput')
163
163
  Description = Shapes::StringShape.new(name: 'Description')
164
+ DiffChange = Shapes::StructureShape.new(name: 'DiffChange')
165
+ DiffChangeList = Shapes::ListShape.new(name: 'DiffChangeList')
166
+ DiffChangeType = Shapes::StringShape.new(name: 'DiffChangeType')
167
+ DiffContext = Shapes::IntegerShape.new(name: 'DiffContext')
168
+ DiffHunk = Shapes::StructureShape.new(name: 'DiffHunk')
169
+ DiffHunkList = Shapes::ListShape.new(name: 'DiffHunkList')
164
170
  Difference = Shapes::StructureShape.new(name: 'Difference')
165
171
  DifferenceList = Shapes::ListShape.new(name: 'DifferenceList')
166
172
  DirectoryNameConflictsWithFileNameException = Shapes::StructureShape.new(name: 'DirectoryNameConflictsWithFileNameException')
@@ -207,6 +213,8 @@ module Aws::CodeCommit
207
213
  FolderList = Shapes::ListShape.new(name: 'FolderList')
208
214
  GetApprovalRuleTemplateInput = Shapes::StructureShape.new(name: 'GetApprovalRuleTemplateInput')
209
215
  GetApprovalRuleTemplateOutput = Shapes::StructureShape.new(name: 'GetApprovalRuleTemplateOutput')
216
+ GetBlobDifferencesInput = Shapes::StructureShape.new(name: 'GetBlobDifferencesInput')
217
+ GetBlobDifferencesOutput = Shapes::StructureShape.new(name: 'GetBlobDifferencesOutput')
210
218
  GetBlobInput = Shapes::StructureShape.new(name: 'GetBlobInput')
211
219
  GetBlobOutput = Shapes::StructureShape.new(name: 'GetBlobOutput')
212
220
  GetBranchInput = Shapes::StructureShape.new(name: 'GetBranchInput')
@@ -245,6 +253,7 @@ module Aws::CodeCommit
245
253
  GetRepositoryTriggersOutput = Shapes::StructureShape.new(name: 'GetRepositoryTriggersOutput')
246
254
  HunkContent = Shapes::StringShape.new(name: 'HunkContent')
247
255
  IdempotencyParameterMismatchException = Shapes::StructureShape.new(name: 'IdempotencyParameterMismatchException')
256
+ IgnoreWhiteSpaces = Shapes::BooleanShape.new(name: 'IgnoreWhiteSpaces')
248
257
  InvalidActorArnException = Shapes::StructureShape.new(name: 'InvalidActorArnException')
249
258
  InvalidApprovalRuleContentException = Shapes::StructureShape.new(name: 'InvalidApprovalRuleContentException')
250
259
  InvalidApprovalRuleNameException = Shapes::StructureShape.new(name: 'InvalidApprovalRuleNameException')
@@ -321,6 +330,7 @@ module Aws::CodeCommit
321
330
  KmsKeyId = Shapes::StringShape.new(name: 'KmsKeyId')
322
331
  LastModifiedDate = Shapes::TimestampShape.new(name: 'LastModifiedDate')
323
332
  Limit = Shapes::IntegerShape.new(name: 'Limit')
333
+ LineContent = Shapes::StringShape.new(name: 'LineContent')
324
334
  LineNumber = Shapes::IntegerShape.new(name: 'LineNumber')
325
335
  ListApprovalRuleTemplatesInput = Shapes::StructureShape.new(name: 'ListApprovalRuleTemplatesInput')
326
336
  ListApprovalRuleTemplatesOutput = Shapes::StructureShape.new(name: 'ListApprovalRuleTemplatesOutput')
@@ -551,6 +561,7 @@ module Aws::CodeCommit
551
561
  UpdateRepositoryEncryptionKeyOutput = Shapes::StructureShape.new(name: 'UpdateRepositoryEncryptionKeyOutput')
552
562
  UpdateRepositoryNameInput = Shapes::StructureShape.new(name: 'UpdateRepositoryNameInput')
553
563
  UserInfo = Shapes::StructureShape.new(name: 'UserInfo')
564
+ ValidationException = Shapes::StructureShape.new(name: 'ValidationException')
554
565
  blob = Shapes::BlobShape.new(name: 'blob')
555
566
 
556
567
  ActorDoesNotExistException.struct_class = Types::ActorDoesNotExistException
@@ -1012,6 +1023,23 @@ module Aws::CodeCommit
1012
1023
  DescribePullRequestEventsOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "nextToken"))
1013
1024
  DescribePullRequestEventsOutput.struct_class = Types::DescribePullRequestEventsOutput
1014
1025
 
1026
+ DiffChange.add_member(:type, Shapes::ShapeRef.new(shape: DiffChangeType, location_name: "type"))
1027
+ DiffChange.add_member(:before_line_number, Shapes::ShapeRef.new(shape: LineNumber, location_name: "beforeLineNumber"))
1028
+ DiffChange.add_member(:after_line_number, Shapes::ShapeRef.new(shape: LineNumber, location_name: "afterLineNumber"))
1029
+ DiffChange.add_member(:content, Shapes::ShapeRef.new(shape: LineContent, location_name: "content"))
1030
+ DiffChange.struct_class = Types::DiffChange
1031
+
1032
+ DiffChangeList.member = Shapes::ShapeRef.new(shape: DiffChange)
1033
+
1034
+ DiffHunk.add_member(:before_start_line, Shapes::ShapeRef.new(shape: LineNumber, location_name: "beforeStartLine"))
1035
+ DiffHunk.add_member(:before_line_count, Shapes::ShapeRef.new(shape: Count, location_name: "beforeLineCount"))
1036
+ DiffHunk.add_member(:after_start_line, Shapes::ShapeRef.new(shape: LineNumber, location_name: "afterStartLine"))
1037
+ DiffHunk.add_member(:after_line_count, Shapes::ShapeRef.new(shape: Count, location_name: "afterLineCount"))
1038
+ DiffHunk.add_member(:changes, Shapes::ShapeRef.new(shape: DiffChangeList, location_name: "changes"))
1039
+ DiffHunk.struct_class = Types::DiffHunk
1040
+
1041
+ DiffHunkList.member = Shapes::ShapeRef.new(shape: DiffHunk)
1042
+
1015
1043
  Difference.add_member(:before_blob, Shapes::ShapeRef.new(shape: BlobMetadata, location_name: "beforeBlob"))
1016
1044
  Difference.add_member(:after_blob, Shapes::ShapeRef.new(shape: BlobMetadata, location_name: "afterBlob"))
1017
1045
  Difference.add_member(:change_type, Shapes::ShapeRef.new(shape: ChangeTypeEnum, location_name: "changeType"))
@@ -1122,6 +1150,22 @@ module Aws::CodeCommit
1122
1150
  GetApprovalRuleTemplateOutput.add_member(:approval_rule_template, Shapes::ShapeRef.new(shape: ApprovalRuleTemplate, required: true, location_name: "approvalRuleTemplate"))
1123
1151
  GetApprovalRuleTemplateOutput.struct_class = Types::GetApprovalRuleTemplateOutput
1124
1152
 
1153
+ GetBlobDifferencesInput.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, required: true, location_name: "repositoryName"))
1154
+ GetBlobDifferencesInput.add_member(:after_blob_id, Shapes::ShapeRef.new(shape: ObjectId, required: true, location_name: "afterBlobId"))
1155
+ GetBlobDifferencesInput.add_member(:before_blob_id, Shapes::ShapeRef.new(shape: ObjectId, location_name: "beforeBlobId"))
1156
+ GetBlobDifferencesInput.add_member(:context_lines, Shapes::ShapeRef.new(shape: DiffContext, location_name: "contextLines"))
1157
+ GetBlobDifferencesInput.add_member(:ignore_whitespace, Shapes::ShapeRef.new(shape: IgnoreWhiteSpaces, location_name: "ignoreWhitespace"))
1158
+ GetBlobDifferencesInput.add_member(:max_results, Shapes::ShapeRef.new(shape: Limit, location_name: "MaxResults"))
1159
+ GetBlobDifferencesInput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
1160
+ GetBlobDifferencesInput.struct_class = Types::GetBlobDifferencesInput
1161
+
1162
+ GetBlobDifferencesOutput.add_member(:hunks, Shapes::ShapeRef.new(shape: DiffHunkList, required: true, location_name: "hunks"))
1163
+ GetBlobDifferencesOutput.add_member(:is_binary, Shapes::ShapeRef.new(shape: CapitalBoolean, required: true, location_name: "isBinary"))
1164
+ GetBlobDifferencesOutput.add_member(:before_blob_size, Shapes::ShapeRef.new(shape: ObjectSize, location_name: "beforeBlobSize"))
1165
+ GetBlobDifferencesOutput.add_member(:after_blob_size, Shapes::ShapeRef.new(shape: ObjectSize, required: true, location_name: "afterBlobSize"))
1166
+ GetBlobDifferencesOutput.add_member(:next_token, Shapes::ShapeRef.new(shape: NextToken, location_name: "NextToken"))
1167
+ GetBlobDifferencesOutput.struct_class = Types::GetBlobDifferencesOutput
1168
+
1125
1169
  GetBlobInput.add_member(:repository_name, Shapes::ShapeRef.new(shape: RepositoryName, required: true, location_name: "repositoryName"))
1126
1170
  GetBlobInput.add_member(:blob_id, Shapes::ShapeRef.new(shape: ObjectId, required: true, location_name: "blobId"))
1127
1171
  GetBlobInput.struct_class = Types::GetBlobInput
@@ -2126,6 +2170,8 @@ module Aws::CodeCommit
2126
2170
  UserInfo.add_member(:date, Shapes::ShapeRef.new(shape: Date, location_name: "date"))
2127
2171
  UserInfo.struct_class = Types::UserInfo
2128
2172
 
2173
+ ValidationException.struct_class = Types::ValidationException
2174
+
2129
2175
 
2130
2176
  # @api private
2131
2177
  API = Seahorse::Model::Api.new.tap do |api|
@@ -2714,6 +2760,35 @@ module Aws::CodeCommit
2714
2760
  o.errors << Shapes::ShapeRef.new(shape: FileTooLargeException)
2715
2761
  end)
2716
2762
 
2763
+ api.add_operation(:get_blob_differences, Seahorse::Model::Operation.new.tap do |o|
2764
+ o.name = "GetBlobDifferences"
2765
+ o.http_method = "POST"
2766
+ o.http_request_uri = "/"
2767
+ o.input = Shapes::ShapeRef.new(shape: GetBlobDifferencesInput)
2768
+ o.output = Shapes::ShapeRef.new(shape: GetBlobDifferencesOutput)
2769
+ o.errors << Shapes::ShapeRef.new(shape: RepositoryNameRequiredException)
2770
+ o.errors << Shapes::ShapeRef.new(shape: InvalidRepositoryNameException)
2771
+ o.errors << Shapes::ShapeRef.new(shape: RepositoryDoesNotExistException)
2772
+ o.errors << Shapes::ShapeRef.new(shape: BlobIdRequiredException)
2773
+ o.errors << Shapes::ShapeRef.new(shape: InvalidBlobIdException)
2774
+ o.errors << Shapes::ShapeRef.new(shape: BlobIdDoesNotExistException)
2775
+ o.errors << Shapes::ShapeRef.new(shape: FileTooLargeException)
2776
+ o.errors << Shapes::ShapeRef.new(shape: ValidationException)
2777
+ o.errors << Shapes::ShapeRef.new(shape: InvalidContinuationTokenException)
2778
+ o.errors << Shapes::ShapeRef.new(shape: InvalidMaxResultsException)
2779
+ o.errors << Shapes::ShapeRef.new(shape: EncryptionIntegrityChecksFailedException)
2780
+ o.errors << Shapes::ShapeRef.new(shape: EncryptionKeyAccessDeniedException)
2781
+ o.errors << Shapes::ShapeRef.new(shape: EncryptionKeyDisabledException)
2782
+ o.errors << Shapes::ShapeRef.new(shape: EncryptionKeyNotFoundException)
2783
+ o.errors << Shapes::ShapeRef.new(shape: EncryptionKeyUnavailableException)
2784
+ o[:pager] = Aws::Pager.new(
2785
+ limit_key: "max_results",
2786
+ tokens: {
2787
+ "next_token" => "next_token"
2788
+ }
2789
+ )
2790
+ end)
2791
+
2717
2792
  api.add_operation(:get_branch, Seahorse::Model::Operation.new.tap do |o|
2718
2793
  o.name = "GetBranch"
2719
2794
  o.http_method = "POST"
@@ -216,6 +216,7 @@ module Aws::CodeCommit
216
216
  # * {TipsDivergenceExceededException}
217
217
  # * {TitleRequiredException}
218
218
  # * {TooManyTagsException}
219
+ # * {ValidationException}
219
220
  #
220
221
  # Additionally, error classes are dynamically generated for service errors based on the error code
221
222
  # if they are not defined above.
@@ -2113,5 +2114,15 @@ module Aws::CodeCommit
2113
2114
  end
2114
2115
  end
2115
2116
 
2117
+ class ValidationException < ServiceError
2118
+
2119
+ # @param [Seahorse::Client::RequestContext] context
2120
+ # @param [String] message
2121
+ # @param [Aws::CodeCommit::Types::ValidationException] data
2122
+ def initialize(context, message, data = Aws::EmptyStructure.new)
2123
+ super(context, message, data)
2124
+ end
2125
+ end
2126
+
2116
2127
  end
2117
2128
  end
@@ -2225,6 +2225,90 @@ module Aws::CodeCommit
2225
2225
  include Aws::Structure
2226
2226
  end
2227
2227
 
2228
+ # A single line-level entry in a diff hunk. Each `DiffChange` describes
2229
+ # one line and its change type: unchanged context, an addition in the
2230
+ # after blob, or a deletion from the before blob.
2231
+ #
2232
+ # @!attribute [rw] type
2233
+ # The type of change for this line. Possible values:
2234
+ #
2235
+ # * `CONTEXT` – Unchanged line included for surrounding context.
2236
+ #
2237
+ # * `ADD` – Line added in the after blob.
2238
+ #
2239
+ # * `DELETE` – Line removed from the before blob.
2240
+ # @return [String]
2241
+ #
2242
+ # @!attribute [rw] before_line_number
2243
+ # The 1-based line number in the before blob. This field is omitted
2244
+ # for `ADD` lines.
2245
+ # @return [Integer]
2246
+ #
2247
+ # @!attribute [rw] after_line_number
2248
+ # The 1-based line number in the after blob. This field is omitted for
2249
+ # `DELETE` lines.
2250
+ # @return [Integer]
2251
+ #
2252
+ # @!attribute [rw] content
2253
+ # The text content of the line, without the trailing newline.
2254
+ # @return [String]
2255
+ #
2256
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/DiffChange AWS API Documentation
2257
+ #
2258
+ class DiffChange < Struct.new(
2259
+ :type,
2260
+ :before_line_number,
2261
+ :after_line_number,
2262
+ :content)
2263
+ SENSITIVE = []
2264
+ include Aws::Structure
2265
+ end
2266
+
2267
+ # A contiguous run of changed lines from a blob diff, together with any
2268
+ # surrounding unchanged context lines. Hunks are returned in order from
2269
+ # the start of the file to the end. Adjacent or overlapping hunks are
2270
+ # merged into a single hunk in the response.
2271
+ #
2272
+ # @!attribute [rw] before_start_line
2273
+ # The 1-based line number in the before blob where this hunk begins.
2274
+ # When the hunk consists entirely of additions, `beforeLineCount` is
2275
+ # `0`.
2276
+ # @return [Integer]
2277
+ #
2278
+ # @!attribute [rw] before_line_count
2279
+ # The number of lines from the before blob covered by this hunk,
2280
+ # including any context lines.
2281
+ # @return [Integer]
2282
+ #
2283
+ # @!attribute [rw] after_start_line
2284
+ # The 1-based line number in the after blob where this hunk begins.
2285
+ # When the hunk consists entirely of deletions, `afterLineCount` is
2286
+ # `0`.
2287
+ # @return [Integer]
2288
+ #
2289
+ # @!attribute [rw] after_line_count
2290
+ # The number of lines from the after blob covered by this hunk,
2291
+ # including any context lines.
2292
+ # @return [Integer]
2293
+ #
2294
+ # @!attribute [rw] changes
2295
+ # An ordered list of line-level changes that make up this hunk. Each
2296
+ # entry indicates whether the line is unchanged context, an addition,
2297
+ # or a deletion.
2298
+ # @return [Array<Types::DiffChange>]
2299
+ #
2300
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/DiffHunk AWS API Documentation
2301
+ #
2302
+ class DiffHunk < Struct.new(
2303
+ :before_start_line,
2304
+ :before_line_count,
2305
+ :after_start_line,
2306
+ :after_line_count,
2307
+ :changes)
2308
+ SENSITIVE = []
2309
+ include Aws::Structure
2310
+ end
2311
+
2228
2312
  # Returns information about a set of differences for a commit specifier.
2229
2313
  #
2230
2314
  # @!attribute [rw] before_blob
@@ -2677,6 +2761,103 @@ module Aws::CodeCommit
2677
2761
  include Aws::Structure
2678
2762
  end
2679
2763
 
2764
+ # @!attribute [rw] repository_name
2765
+ # The name of the repository that contains the blobs to compare.
2766
+ # @return [String]
2767
+ #
2768
+ # @!attribute [rw] after_blob_id
2769
+ # The ID of the "after" (destination) blob in the diff. Typically
2770
+ # the value of `afterBlob.blobId` from a `Difference` object returned
2771
+ # by GetDifferences.
2772
+ # @return [String]
2773
+ #
2774
+ # @!attribute [rw] before_blob_id
2775
+ # The ID of the "before" (source) blob in the diff. Typically the
2776
+ # value of `beforeBlob.blobId` from a `Difference` object returned by
2777
+ # GetDifferences.
2778
+ #
2779
+ # If you do not specify a value, the operation returns a diff against
2780
+ # an empty before-state. This is equivalent to treating the file as
2781
+ # newly added.
2782
+ # @return [String]
2783
+ #
2784
+ # @!attribute [rw] context_lines
2785
+ # The number of unchanged lines of context to include before and after
2786
+ # each block of changes in a hunk. Valid values are 0 through 20.
2787
+ # Defaults to `3`.
2788
+ # @return [Integer]
2789
+ #
2790
+ # @!attribute [rw] ignore_whitespace
2791
+ # Specifies whether to ignore whitespace-only changes when computing
2792
+ # the diff. When `true`, the operation treats lines that differ only
2793
+ # in whitespace as unchanged. Defaults to `false`.
2794
+ # @return [Boolean]
2795
+ #
2796
+ # @!attribute [rw] max_results
2797
+ # The maximum number of `DiffHunk` entries to return in a single
2798
+ # response page. Defaults to `100`.
2799
+ # @return [Integer]
2800
+ #
2801
+ # @!attribute [rw] next_token
2802
+ # An enumeration token that returns the next batch of results when
2803
+ # present in a request.
2804
+ # @return [String]
2805
+ #
2806
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetBlobDifferencesInput AWS API Documentation
2807
+ #
2808
+ class GetBlobDifferencesInput < Struct.new(
2809
+ :repository_name,
2810
+ :after_blob_id,
2811
+ :before_blob_id,
2812
+ :context_lines,
2813
+ :ignore_whitespace,
2814
+ :max_results,
2815
+ :next_token)
2816
+ SENSITIVE = []
2817
+ include Aws::Structure
2818
+ end
2819
+
2820
+ # @!attribute [rw] hunks
2821
+ # An ordered list of diff hunks. Each hunk represents a contiguous run
2822
+ # of changed and adjacent context lines. The list is empty when the
2823
+ # blobs are identical or when the content is binary. The list is also
2824
+ # empty when a paginated request has already returned all hunks in
2825
+ # earlier pages, in which case `NextToken` is also `null`.
2826
+ # @return [Array<Types::DiffHunk>]
2827
+ #
2828
+ # @!attribute [rw] is_binary
2829
+ # Specifies whether the operation treated the diff content as binary.
2830
+ # When `true`, the operation does not compute a line-level diff and
2831
+ # `hunks` is empty.
2832
+ # @return [Boolean]
2833
+ #
2834
+ # @!attribute [rw] before_blob_size
2835
+ # The size, in bytes, of the blob identified by `beforeBlobId`.
2836
+ # Returns `0` when you do not specify `beforeBlobId`.
2837
+ # @return [Integer]
2838
+ #
2839
+ # @!attribute [rw] after_blob_size
2840
+ # The size, in bytes, of the blob identified by `afterBlobId`.
2841
+ # @return [Integer]
2842
+ #
2843
+ # @!attribute [rw] next_token
2844
+ # An enumeration token that can be used in a request to return the
2845
+ # next batch of `DiffHunk` entries. `null` when the response contains
2846
+ # the final page of the diff.
2847
+ # @return [String]
2848
+ #
2849
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/GetBlobDifferencesOutput AWS API Documentation
2850
+ #
2851
+ class GetBlobDifferencesOutput < Struct.new(
2852
+ :hunks,
2853
+ :is_binary,
2854
+ :before_blob_size,
2855
+ :after_blob_size,
2856
+ :next_token)
2857
+ SENSITIVE = []
2858
+ include Aws::Structure
2859
+ end
2860
+
2680
2861
  # Represents the input of a get blob operation.
2681
2862
  #
2682
2863
  # @!attribute [rw] repository_name
@@ -7230,6 +7411,12 @@ module Aws::CodeCommit
7230
7411
  include Aws::Structure
7231
7412
  end
7232
7413
 
7414
+ # The specified input is either not valid, or it could not be validated.
7415
+ #
7416
+ # @see http://docs.aws.amazon.com/goto/WebAPI/codecommit-2015-04-13/ValidationException AWS API Documentation
7417
+ #
7418
+ class ValidationException < Aws::EmptyStructure; end
7419
+
7233
7420
  end
7234
7421
  end
7235
7422
 
@@ -54,7 +54,7 @@ module Aws::CodeCommit
54
54
  autoload :EndpointProvider, 'aws-sdk-codecommit/endpoint_provider'
55
55
  autoload :Endpoints, 'aws-sdk-codecommit/endpoints'
56
56
 
57
- GEM_VERSION = '1.102.0'
57
+ GEM_VERSION = '1.103.0'
58
58
 
59
59
  end
60
60
 
data/sig/client.rbs CHANGED
@@ -434,6 +434,26 @@ module Aws
434
434
  ) -> _GetBlobResponseSuccess
435
435
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetBlobResponseSuccess
436
436
 
437
+ interface _GetBlobDifferencesResponseSuccess
438
+ include ::Seahorse::Client::_ResponseSuccess[Types::GetBlobDifferencesOutput]
439
+ def hunks: () -> ::Array[Types::DiffHunk]
440
+ def is_binary: () -> bool
441
+ def before_blob_size: () -> ::Integer
442
+ def after_blob_size: () -> ::Integer
443
+ def next_token: () -> ::String
444
+ end
445
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/CodeCommit/Client.html#get_blob_differences-instance_method
446
+ def get_blob_differences: (
447
+ repository_name: ::String,
448
+ after_blob_id: ::String,
449
+ ?before_blob_id: ::String,
450
+ ?context_lines: ::Integer,
451
+ ?ignore_whitespace: bool,
452
+ ?max_results: ::Integer,
453
+ ?next_token: ::String
454
+ ) -> _GetBlobDifferencesResponseSuccess
455
+ | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _GetBlobDifferencesResponseSuccess
456
+
437
457
  interface _GetBranchResponseSuccess
438
458
  include ::Seahorse::Client::_ResponseSuccess[Types::GetBranchOutput]
439
459
  def branch: () -> Types::BranchInfo
data/sig/errors.rbs CHANGED
@@ -389,6 +389,8 @@ module Aws
389
389
  end
390
390
  class TooManyTagsException < ::Aws::Errors::ServiceError
391
391
  end
392
+ class ValidationException < ::Aws::Errors::ServiceError
393
+ end
392
394
  end
393
395
  end
394
396
  end
data/sig/types.rbs CHANGED
@@ -586,6 +586,23 @@ module Aws::CodeCommit
586
586
  SENSITIVE: []
587
587
  end
588
588
 
589
+ class DiffChange
590
+ attr_accessor type: ("CONTEXT" | "ADD" | "DELETE")
591
+ attr_accessor before_line_number: ::Integer
592
+ attr_accessor after_line_number: ::Integer
593
+ attr_accessor content: ::String
594
+ SENSITIVE: []
595
+ end
596
+
597
+ class DiffHunk
598
+ attr_accessor before_start_line: ::Integer
599
+ attr_accessor before_line_count: ::Integer
600
+ attr_accessor after_start_line: ::Integer
601
+ attr_accessor after_line_count: ::Integer
602
+ attr_accessor changes: ::Array[Types::DiffChange]
603
+ SENSITIVE: []
604
+ end
605
+
589
606
  class Difference
590
607
  attr_accessor before_blob: Types::BlobMetadata
591
608
  attr_accessor after_blob: Types::BlobMetadata
@@ -732,6 +749,26 @@ module Aws::CodeCommit
732
749
  SENSITIVE: []
733
750
  end
734
751
 
752
+ class GetBlobDifferencesInput
753
+ attr_accessor repository_name: ::String
754
+ attr_accessor after_blob_id: ::String
755
+ attr_accessor before_blob_id: ::String
756
+ attr_accessor context_lines: ::Integer
757
+ attr_accessor ignore_whitespace: bool
758
+ attr_accessor max_results: ::Integer
759
+ attr_accessor next_token: ::String
760
+ SENSITIVE: []
761
+ end
762
+
763
+ class GetBlobDifferencesOutput
764
+ attr_accessor hunks: ::Array[Types::DiffHunk]
765
+ attr_accessor is_binary: bool
766
+ attr_accessor before_blob_size: ::Integer
767
+ attr_accessor after_blob_size: ::Integer
768
+ attr_accessor next_token: ::String
769
+ SENSITIVE: []
770
+ end
771
+
735
772
  class GetBlobInput
736
773
  attr_accessor repository_name: ::String
737
774
  attr_accessor blob_id: ::String
@@ -2073,5 +2110,8 @@ module Aws::CodeCommit
2073
2110
  attr_accessor date: ::String
2074
2111
  SENSITIVE: []
2075
2112
  end
2113
+
2114
+ class ValidationException < Aws::EmptyStructure
2115
+ end
2076
2116
  end
2077
2117
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-codecommit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.102.0
4
+ version: 1.103.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services