@google-cloud/containeranalysis 5.4.0 → 5.6.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.
package/CHANGELOG.md CHANGED
@@ -4,6 +4,21 @@
4
4
 
5
5
  [1]: https://www.npmjs.com/package/@google-cloud/containeranalysis?activeTab=versions
6
6
 
7
+ ## [5.6.0](https://github.com/googleapis/google-cloud-node/compare/containeranalysis-v5.5.0...containeranalysis-v5.6.0) (2024-08-09)
8
+
9
+
10
+ ### Features
11
+
12
+ * [containeranalysis] A new field `version` is added to message `.grafeas.v1.ComplianceOccurrence` ([#5586](https://github.com/googleapis/google-cloud-node/issues/5586)) ([f60f2f9](https://github.com/googleapis/google-cloud-node/commit/f60f2f901ce9aa4e51237246f359a6acf7f3d5b1))
13
+
14
+ ## [5.5.0](https://github.com/googleapis/google-cloud-node/compare/containeranalysis-v5.4.0...containeranalysis-v5.5.0) (2024-05-21)
15
+
16
+
17
+ ### Features
18
+
19
+ * [Many APIs] update Nodejs generator to send API versions in headers for GAPICs ([#5351](https://github.com/googleapis/google-cloud-node/issues/5351)) ([01f48fc](https://github.com/googleapis/google-cloud-node/commit/01f48fce63ec4ddf801d59ee2b8c0db9f6fb8372))
20
+ * [Many APIs] update Nodejs generator to send API versions in headers for GAPICs ([#5354](https://github.com/googleapis/google-cloud-node/issues/5354)) ([a9784ed](https://github.com/googleapis/google-cloud-node/commit/a9784ed3db6ee96d171762308bbbcd57390b6866))
21
+
7
22
  ## [5.4.0](https://github.com/googleapis/google-cloud-node/compare/containeranalysis-v5.3.0...containeranalysis-v5.4.0) (2024-03-29)
8
23
 
9
24
 
@@ -1,4 +1,4 @@
1
- // Copyright 2021 Google LLC
1
+ // Copyright 2024 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -25,7 +25,7 @@ import "google/iam/v1/policy.proto";
25
25
  import "grafeas/v1/severity.proto";
26
26
 
27
27
  option csharp_namespace = "Google.Cloud.DevTools.ContainerAnalysis.V1";
28
- option go_package = "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1;containeranalysis";
28
+ option go_package = "cloud.google.com/go/containeranalysis/apiv1/containeranalysispb;containeranalysispb";
29
29
  option java_multiple_files = true;
30
30
  option java_package = "com.google.containeranalysis.v1";
31
31
  option objc_class_prefix = "GCA";
@@ -1,4 +1,4 @@
1
- // Copyright 2023 Google LLC
1
+ // Copyright 2024 Google LLC
2
2
  //
3
3
  // Licensed under the Apache License, Version 2.0 (the "License");
4
4
  // you may not use this file except in compliance with the License.
@@ -69,6 +69,8 @@ message ComplianceVersion {
69
69
  message ComplianceOccurrence {
70
70
  repeated NonCompliantFile non_compliant_files = 2;
71
71
  string non_compliance_reason = 3;
72
+ // The OS and config version the benchmark was run on.
73
+ grafeas.v1.ComplianceVersion version = 4;
72
74
  }
73
75
 
74
76
  // Details about files that caused a compliance check to fail.
@@ -123,4 +123,29 @@ message DiscoveryOccurrence {
123
123
 
124
124
  // The status of an SBOM generation.
125
125
  SBOMStatus sbom_status = 9;
126
+
127
+ // The status of an vulnerability attestation generation.
128
+ message VulnerabilityAttestation {
129
+ // An enum indicating the state of the attestation generation.
130
+ enum VulnerabilityAttestationState {
131
+ // Default unknown state.
132
+ VULNERABILITY_ATTESTATION_STATE_UNSPECIFIED = 0;
133
+ // Attestation was successfully generated and stored.
134
+ SUCCESS = 1;
135
+ // Attestation was unsuccessfully generated and stored.
136
+ FAILURE = 2;
137
+ }
138
+
139
+ // The last time we attempted to generate an attestation.
140
+ google.protobuf.Timestamp last_attempt_time = 1;
141
+
142
+ // The success/failure state of the latest attestation attempt.
143
+ VulnerabilityAttestationState state = 2;
144
+
145
+ // If failure, the error reason for why the attestation generation failed.
146
+ string error = 3;
147
+ }
148
+
149
+ // The status of an vulnerability attestation generation.
150
+ VulnerabilityAttestation vulnerability_attestation = 10;
126
151
  }
@@ -93,6 +93,9 @@ service Grafeas {
93
93
  returns (google.protobuf.Empty) {
94
94
  option (google.api.http) = {
95
95
  delete: "/v1/{name=projects/*/occurrences/*}"
96
+ additional_bindings {
97
+ delete: "/v1/{name=projects/*/locations/*/occurrences/*}"
98
+ }
96
99
  };
97
100
  option (google.api.method_signature) = "name";
98
101
  }
@@ -102,6 +105,10 @@ service Grafeas {
102
105
  option (google.api.http) = {
103
106
  post: "/v1/{parent=projects/*}/occurrences"
104
107
  body: "occurrence"
108
+ additional_bindings {
109
+ post: "/v1/{parent=projects/*/locations/*}/occurrences"
110
+ body: "occurrence"
111
+ }
105
112
  };
106
113
  option (google.api.method_signature) = "parent,occurrence";
107
114
  }
@@ -112,6 +119,10 @@ service Grafeas {
112
119
  option (google.api.http) = {
113
120
  post: "/v1/{parent=projects/*}/occurrences:batchCreate"
114
121
  body: "*"
122
+ additional_bindings {
123
+ post: "/v1/{parent=projects/*/locations/*}/occurrences:batchCreate"
124
+ body: "*"
125
+ }
115
126
  };
116
127
  option (google.api.method_signature) = "parent,occurrences";
117
128
  }
@@ -121,6 +132,10 @@ service Grafeas {
121
132
  option (google.api.http) = {
122
133
  patch: "/v1/{name=projects/*/occurrences/*}"
123
134
  body: "occurrence"
135
+ additional_bindings {
136
+ patch: "/v1/{name=projects/*/locations/*/occurrences/*}"
137
+ body: "occurrence"
138
+ }
124
139
  };
125
140
  option (google.api.method_signature) = "name,occurrence,update_mask";
126
141
  }
@@ -159,6 +174,9 @@ service Grafeas {
159
174
  rpc DeleteNote(DeleteNoteRequest) returns (google.protobuf.Empty) {
160
175
  option (google.api.http) = {
161
176
  delete: "/v1/{name=projects/*/notes/*}"
177
+ additional_bindings {
178
+ delete: "/v1/{name=projects/*/locations/*/notes/*}"
179
+ }
162
180
  };
163
181
  option (google.api.method_signature) = "name";
164
182
  }
@@ -168,6 +186,10 @@ service Grafeas {
168
186
  option (google.api.http) = {
169
187
  post: "/v1/{parent=projects/*}/notes"
170
188
  body: "note"
189
+ additional_bindings {
190
+ post: "/v1/{parent=projects/*/locations/*}/notes"
191
+ body: "note"
192
+ }
171
193
  };
172
194
  option (google.api.method_signature) = "parent,note_id,note";
173
195
  }
@@ -178,6 +200,10 @@ service Grafeas {
178
200
  option (google.api.http) = {
179
201
  post: "/v1/{parent=projects/*}/notes:batchCreate"
180
202
  body: "*"
203
+ additional_bindings {
204
+ post: "/v1/{parent=projects/*/locations/*}/notes:batchCreate"
205
+ body: "*"
206
+ }
181
207
  };
182
208
  option (google.api.method_signature) = "parent,notes";
183
209
  }
@@ -187,6 +213,10 @@ service Grafeas {
187
213
  option (google.api.http) = {
188
214
  patch: "/v1/{name=projects/*/notes/*}"
189
215
  body: "note"
216
+ additional_bindings {
217
+ patch: "/v1/{name=projects/*/locations/*/notes/*}"
218
+ body: "note"
219
+ }
190
220
  };
191
221
  option (google.api.method_signature) = "name,note,update_mask";
192
222
  }
@@ -6290,6 +6290,9 @@ export namespace grafeas {
6290
6290
 
6291
6291
  /** ComplianceOccurrence nonComplianceReason */
6292
6292
  nonComplianceReason?: (string|null);
6293
+
6294
+ /** ComplianceOccurrence version */
6295
+ version?: (grafeas.v1.IComplianceVersion|null);
6293
6296
  }
6294
6297
 
6295
6298
  /** Represents a ComplianceOccurrence. */
@@ -6307,6 +6310,9 @@ export namespace grafeas {
6307
6310
  /** ComplianceOccurrence nonComplianceReason. */
6308
6311
  public nonComplianceReason: string;
6309
6312
 
6313
+ /** ComplianceOccurrence version. */
6314
+ public version?: (grafeas.v1.IComplianceVersion|null);
6315
+
6310
6316
  /**
6311
6317
  * Creates a new ComplianceOccurrence instance using the specified properties.
6312
6318
  * @param [properties] Properties to set
@@ -7297,6 +7303,9 @@ export namespace grafeas {
7297
7303
 
7298
7304
  /** DiscoveryOccurrence sbomStatus */
7299
7305
  sbomStatus?: (grafeas.v1.DiscoveryOccurrence.ISBOMStatus|null);
7306
+
7307
+ /** DiscoveryOccurrence vulnerabilityAttestation */
7308
+ vulnerabilityAttestation?: (grafeas.v1.DiscoveryOccurrence.IVulnerabilityAttestation|null);
7300
7309
  }
7301
7310
 
7302
7311
  /** Represents a DiscoveryOccurrence. */
@@ -7335,6 +7344,9 @@ export namespace grafeas {
7335
7344
  /** DiscoveryOccurrence sbomStatus. */
7336
7345
  public sbomStatus?: (grafeas.v1.DiscoveryOccurrence.ISBOMStatus|null);
7337
7346
 
7347
+ /** DiscoveryOccurrence vulnerabilityAttestation. */
7348
+ public vulnerabilityAttestation?: (grafeas.v1.DiscoveryOccurrence.IVulnerabilityAttestation|null);
7349
+
7338
7350
  /**
7339
7351
  * Creates a new DiscoveryOccurrence instance using the specified properties.
7340
7352
  * @param [properties] Properties to set
@@ -7642,6 +7654,125 @@ export namespace grafeas {
7642
7654
  COMPLETE = 2
7643
7655
  }
7644
7656
  }
7657
+
7658
+ /** Properties of a VulnerabilityAttestation. */
7659
+ interface IVulnerabilityAttestation {
7660
+
7661
+ /** VulnerabilityAttestation lastAttemptTime */
7662
+ lastAttemptTime?: (google.protobuf.ITimestamp|null);
7663
+
7664
+ /** VulnerabilityAttestation state */
7665
+ state?: (grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.VulnerabilityAttestationState|keyof typeof grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.VulnerabilityAttestationState|null);
7666
+
7667
+ /** VulnerabilityAttestation error */
7668
+ error?: (string|null);
7669
+ }
7670
+
7671
+ /** Represents a VulnerabilityAttestation. */
7672
+ class VulnerabilityAttestation implements IVulnerabilityAttestation {
7673
+
7674
+ /**
7675
+ * Constructs a new VulnerabilityAttestation.
7676
+ * @param [properties] Properties to set
7677
+ */
7678
+ constructor(properties?: grafeas.v1.DiscoveryOccurrence.IVulnerabilityAttestation);
7679
+
7680
+ /** VulnerabilityAttestation lastAttemptTime. */
7681
+ public lastAttemptTime?: (google.protobuf.ITimestamp|null);
7682
+
7683
+ /** VulnerabilityAttestation state. */
7684
+ public state: (grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.VulnerabilityAttestationState|keyof typeof grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.VulnerabilityAttestationState);
7685
+
7686
+ /** VulnerabilityAttestation error. */
7687
+ public error: string;
7688
+
7689
+ /**
7690
+ * Creates a new VulnerabilityAttestation instance using the specified properties.
7691
+ * @param [properties] Properties to set
7692
+ * @returns VulnerabilityAttestation instance
7693
+ */
7694
+ public static create(properties?: grafeas.v1.DiscoveryOccurrence.IVulnerabilityAttestation): grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation;
7695
+
7696
+ /**
7697
+ * Encodes the specified VulnerabilityAttestation message. Does not implicitly {@link grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.verify|verify} messages.
7698
+ * @param message VulnerabilityAttestation message or plain object to encode
7699
+ * @param [writer] Writer to encode to
7700
+ * @returns Writer
7701
+ */
7702
+ public static encode(message: grafeas.v1.DiscoveryOccurrence.IVulnerabilityAttestation, writer?: $protobuf.Writer): $protobuf.Writer;
7703
+
7704
+ /**
7705
+ * Encodes the specified VulnerabilityAttestation message, length delimited. Does not implicitly {@link grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.verify|verify} messages.
7706
+ * @param message VulnerabilityAttestation message or plain object to encode
7707
+ * @param [writer] Writer to encode to
7708
+ * @returns Writer
7709
+ */
7710
+ public static encodeDelimited(message: grafeas.v1.DiscoveryOccurrence.IVulnerabilityAttestation, writer?: $protobuf.Writer): $protobuf.Writer;
7711
+
7712
+ /**
7713
+ * Decodes a VulnerabilityAttestation message from the specified reader or buffer.
7714
+ * @param reader Reader or buffer to decode from
7715
+ * @param [length] Message length if known beforehand
7716
+ * @returns VulnerabilityAttestation
7717
+ * @throws {Error} If the payload is not a reader or valid buffer
7718
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
7719
+ */
7720
+ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation;
7721
+
7722
+ /**
7723
+ * Decodes a VulnerabilityAttestation message from the specified reader or buffer, length delimited.
7724
+ * @param reader Reader or buffer to decode from
7725
+ * @returns VulnerabilityAttestation
7726
+ * @throws {Error} If the payload is not a reader or valid buffer
7727
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
7728
+ */
7729
+ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation;
7730
+
7731
+ /**
7732
+ * Verifies a VulnerabilityAttestation message.
7733
+ * @param message Plain object to verify
7734
+ * @returns `null` if valid, otherwise the reason why it is not
7735
+ */
7736
+ public static verify(message: { [k: string]: any }): (string|null);
7737
+
7738
+ /**
7739
+ * Creates a VulnerabilityAttestation message from a plain object. Also converts values to their respective internal types.
7740
+ * @param object Plain object
7741
+ * @returns VulnerabilityAttestation
7742
+ */
7743
+ public static fromObject(object: { [k: string]: any }): grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation;
7744
+
7745
+ /**
7746
+ * Creates a plain object from a VulnerabilityAttestation message. Also converts values to other types if specified.
7747
+ * @param message VulnerabilityAttestation
7748
+ * @param [options] Conversion options
7749
+ * @returns Plain object
7750
+ */
7751
+ public static toObject(message: grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation, options?: $protobuf.IConversionOptions): { [k: string]: any };
7752
+
7753
+ /**
7754
+ * Converts this VulnerabilityAttestation to JSON.
7755
+ * @returns JSON object
7756
+ */
7757
+ public toJSON(): { [k: string]: any };
7758
+
7759
+ /**
7760
+ * Gets the default type url for VulnerabilityAttestation
7761
+ * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
7762
+ * @returns The default type url
7763
+ */
7764
+ public static getTypeUrl(typeUrlPrefix?: string): string;
7765
+ }
7766
+
7767
+ namespace VulnerabilityAttestation {
7768
+
7769
+ /** VulnerabilityAttestationState enum. */
7770
+ enum VulnerabilityAttestationState {
7771
+ VULNERABILITY_ATTESTATION_STATE_UNSPECIFIED = 0,
7772
+ SUCCESS = 1,
7773
+ FAILURE = 2
7774
+ }
7775
+ }
7645
7776
  }
7646
7777
 
7647
7778
  /** Properties of a DSSEAttestationNote. */
@@ -15884,6 +15884,7 @@
15884
15884
  * @interface IComplianceOccurrence
15885
15885
  * @property {Array.<grafeas.v1.INonCompliantFile>|null} [nonCompliantFiles] ComplianceOccurrence nonCompliantFiles
15886
15886
  * @property {string|null} [nonComplianceReason] ComplianceOccurrence nonComplianceReason
15887
+ * @property {grafeas.v1.IComplianceVersion|null} [version] ComplianceOccurrence version
15887
15888
  */
15888
15889
 
15889
15890
  /**
@@ -15918,6 +15919,14 @@
15918
15919
  */
15919
15920
  ComplianceOccurrence.prototype.nonComplianceReason = "";
15920
15921
 
15922
+ /**
15923
+ * ComplianceOccurrence version.
15924
+ * @member {grafeas.v1.IComplianceVersion|null|undefined} version
15925
+ * @memberof grafeas.v1.ComplianceOccurrence
15926
+ * @instance
15927
+ */
15928
+ ComplianceOccurrence.prototype.version = null;
15929
+
15921
15930
  /**
15922
15931
  * Creates a new ComplianceOccurrence instance using the specified properties.
15923
15932
  * @function create
@@ -15947,6 +15956,8 @@
15947
15956
  $root.grafeas.v1.NonCompliantFile.encode(message.nonCompliantFiles[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim();
15948
15957
  if (message.nonComplianceReason != null && Object.hasOwnProperty.call(message, "nonComplianceReason"))
15949
15958
  writer.uint32(/* id 3, wireType 2 =*/26).string(message.nonComplianceReason);
15959
+ if (message.version != null && Object.hasOwnProperty.call(message, "version"))
15960
+ $root.grafeas.v1.ComplianceVersion.encode(message.version, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim();
15950
15961
  return writer;
15951
15962
  };
15952
15963
 
@@ -15991,6 +16002,10 @@
15991
16002
  message.nonComplianceReason = reader.string();
15992
16003
  break;
15993
16004
  }
16005
+ case 4: {
16006
+ message.version = $root.grafeas.v1.ComplianceVersion.decode(reader, reader.uint32());
16007
+ break;
16008
+ }
15994
16009
  default:
15995
16010
  reader.skipType(tag & 7);
15996
16011
  break;
@@ -16038,6 +16053,11 @@
16038
16053
  if (message.nonComplianceReason != null && message.hasOwnProperty("nonComplianceReason"))
16039
16054
  if (!$util.isString(message.nonComplianceReason))
16040
16055
  return "nonComplianceReason: string expected";
16056
+ if (message.version != null && message.hasOwnProperty("version")) {
16057
+ var error = $root.grafeas.v1.ComplianceVersion.verify(message.version);
16058
+ if (error)
16059
+ return "version." + error;
16060
+ }
16041
16061
  return null;
16042
16062
  };
16043
16063
 
@@ -16065,6 +16085,11 @@
16065
16085
  }
16066
16086
  if (object.nonComplianceReason != null)
16067
16087
  message.nonComplianceReason = String(object.nonComplianceReason);
16088
+ if (object.version != null) {
16089
+ if (typeof object.version !== "object")
16090
+ throw TypeError(".grafeas.v1.ComplianceOccurrence.version: object expected");
16091
+ message.version = $root.grafeas.v1.ComplianceVersion.fromObject(object.version);
16092
+ }
16068
16093
  return message;
16069
16094
  };
16070
16095
 
@@ -16083,8 +16108,10 @@
16083
16108
  var object = {};
16084
16109
  if (options.arrays || options.defaults)
16085
16110
  object.nonCompliantFiles = [];
16086
- if (options.defaults)
16111
+ if (options.defaults) {
16087
16112
  object.nonComplianceReason = "";
16113
+ object.version = null;
16114
+ }
16088
16115
  if (message.nonCompliantFiles && message.nonCompliantFiles.length) {
16089
16116
  object.nonCompliantFiles = [];
16090
16117
  for (var j = 0; j < message.nonCompliantFiles.length; ++j)
@@ -16092,6 +16119,8 @@
16092
16119
  }
16093
16120
  if (message.nonComplianceReason != null && message.hasOwnProperty("nonComplianceReason"))
16094
16121
  object.nonComplianceReason = message.nonComplianceReason;
16122
+ if (message.version != null && message.hasOwnProperty("version"))
16123
+ object.version = $root.grafeas.v1.ComplianceVersion.toObject(message.version, options);
16095
16124
  return object;
16096
16125
  };
16097
16126
 
@@ -18948,6 +18977,7 @@
18948
18977
  * @property {google.protobuf.ITimestamp|null} [lastScanTime] DiscoveryOccurrence lastScanTime
18949
18978
  * @property {google.protobuf.ITimestamp|null} [archiveTime] DiscoveryOccurrence archiveTime
18950
18979
  * @property {grafeas.v1.DiscoveryOccurrence.ISBOMStatus|null} [sbomStatus] DiscoveryOccurrence sbomStatus
18980
+ * @property {grafeas.v1.DiscoveryOccurrence.IVulnerabilityAttestation|null} [vulnerabilityAttestation] DiscoveryOccurrence vulnerabilityAttestation
18951
18981
  */
18952
18982
 
18953
18983
  /**
@@ -19038,6 +19068,14 @@
19038
19068
  */
19039
19069
  DiscoveryOccurrence.prototype.sbomStatus = null;
19040
19070
 
19071
+ /**
19072
+ * DiscoveryOccurrence vulnerabilityAttestation.
19073
+ * @member {grafeas.v1.DiscoveryOccurrence.IVulnerabilityAttestation|null|undefined} vulnerabilityAttestation
19074
+ * @memberof grafeas.v1.DiscoveryOccurrence
19075
+ * @instance
19076
+ */
19077
+ DiscoveryOccurrence.prototype.vulnerabilityAttestation = null;
19078
+
19041
19079
  /**
19042
19080
  * Creates a new DiscoveryOccurrence instance using the specified properties.
19043
19081
  * @function create
@@ -19081,6 +19119,8 @@
19081
19119
  $root.google.rpc.Status.encode(message.analysisError[i], writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim();
19082
19120
  if (message.sbomStatus != null && Object.hasOwnProperty.call(message, "sbomStatus"))
19083
19121
  $root.grafeas.v1.DiscoveryOccurrence.SBOMStatus.encode(message.sbomStatus, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim();
19122
+ if (message.vulnerabilityAttestation != null && Object.hasOwnProperty.call(message, "vulnerabilityAttestation"))
19123
+ $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.encode(message.vulnerabilityAttestation, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim();
19084
19124
  return writer;
19085
19125
  };
19086
19126
 
@@ -19153,6 +19193,10 @@
19153
19193
  message.sbomStatus = $root.grafeas.v1.DiscoveryOccurrence.SBOMStatus.decode(reader, reader.uint32());
19154
19194
  break;
19155
19195
  }
19196
+ case 10: {
19197
+ message.vulnerabilityAttestation = $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.decode(reader, reader.uint32());
19198
+ break;
19199
+ }
19156
19200
  default:
19157
19201
  reader.skipType(tag & 7);
19158
19202
  break;
@@ -19247,6 +19291,11 @@
19247
19291
  if (error)
19248
19292
  return "sbomStatus." + error;
19249
19293
  }
19294
+ if (message.vulnerabilityAttestation != null && message.hasOwnProperty("vulnerabilityAttestation")) {
19295
+ var error = $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.verify(message.vulnerabilityAttestation);
19296
+ if (error)
19297
+ return "vulnerabilityAttestation." + error;
19298
+ }
19250
19299
  return null;
19251
19300
  };
19252
19301
 
@@ -19355,6 +19404,11 @@
19355
19404
  throw TypeError(".grafeas.v1.DiscoveryOccurrence.sbomStatus: object expected");
19356
19405
  message.sbomStatus = $root.grafeas.v1.DiscoveryOccurrence.SBOMStatus.fromObject(object.sbomStatus);
19357
19406
  }
19407
+ if (object.vulnerabilityAttestation != null) {
19408
+ if (typeof object.vulnerabilityAttestation !== "object")
19409
+ throw TypeError(".grafeas.v1.DiscoveryOccurrence.vulnerabilityAttestation: object expected");
19410
+ message.vulnerabilityAttestation = $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.fromObject(object.vulnerabilityAttestation);
19411
+ }
19358
19412
  return message;
19359
19413
  };
19360
19414
 
@@ -19382,6 +19436,7 @@
19382
19436
  object.archiveTime = null;
19383
19437
  object.analysisCompleted = null;
19384
19438
  object.sbomStatus = null;
19439
+ object.vulnerabilityAttestation = null;
19385
19440
  }
19386
19441
  if (message.continuousAnalysis != null && message.hasOwnProperty("continuousAnalysis"))
19387
19442
  object.continuousAnalysis = options.enums === String ? $root.grafeas.v1.DiscoveryOccurrence.ContinuousAnalysis[message.continuousAnalysis] === undefined ? message.continuousAnalysis : $root.grafeas.v1.DiscoveryOccurrence.ContinuousAnalysis[message.continuousAnalysis] : message.continuousAnalysis;
@@ -19404,6 +19459,8 @@
19404
19459
  }
19405
19460
  if (message.sbomStatus != null && message.hasOwnProperty("sbomStatus"))
19406
19461
  object.sbomStatus = $root.grafeas.v1.DiscoveryOccurrence.SBOMStatus.toObject(message.sbomStatus, options);
19462
+ if (message.vulnerabilityAttestation != null && message.hasOwnProperty("vulnerabilityAttestation"))
19463
+ object.vulnerabilityAttestation = $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.toObject(message.vulnerabilityAttestation, options);
19407
19464
  return object;
19408
19465
  };
19409
19466
 
@@ -19959,6 +20016,301 @@
19959
20016
  return SBOMStatus;
19960
20017
  })();
19961
20018
 
20019
+ DiscoveryOccurrence.VulnerabilityAttestation = (function() {
20020
+
20021
+ /**
20022
+ * Properties of a VulnerabilityAttestation.
20023
+ * @memberof grafeas.v1.DiscoveryOccurrence
20024
+ * @interface IVulnerabilityAttestation
20025
+ * @property {google.protobuf.ITimestamp|null} [lastAttemptTime] VulnerabilityAttestation lastAttemptTime
20026
+ * @property {grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.VulnerabilityAttestationState|null} [state] VulnerabilityAttestation state
20027
+ * @property {string|null} [error] VulnerabilityAttestation error
20028
+ */
20029
+
20030
+ /**
20031
+ * Constructs a new VulnerabilityAttestation.
20032
+ * @memberof grafeas.v1.DiscoveryOccurrence
20033
+ * @classdesc Represents a VulnerabilityAttestation.
20034
+ * @implements IVulnerabilityAttestation
20035
+ * @constructor
20036
+ * @param {grafeas.v1.DiscoveryOccurrence.IVulnerabilityAttestation=} [properties] Properties to set
20037
+ */
20038
+ function VulnerabilityAttestation(properties) {
20039
+ if (properties)
20040
+ for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i)
20041
+ if (properties[keys[i]] != null)
20042
+ this[keys[i]] = properties[keys[i]];
20043
+ }
20044
+
20045
+ /**
20046
+ * VulnerabilityAttestation lastAttemptTime.
20047
+ * @member {google.protobuf.ITimestamp|null|undefined} lastAttemptTime
20048
+ * @memberof grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation
20049
+ * @instance
20050
+ */
20051
+ VulnerabilityAttestation.prototype.lastAttemptTime = null;
20052
+
20053
+ /**
20054
+ * VulnerabilityAttestation state.
20055
+ * @member {grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.VulnerabilityAttestationState} state
20056
+ * @memberof grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation
20057
+ * @instance
20058
+ */
20059
+ VulnerabilityAttestation.prototype.state = 0;
20060
+
20061
+ /**
20062
+ * VulnerabilityAttestation error.
20063
+ * @member {string} error
20064
+ * @memberof grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation
20065
+ * @instance
20066
+ */
20067
+ VulnerabilityAttestation.prototype.error = "";
20068
+
20069
+ /**
20070
+ * Creates a new VulnerabilityAttestation instance using the specified properties.
20071
+ * @function create
20072
+ * @memberof grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation
20073
+ * @static
20074
+ * @param {grafeas.v1.DiscoveryOccurrence.IVulnerabilityAttestation=} [properties] Properties to set
20075
+ * @returns {grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation} VulnerabilityAttestation instance
20076
+ */
20077
+ VulnerabilityAttestation.create = function create(properties) {
20078
+ return new VulnerabilityAttestation(properties);
20079
+ };
20080
+
20081
+ /**
20082
+ * Encodes the specified VulnerabilityAttestation message. Does not implicitly {@link grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.verify|verify} messages.
20083
+ * @function encode
20084
+ * @memberof grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation
20085
+ * @static
20086
+ * @param {grafeas.v1.DiscoveryOccurrence.IVulnerabilityAttestation} message VulnerabilityAttestation message or plain object to encode
20087
+ * @param {$protobuf.Writer} [writer] Writer to encode to
20088
+ * @returns {$protobuf.Writer} Writer
20089
+ */
20090
+ VulnerabilityAttestation.encode = function encode(message, writer) {
20091
+ if (!writer)
20092
+ writer = $Writer.create();
20093
+ if (message.lastAttemptTime != null && Object.hasOwnProperty.call(message, "lastAttemptTime"))
20094
+ $root.google.protobuf.Timestamp.encode(message.lastAttemptTime, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim();
20095
+ if (message.state != null && Object.hasOwnProperty.call(message, "state"))
20096
+ writer.uint32(/* id 2, wireType 0 =*/16).int32(message.state);
20097
+ if (message.error != null && Object.hasOwnProperty.call(message, "error"))
20098
+ writer.uint32(/* id 3, wireType 2 =*/26).string(message.error);
20099
+ return writer;
20100
+ };
20101
+
20102
+ /**
20103
+ * Encodes the specified VulnerabilityAttestation message, length delimited. Does not implicitly {@link grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.verify|verify} messages.
20104
+ * @function encodeDelimited
20105
+ * @memberof grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation
20106
+ * @static
20107
+ * @param {grafeas.v1.DiscoveryOccurrence.IVulnerabilityAttestation} message VulnerabilityAttestation message or plain object to encode
20108
+ * @param {$protobuf.Writer} [writer] Writer to encode to
20109
+ * @returns {$protobuf.Writer} Writer
20110
+ */
20111
+ VulnerabilityAttestation.encodeDelimited = function encodeDelimited(message, writer) {
20112
+ return this.encode(message, writer).ldelim();
20113
+ };
20114
+
20115
+ /**
20116
+ * Decodes a VulnerabilityAttestation message from the specified reader or buffer.
20117
+ * @function decode
20118
+ * @memberof grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation
20119
+ * @static
20120
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
20121
+ * @param {number} [length] Message length if known beforehand
20122
+ * @returns {grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation} VulnerabilityAttestation
20123
+ * @throws {Error} If the payload is not a reader or valid buffer
20124
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
20125
+ */
20126
+ VulnerabilityAttestation.decode = function decode(reader, length) {
20127
+ if (!(reader instanceof $Reader))
20128
+ reader = $Reader.create(reader);
20129
+ var end = length === undefined ? reader.len : reader.pos + length, message = new $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation();
20130
+ while (reader.pos < end) {
20131
+ var tag = reader.uint32();
20132
+ switch (tag >>> 3) {
20133
+ case 1: {
20134
+ message.lastAttemptTime = $root.google.protobuf.Timestamp.decode(reader, reader.uint32());
20135
+ break;
20136
+ }
20137
+ case 2: {
20138
+ message.state = reader.int32();
20139
+ break;
20140
+ }
20141
+ case 3: {
20142
+ message.error = reader.string();
20143
+ break;
20144
+ }
20145
+ default:
20146
+ reader.skipType(tag & 7);
20147
+ break;
20148
+ }
20149
+ }
20150
+ return message;
20151
+ };
20152
+
20153
+ /**
20154
+ * Decodes a VulnerabilityAttestation message from the specified reader or buffer, length delimited.
20155
+ * @function decodeDelimited
20156
+ * @memberof grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation
20157
+ * @static
20158
+ * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from
20159
+ * @returns {grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation} VulnerabilityAttestation
20160
+ * @throws {Error} If the payload is not a reader or valid buffer
20161
+ * @throws {$protobuf.util.ProtocolError} If required fields are missing
20162
+ */
20163
+ VulnerabilityAttestation.decodeDelimited = function decodeDelimited(reader) {
20164
+ if (!(reader instanceof $Reader))
20165
+ reader = new $Reader(reader);
20166
+ return this.decode(reader, reader.uint32());
20167
+ };
20168
+
20169
+ /**
20170
+ * Verifies a VulnerabilityAttestation message.
20171
+ * @function verify
20172
+ * @memberof grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation
20173
+ * @static
20174
+ * @param {Object.<string,*>} message Plain object to verify
20175
+ * @returns {string|null} `null` if valid, otherwise the reason why it is not
20176
+ */
20177
+ VulnerabilityAttestation.verify = function verify(message) {
20178
+ if (typeof message !== "object" || message === null)
20179
+ return "object expected";
20180
+ if (message.lastAttemptTime != null && message.hasOwnProperty("lastAttemptTime")) {
20181
+ var error = $root.google.protobuf.Timestamp.verify(message.lastAttemptTime);
20182
+ if (error)
20183
+ return "lastAttemptTime." + error;
20184
+ }
20185
+ if (message.state != null && message.hasOwnProperty("state"))
20186
+ switch (message.state) {
20187
+ default:
20188
+ return "state: enum value expected";
20189
+ case 0:
20190
+ case 1:
20191
+ case 2:
20192
+ break;
20193
+ }
20194
+ if (message.error != null && message.hasOwnProperty("error"))
20195
+ if (!$util.isString(message.error))
20196
+ return "error: string expected";
20197
+ return null;
20198
+ };
20199
+
20200
+ /**
20201
+ * Creates a VulnerabilityAttestation message from a plain object. Also converts values to their respective internal types.
20202
+ * @function fromObject
20203
+ * @memberof grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation
20204
+ * @static
20205
+ * @param {Object.<string,*>} object Plain object
20206
+ * @returns {grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation} VulnerabilityAttestation
20207
+ */
20208
+ VulnerabilityAttestation.fromObject = function fromObject(object) {
20209
+ if (object instanceof $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation)
20210
+ return object;
20211
+ var message = new $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation();
20212
+ if (object.lastAttemptTime != null) {
20213
+ if (typeof object.lastAttemptTime !== "object")
20214
+ throw TypeError(".grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.lastAttemptTime: object expected");
20215
+ message.lastAttemptTime = $root.google.protobuf.Timestamp.fromObject(object.lastAttemptTime);
20216
+ }
20217
+ switch (object.state) {
20218
+ default:
20219
+ if (typeof object.state === "number") {
20220
+ message.state = object.state;
20221
+ break;
20222
+ }
20223
+ break;
20224
+ case "VULNERABILITY_ATTESTATION_STATE_UNSPECIFIED":
20225
+ case 0:
20226
+ message.state = 0;
20227
+ break;
20228
+ case "SUCCESS":
20229
+ case 1:
20230
+ message.state = 1;
20231
+ break;
20232
+ case "FAILURE":
20233
+ case 2:
20234
+ message.state = 2;
20235
+ break;
20236
+ }
20237
+ if (object.error != null)
20238
+ message.error = String(object.error);
20239
+ return message;
20240
+ };
20241
+
20242
+ /**
20243
+ * Creates a plain object from a VulnerabilityAttestation message. Also converts values to other types if specified.
20244
+ * @function toObject
20245
+ * @memberof grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation
20246
+ * @static
20247
+ * @param {grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation} message VulnerabilityAttestation
20248
+ * @param {$protobuf.IConversionOptions} [options] Conversion options
20249
+ * @returns {Object.<string,*>} Plain object
20250
+ */
20251
+ VulnerabilityAttestation.toObject = function toObject(message, options) {
20252
+ if (!options)
20253
+ options = {};
20254
+ var object = {};
20255
+ if (options.defaults) {
20256
+ object.lastAttemptTime = null;
20257
+ object.state = options.enums === String ? "VULNERABILITY_ATTESTATION_STATE_UNSPECIFIED" : 0;
20258
+ object.error = "";
20259
+ }
20260
+ if (message.lastAttemptTime != null && message.hasOwnProperty("lastAttemptTime"))
20261
+ object.lastAttemptTime = $root.google.protobuf.Timestamp.toObject(message.lastAttemptTime, options);
20262
+ if (message.state != null && message.hasOwnProperty("state"))
20263
+ object.state = options.enums === String ? $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.VulnerabilityAttestationState[message.state] === undefined ? message.state : $root.grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.VulnerabilityAttestationState[message.state] : message.state;
20264
+ if (message.error != null && message.hasOwnProperty("error"))
20265
+ object.error = message.error;
20266
+ return object;
20267
+ };
20268
+
20269
+ /**
20270
+ * Converts this VulnerabilityAttestation to JSON.
20271
+ * @function toJSON
20272
+ * @memberof grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation
20273
+ * @instance
20274
+ * @returns {Object.<string,*>} JSON object
20275
+ */
20276
+ VulnerabilityAttestation.prototype.toJSON = function toJSON() {
20277
+ return this.constructor.toObject(this, $protobuf.util.toJSONOptions);
20278
+ };
20279
+
20280
+ /**
20281
+ * Gets the default type url for VulnerabilityAttestation
20282
+ * @function getTypeUrl
20283
+ * @memberof grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation
20284
+ * @static
20285
+ * @param {string} [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com")
20286
+ * @returns {string} The default type url
20287
+ */
20288
+ VulnerabilityAttestation.getTypeUrl = function getTypeUrl(typeUrlPrefix) {
20289
+ if (typeUrlPrefix === undefined) {
20290
+ typeUrlPrefix = "type.googleapis.com";
20291
+ }
20292
+ return typeUrlPrefix + "/grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation";
20293
+ };
20294
+
20295
+ /**
20296
+ * VulnerabilityAttestationState enum.
20297
+ * @name grafeas.v1.DiscoveryOccurrence.VulnerabilityAttestation.VulnerabilityAttestationState
20298
+ * @enum {number}
20299
+ * @property {number} VULNERABILITY_ATTESTATION_STATE_UNSPECIFIED=0 VULNERABILITY_ATTESTATION_STATE_UNSPECIFIED value
20300
+ * @property {number} SUCCESS=1 SUCCESS value
20301
+ * @property {number} FAILURE=2 FAILURE value
20302
+ */
20303
+ VulnerabilityAttestation.VulnerabilityAttestationState = (function() {
20304
+ var valuesById = {}, values = Object.create(valuesById);
20305
+ values[valuesById[0] = "VULNERABILITY_ATTESTATION_STATE_UNSPECIFIED"] = 0;
20306
+ values[valuesById[1] = "SUCCESS"] = 1;
20307
+ values[valuesById[2] = "FAILURE"] = 2;
20308
+ return values;
20309
+ })();
20310
+
20311
+ return VulnerabilityAttestation;
20312
+ })();
20313
+
19962
20314
  return DiscoveryOccurrence;
19963
20315
  })();
19964
20316
 
@@ -1114,6 +1114,10 @@
1114
1114
  "nonComplianceReason": {
1115
1115
  "type": "string",
1116
1116
  "id": 3
1117
+ },
1118
+ "version": {
1119
+ "type": "grafeas.v1.ComplianceVersion",
1120
+ "id": 4
1117
1121
  }
1118
1122
  }
1119
1123
  },
@@ -1448,6 +1452,10 @@
1448
1452
  "sbomStatus": {
1449
1453
  "type": "SBOMStatus",
1450
1454
  "id": 9
1455
+ },
1456
+ "vulnerabilityAttestation": {
1457
+ "type": "VulnerabilityAttestation",
1458
+ "id": 10
1451
1459
  }
1452
1460
  },
1453
1461
  "nested": {
@@ -1501,6 +1509,31 @@
1501
1509
  }
1502
1510
  }
1503
1511
  }
1512
+ },
1513
+ "VulnerabilityAttestation": {
1514
+ "fields": {
1515
+ "lastAttemptTime": {
1516
+ "type": "google.protobuf.Timestamp",
1517
+ "id": 1
1518
+ },
1519
+ "state": {
1520
+ "type": "VulnerabilityAttestationState",
1521
+ "id": 2
1522
+ },
1523
+ "error": {
1524
+ "type": "string",
1525
+ "id": 3
1526
+ }
1527
+ },
1528
+ "nested": {
1529
+ "VulnerabilityAttestationState": {
1530
+ "values": {
1531
+ "VULNERABILITY_ATTESTATION_STATE_UNSPECIFIED": 0,
1532
+ "SUCCESS": 1,
1533
+ "FAILURE": 2
1534
+ }
1535
+ }
1536
+ }
1504
1537
  }
1505
1538
  }
1506
1539
  },
@@ -1595,12 +1628,16 @@
1595
1628
  "responseType": "google.protobuf.Empty",
1596
1629
  "options": {
1597
1630
  "(google.api.http).delete": "/v1/{name=projects/*/occurrences/*}",
1631
+ "(google.api.http).additional_bindings.delete": "/v1/{name=projects/*/locations/*/occurrences/*}",
1598
1632
  "(google.api.method_signature)": "name"
1599
1633
  },
1600
1634
  "parsedOptions": [
1601
1635
  {
1602
1636
  "(google.api.http)": {
1603
- "delete": "/v1/{name=projects/*/occurrences/*}"
1637
+ "delete": "/v1/{name=projects/*/occurrences/*}",
1638
+ "additional_bindings": {
1639
+ "delete": "/v1/{name=projects/*/locations/*/occurrences/*}"
1640
+ }
1604
1641
  }
1605
1642
  },
1606
1643
  {
@@ -1614,13 +1651,19 @@
1614
1651
  "options": {
1615
1652
  "(google.api.http).post": "/v1/{parent=projects/*}/occurrences",
1616
1653
  "(google.api.http).body": "occurrence",
1654
+ "(google.api.http).additional_bindings.post": "/v1/{parent=projects/*/locations/*}/occurrences",
1655
+ "(google.api.http).additional_bindings.body": "occurrence",
1617
1656
  "(google.api.method_signature)": "parent,occurrence"
1618
1657
  },
1619
1658
  "parsedOptions": [
1620
1659
  {
1621
1660
  "(google.api.http)": {
1622
1661
  "post": "/v1/{parent=projects/*}/occurrences",
1623
- "body": "occurrence"
1662
+ "body": "occurrence",
1663
+ "additional_bindings": {
1664
+ "post": "/v1/{parent=projects/*/locations/*}/occurrences",
1665
+ "body": "occurrence"
1666
+ }
1624
1667
  }
1625
1668
  },
1626
1669
  {
@@ -1634,13 +1677,19 @@
1634
1677
  "options": {
1635
1678
  "(google.api.http).post": "/v1/{parent=projects/*}/occurrences:batchCreate",
1636
1679
  "(google.api.http).body": "*",
1680
+ "(google.api.http).additional_bindings.post": "/v1/{parent=projects/*/locations/*}/occurrences:batchCreate",
1681
+ "(google.api.http).additional_bindings.body": "*",
1637
1682
  "(google.api.method_signature)": "parent,occurrences"
1638
1683
  },
1639
1684
  "parsedOptions": [
1640
1685
  {
1641
1686
  "(google.api.http)": {
1642
1687
  "post": "/v1/{parent=projects/*}/occurrences:batchCreate",
1643
- "body": "*"
1688
+ "body": "*",
1689
+ "additional_bindings": {
1690
+ "post": "/v1/{parent=projects/*/locations/*}/occurrences:batchCreate",
1691
+ "body": "*"
1692
+ }
1644
1693
  }
1645
1694
  },
1646
1695
  {
@@ -1654,13 +1703,19 @@
1654
1703
  "options": {
1655
1704
  "(google.api.http).patch": "/v1/{name=projects/*/occurrences/*}",
1656
1705
  "(google.api.http).body": "occurrence",
1706
+ "(google.api.http).additional_bindings.patch": "/v1/{name=projects/*/locations/*/occurrences/*}",
1707
+ "(google.api.http).additional_bindings.body": "occurrence",
1657
1708
  "(google.api.method_signature)": "name,occurrence,update_mask"
1658
1709
  },
1659
1710
  "parsedOptions": [
1660
1711
  {
1661
1712
  "(google.api.http)": {
1662
1713
  "patch": "/v1/{name=projects/*/occurrences/*}",
1663
- "body": "occurrence"
1714
+ "body": "occurrence",
1715
+ "additional_bindings": {
1716
+ "patch": "/v1/{name=projects/*/locations/*/occurrences/*}",
1717
+ "body": "occurrence"
1718
+ }
1664
1719
  }
1665
1720
  },
1666
1721
  {
@@ -1739,12 +1794,16 @@
1739
1794
  "responseType": "google.protobuf.Empty",
1740
1795
  "options": {
1741
1796
  "(google.api.http).delete": "/v1/{name=projects/*/notes/*}",
1797
+ "(google.api.http).additional_bindings.delete": "/v1/{name=projects/*/locations/*/notes/*}",
1742
1798
  "(google.api.method_signature)": "name"
1743
1799
  },
1744
1800
  "parsedOptions": [
1745
1801
  {
1746
1802
  "(google.api.http)": {
1747
- "delete": "/v1/{name=projects/*/notes/*}"
1803
+ "delete": "/v1/{name=projects/*/notes/*}",
1804
+ "additional_bindings": {
1805
+ "delete": "/v1/{name=projects/*/locations/*/notes/*}"
1806
+ }
1748
1807
  }
1749
1808
  },
1750
1809
  {
@@ -1758,13 +1817,19 @@
1758
1817
  "options": {
1759
1818
  "(google.api.http).post": "/v1/{parent=projects/*}/notes",
1760
1819
  "(google.api.http).body": "note",
1820
+ "(google.api.http).additional_bindings.post": "/v1/{parent=projects/*/locations/*}/notes",
1821
+ "(google.api.http).additional_bindings.body": "note",
1761
1822
  "(google.api.method_signature)": "parent,note_id,note"
1762
1823
  },
1763
1824
  "parsedOptions": [
1764
1825
  {
1765
1826
  "(google.api.http)": {
1766
1827
  "post": "/v1/{parent=projects/*}/notes",
1767
- "body": "note"
1828
+ "body": "note",
1829
+ "additional_bindings": {
1830
+ "post": "/v1/{parent=projects/*/locations/*}/notes",
1831
+ "body": "note"
1832
+ }
1768
1833
  }
1769
1834
  },
1770
1835
  {
@@ -1778,13 +1843,19 @@
1778
1843
  "options": {
1779
1844
  "(google.api.http).post": "/v1/{parent=projects/*}/notes:batchCreate",
1780
1845
  "(google.api.http).body": "*",
1846
+ "(google.api.http).additional_bindings.post": "/v1/{parent=projects/*/locations/*}/notes:batchCreate",
1847
+ "(google.api.http).additional_bindings.body": "*",
1781
1848
  "(google.api.method_signature)": "parent,notes"
1782
1849
  },
1783
1850
  "parsedOptions": [
1784
1851
  {
1785
1852
  "(google.api.http)": {
1786
1853
  "post": "/v1/{parent=projects/*}/notes:batchCreate",
1787
- "body": "*"
1854
+ "body": "*",
1855
+ "additional_bindings": {
1856
+ "post": "/v1/{parent=projects/*/locations/*}/notes:batchCreate",
1857
+ "body": "*"
1858
+ }
1788
1859
  }
1789
1860
  },
1790
1861
  {
@@ -1798,13 +1869,19 @@
1798
1869
  "options": {
1799
1870
  "(google.api.http).patch": "/v1/{name=projects/*/notes/*}",
1800
1871
  "(google.api.http).body": "note",
1872
+ "(google.api.http).additional_bindings.patch": "/v1/{name=projects/*/locations/*/notes/*}",
1873
+ "(google.api.http).additional_bindings.body": "note",
1801
1874
  "(google.api.method_signature)": "name,note,update_mask"
1802
1875
  },
1803
1876
  "parsedOptions": [
1804
1877
  {
1805
1878
  "(google.api.http)": {
1806
1879
  "patch": "/v1/{name=projects/*/notes/*}",
1807
- "body": "note"
1880
+ "body": "note",
1881
+ "additional_bindings": {
1882
+ "patch": "/v1/{name=projects/*/locations/*/notes/*}",
1883
+ "body": "note"
1884
+ }
1808
1885
  }
1809
1886
  },
1810
1887
  {
@@ -5200,7 +5277,7 @@
5200
5277
  "v1": {
5201
5278
  "options": {
5202
5279
  "csharp_namespace": "Google.Cloud.DevTools.ContainerAnalysis.V1",
5203
- "go_package": "google.golang.org/genproto/googleapis/devtools/containeranalysis/v1;containeranalysis",
5280
+ "go_package": "cloud.google.com/go/containeranalysis/apiv1/containeranalysispb;containeranalysispb",
5204
5281
  "java_multiple_files": true,
5205
5282
  "java_package": "com.google.containeranalysis.v1",
5206
5283
  "objc_class_prefix": "GCA",
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import type * as gax from 'google-gax';
3
2
  import type { Callback, CallOptions, Descriptors, ClientOptions, PaginationCallback } from 'google-gax';
4
3
  import { Transform } from 'stream';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@google-cloud/containeranalysis",
3
- "version": "5.4.0",
3
+ "version": "5.6.0",
4
4
  "description": "Containeranalysis client for Node.js",
5
5
  "repository": {
6
6
  "type": "git",
@@ -64,7 +64,7 @@
64
64
  "long": "^5.2.3",
65
65
  "mocha": "^10.2.0",
66
66
  "pack-n-play": "^2.0.0",
67
- "sinon": "^17.0.0",
67
+ "sinon": "^18.0.0",
68
68
  "typescript": "^5.1.6"
69
69
  },
70
70
  "engines": {