Release history
2026-10-16
- cast to DATE and TIMESTAMP in Athena (#1403)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 45 updates (#1402)
2026-10-14
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 47 updates (#1397)
- deps: bump actions/setup-node (#1394)
2026-10-13
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 42 updates (#1387)
- deps-dev: bump the npm-patch-and-minor group across 1 directory with 43 updates (#1386)
- deps-dev: bump the npm-patch-and-minor group across 1 directory with 45 updates (#1388)
2026-10-07
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 42 updates (#1380)
2026-10-06
- simulate flexible Scheduler time windows (#1378)
- honour abortSignal on intercepted sends (#1376)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 44 updates (#1377)
2026-10-05
- authorize index reads against the index ARN (#1373)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump eslint-plugin-unicorn from 73.0.0 to 74.0.0 (#1372)
- deps-dev: bump the npm-patch-and-minor group across 1 directory with 45 updates (#1371)
2026-10-04
- simulate Bot Control and the IP reputation lists (#1369)
- hold WAFv2 input Yulin cannot simulate (#1368)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps: bump pnpm/action-setup in the github-actions group (#1356)
- deps: bump the npm-patch-and-minor group across 1 directory with 56 updates (#1365)
2026-09-12
- flatten a split expression with UNNEST (#1354)
2026-09-11
- filter event source mapping records on FilterCriteria (#1349)
- run a schedule in the timezone it names (#1351)
- keep the scale a rounded Athena result was asked for (#1350)
- refuse a stream cascade that never settles (#1348)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 43 updates (#1345)
2026-09-10
- fail a Lambda invocation the clock cannot end (#1341)
2026-09-10
- keep a host AWS_PROFILE out of an invocation (#1338)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 44 updates (#1336)
2026-09-09
- refuse an ORDER BY aggregate over its alias (#1334)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 46 updates (#1333)
2026-09-08
- authorize a custom Resource’s provider invoke (#1330)
2026-09-07
- read the document client’s marshallOptions (#1327)
2026-09-07
- update a secret in place on a stack update (#1324)
2026-09-07
- settle a handler waiting on a running clock (#1321)
2026-09-07
- evaluate the IAM Null condition operator (#1317)
- supply dynamodb:Attributes to sim IAM (#1318)
2026-09-07
- supply dynamodb:LeadingKeys to sim IAM (#1313)
- match a ForAllValues condition with no key (#1310)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump eslint-plugin-jsdoc from 63.3.3 to 64.0.1 (#1312)
- deps-dev: bump the npm-patch-and-minor group across 1 directory with 41 updates (#1311)
2026-09-06
- inspect 16 KB of a WAF request body (#1306)
2026-09-06
- write HTTP API access logs from AccessLogSettings (#1303)
2026-09-05
- bisect a failing Lambda stream batch (#1299)
- record unsimulated event source mapping properties (#1298)
2026-09-05
- deliver exhausted Lambda stream batches to failure destinations (#1294)
2026-09-04
- supply SES FromAddress to IAM (#1291)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 43 updates (#1287)
2026-09-03
- record template Tags instead of refusing (#1283)
2026-09-03
- name CDK’s unresolved zone lookup (#1274)
- read iam:PermissionsBoundary on CreateRole (#1278)
- sim DynamoDB document transactions (#1275)
2026-09-03
- publish CDK assets as their own principal (#1266)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump eslint-plugin-unicorn from 72.0.0 to 73.0.0 (#1264)
- deps-dev: bump the npm-patch-and-minor group across 1 directory with 41 updates (#1263)
2026-09-02
- apply Function URL CORS configuration (#1241)
- capture Lambda output without printing it (#1246)
- create and execute CloudFormation change sets (#1234)
- expand SAM Auth and Cognito events (#1244)
- expand what a served S3 request can say (#1248)
- fail a query the Athena engine turns down (#1261)
- fill three CFN template language gaps (#1238)
- give a simulated Stack its own stack ID (#1240)
- honor stream mapping retry limits (#1243)
- keep a resource through replace or delete (#1247)
- project simulated Query and Scan reads (#1259)
- put Lambda timers on the simulated clock (#1251)
- raise S3 events a deployment causes (#1242)
- read Parquet objects in the Athena query engine (#1260)
- roll back a failed CloudFormation update (#1257)
- route bundled Lambda S3 calls to sim S3 (#1239)
- serve S3 user metadata as headers (#1255)
- simulate S3 Object tagging (#1250)
- simulate S3 storage classes (#1237)
- cloudfront: translate local viewer origins (#1235)
- cognito: pre-fill mapped claims by schema type (#1236)
- lambda: authorize destinations with execution role (#1220)
- refuse a missing key without s3:ListBucket (#1256)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 40 updates (#1245)
2026-09-01
- reject invalid DynamoDB GSI stack updates (#1214)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 44 updates (#1212)
2026-08-31
2026-08-31
- backup: create scheduled recovery points (#1204)
- bound the history a versioned Bucket keeps (#1197)
- check a skipped CloudFormation property (#1198)
- count a simulated Lambda invocation in AWS/Lambda (#1176)
- count a user pool’s requests in AWS/Cognito (#1188)
- count log events into a metric with a metric filter (#1170)
- drive an alarm on an AWS/ metric from a test (#1182)
- keep Object versions in a simulated Bucket (#1189)
- read metrics out of an Embedded Metric Format log line (#1171)
- refuse a delete Object Lock is holding (#1194)
- run a pool’s triggers on a federated sign-in (#1175)
- run PreAuthentication at managed login (#1177)
- scheduler: retry failed target deliveries (#1205)
- serve a stand-in page for an identity provider (#1178)
- simulate AWS Backup resources (#1199)
- turn a user pool request away and count the throttle (#1190)
- hand a template’s RedrivePolicy to CreateQueue (#1193)
- invoke Scheduler Lambda targets asynchronously (#1203)
- refuse an S3 replication config AWS rejects (#1187)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 40 updates (#1202)
2026-08-30
- answer least and greatest in Athena (#1155)
- cache what a Distribution serves (#1160)
- expire a cached CloudFront object (#1161)
- hold an error for its ErrorCachingMinTTL (#1165)
- invalidate what a Distribution has cached (#1163)
- record a cache policy’s TTLs and cache key (#1158)
- say whether a Distribution’s cache answered (#1164)
- send an Origin only what a policy names (#1162)
- simulate CloudFront origin request policies (#1157)
- authorize CloudFront on a delivery source (#1154)
- read a managed key SecureString without KMS (#1159)
2026-08-29
- deploy independent Resources in reverse (#1138)
- enforce IAM’s policy document limits (#1140)
- make a deploy Role from a policy document (#1142)
- read CloudFront Functions back (#1144)
- simulate AWS::CloudFront::CachePolicy (#1143)
- apply a runAs caller to direct sim calls (#1125)
- authorize iam:PassRole on a passed Role (#1126)
- authorize kms:Decrypt on a SecureString read (#1124)
- authorize logs:GetDeliverySource on a deploy (#1139)
- authorize three Resource types on create (#1123)
- log the error an invocation ended in (#1122)
- name an unnamed Resource after its stack (#1132)
- trim generated names the way CFN does (#1127)
Faster
Section titled “Faster”- memoize compiled IAM wildcard patterns (#1121)
2026-08-29
- name a default caller for a simulation (#1107)
Packaging and dependencies
Section titled “Packaging and dependencies”- ship the usage docs in the package (#1106)
2026-08-28
- name every missing sim Lambda SDK package (#1101)
- authorize the ssm dynamic reference read (#1103)
- refuse IAM statement values of the wrong type (#1102)
- resolve dynamic references as the caller (#1100)
- serialise the delivery failure message (#1097)
- ship the Oxlint config in the package root (#1098)
2026-08-28
- choose the principal a deployment runs as (#1075)
- derive aws:RequestedRegion in sim IAM (#1074)
- evaluate negated IAM condition operators (#1073)
- hash and encode binary in sim Athena (#1088)
- model schedule groups in sim Scheduler (#1083)
- report IAM statements left unevaluated (#1081)
- advance simulated time by a bare number (#1080)
- give every sim ECS container its Region (#1087)
- supply aws:SourceArn assuming a service role (#1086)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 31 updates (#1079)
2026-08-27
- deny an action with a service control policy (#1065)
- deploy an organization from CloudFormation (#1067)
- inherit a service control policy from an OU (#1066)
2026-08-27
- shim url_decode and url_encode for Athena (#1055)
- keep partition pruning past an unrelated NOT (#1056)
- read a scheme-less URL in the url_extract functions (#1063)
- read the inline regex flags a Trino pattern carries (#1057)
- refuse a WAFv2 description AWS refuses (#1062)
2026-08-27
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 33 updates (#1048)
2026-08-27
2026-08-27
- deploy an HTTP API domain from a template (#1038)
- evaluate Athena partition projection (#1018)
- filter Glue partitions with an Expression (#1030)
- flatten an Athena array with UNNEST (#1026)
- fold Glue and Athena catalog names to lower case (#1032)
- measure Athena bytes scanned from S3 (#1019)
- read registered partitions for an Athena query (#1031)
- register partitions in the Glue catalog (#1029)
- resolve Athena tables in the Glue catalog (#1015)
- run Athena queries with SQLite (#1025)
- serve an HTTP API on a custom domain (#1037)
- shim more Trino functions in the engine (#1028)
- keep the viewer’s query string encoding (#1027)
- refuse a suffix path naming its Hive keys (#1009)
- say when a Distribution repeats an Origin (#1017)
- serve .csv files from a mounted Bucket (#1036)
- stop publishing maps that resolve nowhere (#1011)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 35 updates (#1010)
2026-08-25
- deploy an Athena WorkGroup and NamedQuery (#1000)
- run an Athena query and enforce the bytes scanned cutoff (#1001)
- simulate the Glue Data Catalog (#997)
2026-08-25
- refuse a delivery source over an absent distribution (#995)
- resolve a pseudo parameter beside a Ref in Fn::Sub (#998)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 29 updates (#990)
2026-08-24
- measure a clock advance from a frozen instant (#988)
- refuse a lifecycle rule that does nothing (#986)
2026-08-24
Packaging and dependencies
Section titled “Packaging and dependencies”- deps: bump the npm-patch-and-minor group across 1 directory with 29 updates (#972)
2026-08-23
- answer a read with the Object’s content type (#970)
2026-08-23
- call a simulated service from a Task state (#959)
- deploy Lambda@Edge from a template (#962)
- retry and catch a failing task (#958)
- run a Map state over its items (#964)
- run Lambda@Edge at the origin events (#966)
- run the branches of a Parallel state (#963)
- state machine tags and file definitions (#956)
2026-08-22
- run Lambda@Edge at the viewer events (#947)
- throttle a REST API stage and method (#955)
- throttle an HTTP API stage and route (#950)
- resolve a dynamic reference built by Fn::Join (#954)
- run a Lambda with the AWS runtime variables (#953)
2026-08-22
- deliver Firehose records into an S3 bucket (#934)
- deploy AWS::KinesisFirehose::DeliveryStream (#937)
- deploy AWS::StepFunctions::StateMachine (#935)
- feed a delivery stream from a Kinesis stream (#938)
- invoke a Lambda function from a Task state (#939)
- run a simulated Step Functions state machine (#930)
- run Choice and Wait states (#936)
- send an Origin’s custom headers to the Origin (#948)
2026-08-22
- answer Bedrock invocations from declared responses (#916)
- deploy AWS::Kinesis::Stream from a template (#928)
- deploy Personalize CloudFormation Resources (#906)
- read Amazon States Language data flow (#924)
- recommend from declared campaign results (#904)
- record Personalize events through a tracker (#905)
- simulate Kinesis data streams (#917)
- simulate Personalize domain recommenders (#915)
- stream Bedrock responses through ConverseStream (#923)
- trigger a Lambda from a Kinesis stream (#925)
2026-08-21
- attach an SES configuration set to a send (#896)
- enumerate a deployed Stack’s Resources (#895)
- export a public type for deploy bindings (#893)
- follow a Terraform each.value reference (#891)
- log simulated SES email to the console (#892)
2026-08-21
- deploy a Terraform plan into simulated AWS (#873)
- hold an SES account-level suppression list (#886)
- hold SES identity DKIM and MAIL FROM state (#884)
- map twelve more Terraform types into sim AWS (#889)
- print dev messages to the serve console (#880)
- send Cognito emails through simulated SES (#885)
- simulate SES configuration sets (#888)
- supply values a Terraform plan drops (#876)
- say what Cognito refuses in the CFN record (#887)
2026-08-21
- return a public deployed Stack type (#870)
2026-08-21
- sign in with a passkey by an email alias (#861)
2026-08-21
- deploy Lambda destinations from a template (#854)
- retry async invokes to a destination or DLQ (#851)
- serve S3 CopyObject over the REST endpoint (#839)
- route a presigned URL by its query credential (#850)
- serve S3 keys holding reserved characters (#846)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 26 updates (#857)
2026-08-20
- change a simulated Lambda function’s settings (#837)
- copy an Object between simulated S3 Buckets (#831)
- evaluate a WAF RateBasedStatement (#828)
- replace a simulated Lambda function’s code (#835)
- simulate GetTokensFromRefreshToken (#842)
Faster
Section titled “Faster”- advance the clock without one timer per task (#840)
2026-08-20
- walk a simulated S3 Bucket as a folder tree (#826)
- skip a web ACL rule Yulin cannot evaluate (#825)
2026-08-20
- approximate AWS managed rule groups in WAF (#818)
- authorize a REST API method with a REQUEST authorizer (#799)
- authorize a REST API method with IAM (#800)
- block requests at a distribution web ACL (#816)
- cache a REST API authorizer’s decision (#805)
- create simulated API Gateway REST APIs (#785)
- deploy REST APIs from CloudFormation (#789)
- deploy SAM REST APIs and Api events (#795)
- deploy WAFv2 resources in CloudFormation (#820)
- evaluate rules on simulated WAFv2 web ACLs (#814)
- gate a REST API method with a user pool (#801)
- gate a REST API method with an authorizer (#798)
- import a REST API from an OpenAPI document (#796)
- import an authorizer from a security scheme (#806)
- put a web ACL in front of a REST API stage (#817)
- put a web ACL in front of a user pool (#819)
- route a REST API request to its Lambda integration (#787)
- sign a returning browser in from a session (#808)
- style the sim Cognito managed login pages (#788)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 22 updates (#803)
- deps: bump aws-actions/setup-sam in the github-actions group (#802)
2026-08-19
- accept a YAML TemplateBody (#768)
- deliver to a Lambda version or alias (#772)
- deploy a YAML CloudFormation template (#754)
- deploy Lambda versions and aliases (#775)
- expand a SAM Serverless Function (#755)
- expand SAM HttpApi events (#769)
- expand SAM queue, stream, topic and bucket events (#774)
- expand SAM schedule and event rule events (#773)
- expand SAM simple tables and HTTP APIs (#771)
- grant a Lambda permission on a qualifier (#770)
- localise Location headers when serving (#767)
- publish Lambda versions and aliases (#764)
- route an HTTP API to a Lambda alias (#776)
- keep repeated Set-Cookie headers (#766)
2026-08-19
- attach a CFN Policy to a simulated User (#731)
- create sim IAM Users from CloudFormation (#728)
- delete a sim IAM User (#730)
- export cloudFrontViewerResponseEventFactory (#739)
- read earlier Stacks in a cdk.out transform (#743)
- record bound Lambda handler output (#741)
- refuse oversized CloudFront Function code (#742)
- register a sim ACM cert at a chosen ARN (#740)
- register a sim Cognito pool by chosen id (#744)
- resolve ssm-secure dynamic references (#732)
2026-08-19
- deploy every Stack in a cdk.out assembly (#711)
- read a stack Output as a string (#704)
- read SSM parameter value types (#720)
- refuse a missing template file (#709)
- resolve Fn::ImportValue between Stacks (#710)
- resolve Secrets Manager dynamic references (#719)
- resolve SSM dynamic references (#712)
- serve IAM and ELBv2 over the Query protocol (#714)
- serve SNS and CloudFormation over the Query protocol (#698)
- serve sts assume-role over an endpoint (#713)
- serve the REST-JSON protocol for Lambda (#715)
- upload a simulated S3 Object in parts (#701)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 23 updates (#716)
2026-08-18
- answer sts get-caller-identity from the simulation (#680)
- describe a simulated S3 Object or Bucket without reading it (#682)
- find a Stack Resource by CDK construct ID (#693)
- index faces into a Rekognition collection (#692)
- serve the general AWS APIs on one endpoint (#675)
- serve the S3 REST API on an endpoint URL (#676)
- simulate Rekognition face collections (#683)
Changed
Section titled “Changed”- split the simulated S3 facade (#689)
2026-08-18
- answer a sim Lambda’s outbound HTTP (#667)
- reset a forgotten password in sim Cognito (#666)
- serve managed login pages for a password reset (#669)
- serve the Cognito JWKS to a sim Lambda (#670)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump the npm-patch-and-minor group across 1 directory with 25 updates (#661)
2026-08-18
- fan out an SNS message to a phone number (#653)
- publish an SMS to a phone number (#649)
- serve the managed login pages (#657)
- sign a local user in at authorize (#655)
- refuse an unsigned POST to a Function URL (#654)
2026-08-17
- deploy CloudWatch alarms from a template (#630)
- deploy SES identities and templates from a template (#641)
- evaluate CloudWatch alarms and notify an SNS topic (#629)
- make test factories for AWS event shapes (#631)
- record and query custom CloudWatch metrics (#628)
- render simulated SES email templates (#637)
- send email through simulated SES (#635)
- sign users in by email or phone number (#643)
- reach simulated AWS from a bundled SDK (#642)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump execa from 9.6.1 to 10.0.0 (#640)
- deps: bump the npm-patch-and-minor group across 1 directory with 23 updates (#639)
2026-08-16
- accept any account recovery mechanism on a pool (#625)
2026-08-16
- accept MfaConfiguration on a user pool (#602)
- challenge a sign-in for a second factor (#618)
- create AWS::Logs::LogGroup from a template (#617)
- deliver log events to Lambda by subscription filter (#619)
- hold custom attributes on a user pool (#613)
- record Lambda handler output in its log group (#616)
- register a second factor for a user (#611)
- simulate CloudWatch Logs groups and events (#612)
2026-08-15
- require lambda:InvokeFunction for OAC origin (#599)
2026-08-15
- give sandboxed Lambda code standard streams (#596)
2026-08-15
- consume an SQS queue from an ECS service (#587)
- deploy a sim ECS service from CloudFormation (#590)
- deploy sim ECS from CloudFormation (#586)
- deploy sim ELBv2 from CloudFormation (#591)
- keep tasks running with sim ECS services (#583)
- match ALB listener rules on host and path (#582)
- resolve load balancer names in Route53 (#584)
- resolve simulated ECS container secrets (#581)
- route ALB requests to Lambda targets (#577)
- run a simulated ECS task (#578)
- run ECS tasks from rules and schedules (#580)
- serve an ECS service through a target group (#593)
- sign a Function URL Origin with origin access control (#592)
- simulate ECR repositories holding images (#576)
- terminate HTTPS on a sim ALB listener (#585)
2026-08-14
- bind a Lambda handler by image repository (#571)
- register sim ECS task definitions (#573)
- simulate ELBv2 load balancers and listeners (#574)
- simulate KMS signing keys and Route53 DNSSEC (#572)
- skip container image Lambda functions (#569)
2026-08-14
- simulate Cognito domains and federation (#548)
2026-08-14
- create and manage simulated EventBridge Scheduler schedules (#542)
- create simulated EventBridge event buses (#536)
- deploy simulated EventBridge and Scheduler resources from a template (#546)
- fire scheduled simulated EventBridge rules on the clock (#541)
- fire simulated Scheduler schedules through their execution role (#545)
- match simulated EventBridge events with rules (#537)
- send simulated EventBridge events to rule targets (#540)
- refuse a rule target that names no function (#543)
Packaging and dependencies
Section titled “Packaging and dependencies”- deps-dev: bump eslint-plugin-unicorn from 71.1.0 to 72.0.0 (#539)
- deps-dev: bump the npm-patch-and-minor group across 1 directory with 20 updates (#538)
2026-08-13
- create a key value store from CloudFormation (#528)
- read a key value store from a CloudFront Function (#526)
- refuse a CloudFront list that miscounts its Items (#529)
2026-08-13
- add CloudFront key value stores (#524)
- allow the cloudfront module import in JS2 (#523)
2026-08-13
Packaging and dependencies
Section titled “Packaging and dependencies”- deps: bump the npm-patch-and-minor group across 1 directory with 24 updates (#516)
2026-08-12
2026-08-11
2026-08-08
2026-08-07
2026-08-07
2026-08-06
1.9.0 (2026-08-06)
Section titled “1.9.0 (2026-08-06)”Features
Section titled “Features”- serve extra file extensions from a mount (#465)
2026-08-06
1.8.0 (2026-08-06)
Section titled “1.8.0 (2026-08-06)”Bug Fixes
Section titled “Bug Fixes”- let the reloading event out before closing (#448)
- resolve repo root inside a worktree (#453)
- settle a burst of writes during a build (#449)
Features
Section titled “Features”- add custom claims from a Cognito trigger (#461)
- close a simulated environment in one call (#458)
- export template type and Account ID ctor (#442)
- export the watch runtime for held paths (#441)
- record simulated Cognito pool messages (#463)
- register a Hosted Zone with a chosen ID (#447)
- reload the browser for a mounted directory (#446)
- reload the browser for a watched template (#459)
- run Cognito Lambda triggers on sign-in (#450)
- run the Cognito sign-up Lambda triggers (#462)
- sign up to a simulated Cognito user pool (#443)
- skip an unmodelled Route53 record type (#456)
- store MX, SRV, CAA and PTR Route53 records (#444)
- transform a template file as it is read (#445)
- update a simulated Cognito app client (#455)
- update a simulated Cognito user pool (#457)
