aws-cdk 2.1118.2 → 2.1118.3

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/lib/index.js CHANGED
@@ -216,6 +216,8 @@ var init_metadata_schema = __esm({
216
216
  ArtifactMetadataEntryType7["LOGICAL_ID"] = "aws:cdk:logicalId";
217
217
  ArtifactMetadataEntryType7["STACK_TAGS"] = "aws:cdk:stack-tags";
218
218
  ArtifactMetadataEntryType7["DO_NOT_REFACTOR"] = "aws:cdk:do-not-refactor";
219
+ ArtifactMetadataEntryType7["CREATION_STACK"] = "aws:cdk:creationStack";
220
+ ArtifactMetadataEntryType7["PROPERTY_ASSIGNMENT"] = "aws:cdk:propertyAssignment";
219
221
  return ArtifactMetadataEntryType7;
220
222
  })(ArtifactMetadataEntryType || {});
221
223
  }
@@ -3599,7 +3601,7 @@ var require_semver2 = __commonJS({
3599
3601
  // ../@aws-cdk/cloud-assembly-schema/cli-version.json
3600
3602
  var require_cli_version = __commonJS({
3601
3603
  "../@aws-cdk/cloud-assembly-schema/cli-version.json"(exports2, module2) {
3602
- module2.exports = { version: "2.1118.2" };
3604
+ module2.exports = { version: "2.1118.3" };
3603
3605
  }
3604
3606
  });
3605
3607
 
@@ -4024,12 +4026,22 @@ have a unique display name. (Default - no display name)`,
4024
4026
  {
4025
4027
  $ref: "#/definitions/ContainerImageAssetMetadataEntry"
4026
4028
  },
4029
+ {
4030
+ $ref: "#/definitions/PropertyMutationMetadataEntry"
4031
+ },
4027
4032
  {
4028
4033
  type: "array",
4029
4034
  items: {
4030
4035
  $ref: "#/definitions/Tag"
4031
4036
  }
4032
4037
  },
4038
+ {
4039
+ description: "Type of creation stack data",
4040
+ type: "array",
4041
+ items: {
4042
+ type: "string"
4043
+ }
4044
+ },
4033
4045
  {
4034
4046
  type: [
4035
4047
  "string",
@@ -4225,6 +4237,27 @@ have a unique display name. (Default - no display name)`,
4225
4237
  "type"
4226
4238
  ]
4227
4239
  },
4240
+ PropertyMutationMetadataEntry: {
4241
+ description: "Metadata type of a PropertyMutation",
4242
+ type: "object",
4243
+ properties: {
4244
+ propertyName: {
4245
+ description: "Name of the property",
4246
+ type: "string"
4247
+ },
4248
+ stackTrace: {
4249
+ description: "Stack trace of the mutation",
4250
+ type: "array",
4251
+ items: {
4252
+ type: "string"
4253
+ }
4254
+ }
4255
+ },
4256
+ required: [
4257
+ "propertyName",
4258
+ "stackTrace"
4259
+ ]
4260
+ },
4228
4261
  Tag: {
4229
4262
  description: "Metadata Entry spec for stack tag.",
4230
4263
  type: "object",
@@ -5605,7 +5638,7 @@ var require_integ_schema = __commonJS({
5605
5638
  var require_version = __commonJS({
5606
5639
  "../@aws-cdk/cloud-assembly-schema/schema/version.json"(exports2, module2) {
5607
5640
  module2.exports = {
5608
- schemaHash: "25d8ad154190878ec8a9e970fa21a0e182fa834304913d43be86f9b0613271f5",
5641
+ schemaHash: "794dc834654646b4a60c6d8ea46ed0245a71de33e598289f6922082951768d04",
5609
5642
  $comment: "Do not hold back the version on additions: jsonschema validation of the manifest by the consumer will trigger errors on unexpected fields.",
5610
5643
  revision: 53
5611
5644
  };
@@ -315350,12 +315383,19 @@ function resourceMoves(before, after, direction = "direct", ignoreModifications
315350
315383
  const digestsAfter = resourceDigests(after, direction);
315351
315384
  if (!(ignoreModifications || isomorphic(digestsBefore, digestsAfter))) {
315352
315385
  const message2 = ["A refactor operation cannot add, remove or update resources. Only resource moves and renames are allowed."];
315353
- const difference2 = /* @__PURE__ */ __name((a6, b6) => {
315354
- return Array.from(setDiff(new Set(Object.keys(a6)), new Set(Object.keys(b6)))).flatMap((k6) => a6[k6]).map((x6) => ` - ${x6.toPath()}`).sort().join("\n");
315355
- }, "difference");
315386
+ const locationsForDigests = /* @__PURE__ */ __name((a6, b6) => {
315387
+ return Array.from(setDiff(new Set(Object.keys(a6)), new Set(Object.keys(b6)))).flatMap((k6) => a6[k6]);
315388
+ }, "locationsForDigests");
315389
+ const formatList = /* @__PURE__ */ __name((locs, icon) => locs.map((x6) => ` [${icon}] ${x6.toPath()}`).sort().join("\n"), "formatList");
315356
315390
  const stackNames = /* @__PURE__ */ __name((stacks) => stacks.length === 0 ? "NONE" : stacks.map((s6) => s6.stackName).sort().join(", "), "stackNames");
315357
- const onlyDeployed = difference2(digestsBefore, digestsAfter);
315358
- const onlyLocal = difference2(digestsAfter, digestsBefore);
315391
+ const onlyDeployedLocs = locationsForDigests(digestsBefore, digestsAfter);
315392
+ const onlyLocalLocs = locationsForDigests(digestsAfter, digestsBefore);
315393
+ const onlyDeployedPaths = new Set(onlyDeployedLocs.map((l6) => l6.toPath()));
315394
+ const onlyLocalPaths = new Set(onlyLocalLocs.map((l6) => l6.toPath()));
315395
+ const differentPaths = new Set(Array.from(onlyDeployedPaths).filter((p6) => onlyLocalPaths.has(p6)));
315396
+ const onlyDeployed = formatList(onlyDeployedLocs.filter((l6) => !differentPaths.has(l6.toPath())), "-");
315397
+ const onlyLocal = formatList(onlyLocalLocs.filter((l6) => !differentPaths.has(l6.toPath())), "+");
315398
+ const different = formatList([...onlyDeployedLocs, ...onlyLocalLocs].filter((l6) => differentPaths.has(l6.toPath())), "~");
315359
315399
  if (onlyDeployed.length > 0) {
315360
315400
  message2.push(`The following resources are present only in the AWS environment:
315361
315401
  ${onlyDeployed}`);
@@ -315364,6 +315404,11 @@ ${onlyDeployed}`);
315364
315404
  message2.push(`
315365
315405
  The following resources are present only in your CDK application:
315366
315406
  ${onlyLocal}`);
315407
+ }
315408
+ if (different.length > 0) {
315409
+ message2.push(`
315410
+ The following resources are different in your CDK application and the AWS environment:
315411
+ ${different}`);
315367
315412
  }
315368
315413
  message2.push("");
315369
315414
  message2.push("The following stacks were used in the comparison:");
@@ -316952,11 +316997,6 @@ var init_toolkit = __esm({
316952
316997
  deploymentMethod: options.deploymentMethod,
316953
316998
  cleanupOnNoOp: isExecutingChangeSetDeployment(options.deploymentMethod)
316954
316999
  }) : void 0;
316955
- if (prepareResult?.noOp === true) {
316956
- await ioHelper.notify(IO.CDK_TOOLKIT_I5900.msg(chalk25.green(`
316957
- \u2705 ${stack.displayName} (no changes)`), prepareResult));
316958
- return;
316959
- }
316960
317000
  const formatter = new DiffFormatter({
316961
317001
  templateInfo: {
316962
317002
  oldTemplate: currentTemplate,
@@ -316994,7 +317034,7 @@ Do you wish to deploy these changes`;
316994
317034
  deploySpan.incCounter("resources", resourceCount);
316995
317035
  let deployDuration;
316996
317036
  try {
316997
- const prepareIsFinal = isNonExecutingChangeSetDeployment(options.deploymentMethod);
317037
+ const prepareIsFinal = prepareResult && (prepareResult.noOp || isNonExecutingChangeSetDeployment(options.deploymentMethod));
316998
317038
  let deployResult = prepareIsFinal ? prepareResult : void 0;
316999
317039
  let rollback = options.rollback;
317000
317040
  let iteration = 0;
@@ -317075,10 +317115,9 @@ ${deployResult.stackArn}`));
317075
317115
  hierarchicalId: stack.hierarchicalId
317076
317116
  });
317077
317117
  } catch (e6) {
317078
- throw new ToolkitError(
317079
- "DeployStackFailed",
317080
- [`\u274C ${chalk25.bold(stack.stackName)} failed:`, ...e6.name ? [`${e6.name}:`] : [], e6.message].join(" ")
317081
- );
317118
+ const code = ToolkitError.isToolkitError(e6) ? e6.name : "DeployStackFailed";
317119
+ const newMessage = [`\u274C ${chalk25.bold(stack.stackName)} failed:`, ...e6.name ? [`${e6.name}:`] : [], e6.message].join(" ");
317120
+ throw new ToolkitError(code, newMessage);
317082
317121
  } finally {
317083
317122
  if (options.traceLogs) {
317084
317123
  const cloudWatchLogMonitor = options.cloudWatchLogMonitor ?? new CloudWatchLogEventMonitor({ ioHelper });
@@ -324603,10 +324642,6 @@ var init_cdk_toolkit = __esm({
324603
324642
  deploymentMethod: options.deploymentMethod,
324604
324643
  cleanupOnNoOp: isExecutingChangeSetDeployment(options.deploymentMethod)
324605
324644
  }) : void 0;
324606
- if (prepareResult?.noOp === true) {
324607
- await this.ioHost.asIoHelper().defaults.info(" \u2705 %s (no changes)", chalk31.bold(stack.displayName));
324608
- return;
324609
- }
324610
324645
  if (requireApproval !== import_cloud_assembly_schema7.RequireApproval.NEVER) {
324611
324646
  const currentTemplate = await this.props.deployments.readCurrentTemplate(stack);
324612
324647
  const formatter = new DiffFormatter({
@@ -324648,7 +324683,7 @@ var init_cdk_toolkit = __esm({
324648
324683
  let error4;
324649
324684
  let elapsedDeployTime = 0;
324650
324685
  try {
324651
- const prepareIsFinal = prepareResult && isNonExecutingChangeSetDeployment(options.deploymentMethod);
324686
+ const prepareIsFinal = prepareResult && (prepareResult.noOp || isNonExecutingChangeSetDeployment(options.deploymentMethod));
324652
324687
  let deployResult = prepareIsFinal ? prepareResult : void 0;
324653
324688
  let rollback = options.rollback;
324654
324689
  let iteration = 0;
@@ -324725,10 +324760,9 @@ var init_cdk_toolkit = __esm({
324725
324760
  await this.ioHost.asIoHelper().defaults.info("Stack ARN:");
324726
324761
  await this.ioHost.asIoHelper().defaults.result(deployResult.stackArn);
324727
324762
  } catch (e6) {
324728
- const wrappedError = new import_toolkit_lib18.ToolkitError(
324729
- "DeployFailed",
324730
- [`\u274C ${chalk31.bold(stack.stackName)} failed:`, ...e6.name ? [`${e6.name}:`] : [], formatErrorMessage(e6)].join(" ")
324731
- );
324763
+ const code = import_toolkit_lib18.ToolkitError.isToolkitError(e6) ? e6.name : "DeployStackFailed";
324764
+ const newMessage = [`\u274C ${chalk31.bold(stack.stackName)} failed:`, ...e6.name ? [`${e6.name}:`] : [], e6.message].join(" ");
324765
+ const wrappedError = new import_toolkit_lib18.ToolkitError(code, newMessage);
324732
324766
  error4 = {
324733
324767
  name: cdkCliErrorName(wrappedError)
324734
324768
  };
@@ -338418,6 +338452,61 @@ Closing reason: ${this._closingError.stack}`;
338418
338452
  }
338419
338453
  });
338420
338454
 
338455
+ // ../../node_modules/basic-ftp/dist/netUtils.js
338456
+ var require_netUtils = __commonJS({
338457
+ "../../node_modules/basic-ftp/dist/netUtils.js"(exports2) {
338458
+ "use strict";
338459
+ Object.defineProperty(exports2, "__esModule", { value: true });
338460
+ exports2.describeTLS = describeTLS;
338461
+ exports2.describeAddress = describeAddress;
338462
+ exports2.upgradeSocket = upgradeSocket;
338463
+ exports2.ipIsPrivateV4Address = ipIsPrivateV4Address;
338464
+ var tls_1 = require("tls");
338465
+ function describeTLS(socket) {
338466
+ if (socket instanceof tls_1.TLSSocket) {
338467
+ const protocol = socket.getProtocol();
338468
+ return protocol ? protocol : "Server socket or disconnected client socket";
338469
+ }
338470
+ return "No encryption";
338471
+ }
338472
+ __name(describeTLS, "describeTLS");
338473
+ function describeAddress(socket) {
338474
+ if (socket.remoteFamily === "IPv6") {
338475
+ return `[${socket.remoteAddress}]:${socket.remotePort}`;
338476
+ }
338477
+ return `${socket.remoteAddress}:${socket.remotePort}`;
338478
+ }
338479
+ __name(describeAddress, "describeAddress");
338480
+ function upgradeSocket(socket, options) {
338481
+ return new Promise((resolve15, reject) => {
338482
+ const tlsOptions = Object.assign({}, options, {
338483
+ socket
338484
+ });
338485
+ const tlsSocket = (0, tls_1.connect)(tlsOptions, () => {
338486
+ const expectCertificate = tlsOptions.rejectUnauthorized !== false;
338487
+ if (expectCertificate && !tlsSocket.authorized) {
338488
+ reject(tlsSocket.authorizationError);
338489
+ } else {
338490
+ tlsSocket.removeAllListeners("error");
338491
+ resolve15(tlsSocket);
338492
+ }
338493
+ }).once("error", (error4) => {
338494
+ reject(error4);
338495
+ });
338496
+ });
338497
+ }
338498
+ __name(upgradeSocket, "upgradeSocket");
338499
+ function ipIsPrivateV4Address(ip = "") {
338500
+ if (ip.startsWith("::ffff:")) {
338501
+ ip = ip.substr(7);
338502
+ }
338503
+ const octets = ip.split(".").map((o6) => parseInt(o6, 10));
338504
+ return octets[0] === 10 || octets[0] === 172 && octets[1] >= 16 && octets[1] <= 31 || octets[0] === 192 && octets[1] === 168 || ip === "127.0.0.1";
338505
+ }
338506
+ __name(ipIsPrivateV4Address, "ipIsPrivateV4Address");
338507
+ }
338508
+ });
338509
+
338421
338510
  // ../../node_modules/basic-ftp/dist/FileInfo.js
338422
338511
  var require_FileInfo = __commonJS({
338423
338512
  "../../node_modules/basic-ftp/dist/FileInfo.js"(exports2) {
@@ -338954,81 +339043,33 @@ var require_StringWriter = __commonJS({
338954
339043
  static {
338955
339044
  __name(this, "StringWriter");
338956
339045
  }
338957
- constructor() {
338958
- super(...arguments);
338959
- this.buf = Buffer.alloc(0);
339046
+ constructor(maxByteLength = 1 * 1024 * 1024) {
339047
+ super();
339048
+ this.maxByteLength = maxByteLength;
339049
+ this.byteLength = 0;
339050
+ this.bufs = [];
338960
339051
  }
338961
339052
  _write(chunk, _2, callback) {
338962
- if (chunk instanceof Buffer) {
338963
- this.buf = Buffer.concat([this.buf, chunk]);
338964
- callback(null);
338965
- } else {
338966
- callback(new Error("StringWriter expects chunks of type 'Buffer'."));
339053
+ if (!(chunk instanceof Buffer)) {
339054
+ callback(new Error("StringWriter: expects chunks of type 'Buffer'."));
339055
+ return;
339056
+ }
339057
+ if (this.byteLength + chunk.byteLength > this.maxByteLength) {
339058
+ callback(new Error(`StringWriter: Maximum bytes exceeded, maxByteLength=${this.maxByteLength}.`));
339059
+ return;
338967
339060
  }
339061
+ this.byteLength += chunk.byteLength;
339062
+ this.bufs.push(chunk);
339063
+ callback(null);
338968
339064
  }
338969
339065
  getText(encoding) {
338970
- return this.buf.toString(encoding);
339066
+ return Buffer.concat(this.bufs).toString(encoding);
338971
339067
  }
338972
339068
  };
338973
339069
  exports2.StringWriter = StringWriter;
338974
339070
  }
338975
339071
  });
338976
339072
 
338977
- // ../../node_modules/basic-ftp/dist/netUtils.js
338978
- var require_netUtils = __commonJS({
338979
- "../../node_modules/basic-ftp/dist/netUtils.js"(exports2) {
338980
- "use strict";
338981
- Object.defineProperty(exports2, "__esModule", { value: true });
338982
- exports2.describeTLS = describeTLS;
338983
- exports2.describeAddress = describeAddress;
338984
- exports2.upgradeSocket = upgradeSocket;
338985
- exports2.ipIsPrivateV4Address = ipIsPrivateV4Address;
338986
- var tls_1 = require("tls");
338987
- function describeTLS(socket) {
338988
- if (socket instanceof tls_1.TLSSocket) {
338989
- const protocol = socket.getProtocol();
338990
- return protocol ? protocol : "Server socket or disconnected client socket";
338991
- }
338992
- return "No encryption";
338993
- }
338994
- __name(describeTLS, "describeTLS");
338995
- function describeAddress(socket) {
338996
- if (socket.remoteFamily === "IPv6") {
338997
- return `[${socket.remoteAddress}]:${socket.remotePort}`;
338998
- }
338999
- return `${socket.remoteAddress}:${socket.remotePort}`;
339000
- }
339001
- __name(describeAddress, "describeAddress");
339002
- function upgradeSocket(socket, options) {
339003
- return new Promise((resolve15, reject) => {
339004
- const tlsOptions = Object.assign({}, options, {
339005
- socket
339006
- });
339007
- const tlsSocket = (0, tls_1.connect)(tlsOptions, () => {
339008
- const expectCertificate = tlsOptions.rejectUnauthorized !== false;
339009
- if (expectCertificate && !tlsSocket.authorized) {
339010
- reject(tlsSocket.authorizationError);
339011
- } else {
339012
- tlsSocket.removeAllListeners("error");
339013
- resolve15(tlsSocket);
339014
- }
339015
- }).once("error", (error4) => {
339016
- reject(error4);
339017
- });
339018
- });
339019
- }
339020
- __name(upgradeSocket, "upgradeSocket");
339021
- function ipIsPrivateV4Address(ip = "") {
339022
- if (ip.startsWith("::ffff:")) {
339023
- ip = ip.substr(7);
339024
- }
339025
- const octets = ip.split(".").map((o6) => parseInt(o6, 10));
339026
- return octets[0] === 10 || octets[0] === 172 && octets[1] >= 16 && octets[1] <= 31 || octets[0] === 192 && octets[1] === 168 || ip === "127.0.0.1";
339027
- }
339028
- __name(ipIsPrivateV4Address, "ipIsPrivateV4Address");
339029
- }
339030
- });
339031
-
339032
339073
  // ../../node_modules/basic-ftp/dist/transfer.js
339033
339074
  var require_transfer = __commonJS({
339034
339075
  "../../node_modules/basic-ftp/dist/transfer.js"(exports2) {
@@ -339304,13 +339345,13 @@ var require_Client = __commonJS({
339304
339345
  var tls_1 = require("tls");
339305
339346
  var util_1 = require("util");
339306
339347
  var FtpContext_1 = require_FtpContext();
339348
+ var netUtils_1 = require_netUtils();
339349
+ var parseControlResponse_1 = require_parseControlResponse();
339307
339350
  var parseList_1 = require_parseList();
339351
+ var parseListMLSD_1 = require_parseListMLSD();
339308
339352
  var ProgressTracker_1 = require_ProgressTracker();
339309
339353
  var StringWriter_1 = require_StringWriter();
339310
- var parseListMLSD_1 = require_parseListMLSD();
339311
- var netUtils_1 = require_netUtils();
339312
339354
  var transfer_1 = require_transfer();
339313
- var parseControlResponse_1 = require_parseControlResponse();
339314
339355
  var fsReadDir = (0, util_1.promisify)(fs_1.readdir);
339315
339356
  var fsMkDir = (0, util_1.promisify)(fs_1.mkdir);
339316
339357
  var fsStat = (0, util_1.promisify)(fs_1.stat);
@@ -339318,7 +339359,8 @@ var require_Client = __commonJS({
339318
339359
  var fsClose = (0, util_1.promisify)(fs_1.close);
339319
339360
  var fsUnlink = (0, util_1.promisify)(fs_1.unlink);
339320
339361
  var defaultClientOptions = {
339321
- allowSeparateTransferHost: true
339362
+ allowSeparateTransferHost: true,
339363
+ maxListingBytes: 40 * 1024 * 1024
339322
339364
  };
339323
339365
  var LIST_COMMANDS_DEFAULT = /* @__PURE__ */ __name(() => ["LIST -a", "LIST"], "LIST_COMMANDS_DEFAULT");
339324
339366
  var LIST_COMMANDS_MLSD = /* @__PURE__ */ __name(() => ["MLSD", "LIST -a", "LIST"], "LIST_COMMANDS_MLSD");
@@ -339331,13 +339373,15 @@ var require_Client = __commonJS({
339331
339373
  *
339332
339374
  * @param timeout Timeout in milliseconds, use 0 for no timeout. Optional, default is 30 seconds.
339333
339375
  */
339334
- constructor(timeout = 3e4, options = defaultClientOptions) {
339376
+ constructor(timeout = 3e4, userOptions = defaultClientOptions) {
339335
339377
  this.availableListCommands = LIST_COMMANDS_DEFAULT();
339378
+ const options = { ...defaultClientOptions, ...userOptions };
339336
339379
  this.ftp = new FtpContext_1.FTPContext(timeout);
339337
339380
  this.prepareTransfer = this._enterFirstCompatibleMode([
339338
339381
  transfer_1.enterPassiveModeIPv6,
339339
339382
  options.allowSeparateTransferHost ? transfer_1.enterPassiveModeIPv4 : transfer_1.enterPassiveModeIPv4_forceControlHostIP
339340
339383
  ]);
339384
+ this.options = options;
339341
339385
  this.parseList = parseList_1.parseList;
339342
339386
  this._progressTracker = new ProgressTracker_1.ProgressTracker();
339343
339387
  }
@@ -339774,7 +339818,7 @@ var require_Client = __commonJS({
339774
339818
  * @protected
339775
339819
  */
339776
339820
  async _requestListWithCommand(command) {
339777
- const buffer = new StringWriter_1.StringWriter();
339821
+ const buffer = new StringWriter_1.StringWriter(this.options.maxListingBytes);
339778
339822
  await (0, transfer_1.downloadTo)(buffer, {
339779
339823
  ftp: this.ftp,
339780
339824
  tracker: this._progressTracker,
package/package.json CHANGED
@@ -80,12 +80,12 @@
80
80
  "ts-mock-imports": "^1.3.19",
81
81
  "tsx": "^4.21.0",
82
82
  "typescript": "5.9",
83
- "@aws-cdk/cdk-assets-lib": "^1.4.3",
83
+ "@aws-cdk/cdk-assets-lib": "^1.4.4",
84
84
  "@aws-cdk/cloud-assembly-api": "2.2.2",
85
- "@aws-cdk/cloud-assembly-schema": ">=53.16.0",
85
+ "@aws-cdk/cloud-assembly-schema": ">=53.17.0",
86
86
  "@aws-cdk/cloudformation-diff": "2.187.1",
87
87
  "@aws-cdk/cx-api": "^2",
88
- "@aws-cdk/toolkit-lib": "^1.22.0",
88
+ "@aws-cdk/toolkit-lib": "^1.22.1",
89
89
  "@aws-sdk/client-appsync": "^3",
90
90
  "@aws-sdk/client-bedrock-agentcore-control": "^3",
91
91
  "@aws-sdk/client-cloudcontrol": "^3",
@@ -157,7 +157,7 @@
157
157
  "publishConfig": {
158
158
  "access": "public"
159
159
  },
160
- "version": "2.1118.2",
160
+ "version": "2.1118.3",
161
161
  "packageManager": "yarn@4.13.0",
162
162
  "types": "lib/index.d.ts",
163
163
  "exports": {