fauxqs 2.5.1 → 2.7.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.
Files changed (115) hide show
  1. package/README.md +50 -10
  2. package/dist/app.d.ts.map +1 -1
  3. package/dist/app.js +11 -0
  4. package/dist/app.js.map +1 -1
  5. package/dist/common/xml.d.ts +6 -0
  6. package/dist/common/xml.d.ts.map +1 -1
  7. package/dist/common/xml.js +13 -0
  8. package/dist/common/xml.js.map +1 -1
  9. package/dist/persistence.d.ts +8 -0
  10. package/dist/persistence.d.ts.map +1 -1
  11. package/dist/persistence.js +38 -4
  12. package/dist/persistence.js.map +1 -1
  13. package/dist/s3/actions/completeMultipartUpload.d.ts.map +1 -1
  14. package/dist/s3/actions/completeMultipartUpload.js +7 -9
  15. package/dist/s3/actions/completeMultipartUpload.js.map +1 -1
  16. package/dist/s3/actions/createMultipartUpload.js +1 -1
  17. package/dist/s3/actions/createMultipartUpload.js.map +1 -1
  18. package/dist/s3/actions/deleteObjects.d.ts.map +1 -1
  19. package/dist/s3/actions/deleteObjects.js +1 -9
  20. package/dist/s3/actions/deleteObjects.js.map +1 -1
  21. package/dist/s3/actions/getBucketNotificationConfiguration.d.ts +8 -0
  22. package/dist/s3/actions/getBucketNotificationConfiguration.d.ts.map +1 -0
  23. package/dist/s3/actions/getBucketNotificationConfiguration.js +15 -0
  24. package/dist/s3/actions/getBucketNotificationConfiguration.js.map +1 -0
  25. package/dist/s3/actions/getObject.d.ts.map +1 -1
  26. package/dist/s3/actions/getObject.js +9 -2
  27. package/dist/s3/actions/getObject.js.map +1 -1
  28. package/dist/s3/actions/postObject.d.ts.map +1 -1
  29. package/dist/s3/actions/postObject.js +1 -1
  30. package/dist/s3/actions/postObject.js.map +1 -1
  31. package/dist/s3/actions/putBucketNotificationConfiguration.d.ts +8 -0
  32. package/dist/s3/actions/putBucketNotificationConfiguration.d.ts.map +1 -0
  33. package/dist/s3/actions/putBucketNotificationConfiguration.js +24 -0
  34. package/dist/s3/actions/putBucketNotificationConfiguration.js.map +1 -0
  35. package/dist/s3/actions/putObject.d.ts.map +1 -1
  36. package/dist/s3/actions/putObject.js +10 -1
  37. package/dist/s3/actions/putObject.js.map +1 -1
  38. package/dist/s3/checksum.d.ts +10 -1
  39. package/dist/s3/checksum.d.ts.map +1 -1
  40. package/dist/s3/checksum.js +77 -3
  41. package/dist/s3/checksum.js.map +1 -1
  42. package/dist/s3/conditionalWrites.d.ts +21 -0
  43. package/dist/s3/conditionalWrites.d.ts.map +1 -0
  44. package/dist/s3/conditionalWrites.js +71 -0
  45. package/dist/s3/conditionalWrites.js.map +1 -0
  46. package/dist/s3/fileS3Persistence.d.ts +1 -0
  47. package/dist/s3/fileS3Persistence.d.ts.map +1 -1
  48. package/dist/s3/fileS3Persistence.js +8 -0
  49. package/dist/s3/fileS3Persistence.js.map +1 -1
  50. package/dist/s3/notifications.d.ts +66 -0
  51. package/dist/s3/notifications.d.ts.map +1 -0
  52. package/dist/s3/notifications.js +269 -0
  53. package/dist/s3/notifications.js.map +1 -0
  54. package/dist/s3/s3Persistence.d.ts +2 -0
  55. package/dist/s3/s3Persistence.d.ts.map +1 -1
  56. package/dist/s3/s3Router.d.ts.map +1 -1
  57. package/dist/s3/s3Router.js +14 -0
  58. package/dist/s3/s3Router.js.map +1 -1
  59. package/dist/s3/s3Store.d.ts +19 -1
  60. package/dist/s3/s3Store.d.ts.map +1 -1
  61. package/dist/s3/s3Store.js +98 -14
  62. package/dist/s3/s3Store.js.map +1 -1
  63. package/dist/s3/s3Types.d.ts +1 -1
  64. package/dist/s3/s3Types.d.ts.map +1 -1
  65. package/dist/sns/actions/publish.d.ts +1 -0
  66. package/dist/sns/actions/publish.d.ts.map +1 -1
  67. package/dist/sns/actions/publish.js +73 -9
  68. package/dist/sns/actions/publish.js.map +1 -1
  69. package/dist/sns/actions/setSubscriptionAttributes.d.ts.map +1 -1
  70. package/dist/sns/actions/setSubscriptionAttributes.js +5 -4
  71. package/dist/sns/actions/setSubscriptionAttributes.js.map +1 -1
  72. package/dist/sns/actions/subscribe.d.ts.map +1 -1
  73. package/dist/sns/actions/subscribe.js +4 -0
  74. package/dist/sns/actions/subscribe.js.map +1 -1
  75. package/dist/sns/snsStore.d.ts +7 -0
  76. package/dist/sns/snsStore.d.ts.map +1 -1
  77. package/dist/sns/snsStore.js +15 -0
  78. package/dist/sns/snsStore.js.map +1 -1
  79. package/dist/sns/snsTypes.d.ts +7 -0
  80. package/dist/sns/snsTypes.d.ts.map +1 -1
  81. package/dist/sns/subscriptionRedrivePolicy.d.ts +23 -0
  82. package/dist/sns/subscriptionRedrivePolicy.d.ts.map +1 -0
  83. package/dist/sns/subscriptionRedrivePolicy.js +55 -0
  84. package/dist/sns/subscriptionRedrivePolicy.js.map +1 -0
  85. package/dist/spy.d.ts +7 -2
  86. package/dist/spy.d.ts.map +1 -1
  87. package/dist/spy.js.map +1 -1
  88. package/dist/sqs/actions/cancelMessageMoveTask.d.ts +5 -0
  89. package/dist/sqs/actions/cancelMessageMoveTask.d.ts.map +1 -0
  90. package/dist/sqs/actions/cancelMessageMoveTask.js +11 -0
  91. package/dist/sqs/actions/cancelMessageMoveTask.js.map +1 -0
  92. package/dist/sqs/actions/listDeadLetterSourceQueues.d.ts +8 -0
  93. package/dist/sqs/actions/listDeadLetterSourceQueues.d.ts.map +1 -0
  94. package/dist/sqs/actions/listDeadLetterSourceQueues.js +45 -0
  95. package/dist/sqs/actions/listDeadLetterSourceQueues.js.map +1 -0
  96. package/dist/sqs/actions/listMessageMoveTasks.d.ts +5 -0
  97. package/dist/sqs/actions/listMessageMoveTasks.d.ts.map +1 -0
  98. package/dist/sqs/actions/listMessageMoveTasks.js +31 -0
  99. package/dist/sqs/actions/listMessageMoveTasks.js.map +1 -0
  100. package/dist/sqs/actions/startMessageMoveTask.d.ts +9 -0
  101. package/dist/sqs/actions/startMessageMoveTask.d.ts.map +1 -0
  102. package/dist/sqs/actions/startMessageMoveTask.js +23 -0
  103. package/dist/sqs/actions/startMessageMoveTask.js.map +1 -0
  104. package/dist/sqs/sqsStore.d.ts +42 -1
  105. package/dist/sqs/sqsStore.d.ts.map +1 -1
  106. package/dist/sqs/sqsStore.js +193 -27
  107. package/dist/sqs/sqsStore.js.map +1 -1
  108. package/dist/sqs/sqsTypes.d.ts +20 -0
  109. package/dist/sqs/sqsTypes.d.ts.map +1 -1
  110. package/dist/sqs/sqsTypes.js.map +1 -1
  111. package/dist/tenant/trackedStores.d.ts +1 -1
  112. package/dist/tenant/trackedStores.d.ts.map +1 -1
  113. package/dist/tenant/trackedStores.js +2 -2
  114. package/dist/tenant/trackedStores.js.map +1 -1
  115. package/package.json +9 -9
package/README.md CHANGED
@@ -1,5 +1,5 @@
1
1
  <img src="logo-readme.jpg" alt="fauxqs" width="360" />
2
-
2
+
3
3
  [![npm version](https://img.shields.io/npm/v/fauxqs.svg)](https://www.npmjs.com/package/fauxqs)
4
4
 
5
5
  # fauxqs
@@ -580,7 +580,7 @@ Supported subscription attributes:
580
580
  | `RawMessageDelivery` | `"true"` / `"false"` | Deliver the raw message body instead of the SNS envelope JSON. |
581
581
  | `FilterPolicy` | JSON string | SNS filter policy for message filtering (e.g., `"{\"color\": [\"blue\"]}"`) |
582
582
  | `FilterPolicyScope` | `"MessageAttributes"` / `"MessageBody"` | Whether the filter policy applies to message attributes or body. Defaults to `MessageAttributes`. |
583
- | `RedrivePolicy` | JSON string | Subscription-level dead-letter queue config. |
583
+ | `RedrivePolicy` | JSON string | Subscription-level dead-letter queue config. See [Subscription dead-letter queues](#subscription-dead-letter-queues) below. |
584
584
  | `DeliveryPolicy` | JSON string | Delivery retry policy (stored, not enforced). |
585
585
  | `SubscriptionRoleArn` | ARN string | IAM role ARN for delivery (stored, not enforced). |
586
586
 
@@ -1164,10 +1164,10 @@ Resources created via init config or programmatic API use the `defaultRegion` un
1164
1164
  | ListQueueTags | Yes |
1165
1165
  | AddPermission | No |
1166
1166
  | RemovePermission | No |
1167
- | ListDeadLetterSourceQueues | No |
1168
- | StartMessageMoveTask | No |
1169
- | CancelMessageMoveTask | No |
1170
- | ListMessageMoveTasks | No |
1167
+ | ListDeadLetterSourceQueues | Yes |
1168
+ | StartMessageMoveTask | Yes |
1169
+ | CancelMessageMoveTask | Yes |
1170
+ | ListMessageMoveTasks | Yes |
1171
1171
 
1172
1172
  ### SNS
1173
1173
 
@@ -1197,6 +1197,42 @@ Resources created via init config or programmatic API use the `defaultRegion` un
1197
1197
 
1198
1198
  Platform application, SMS, and phone number actions are not supported.
1199
1199
 
1200
+ #### Subscription dead-letter queues
1201
+
1202
+ When an SQS subscription has a `RedrivePolicy` attribute set and its endpoint
1203
+ queue no longer exists at publish time, fauxqs reroutes the delivery to the
1204
+ DLQ rather than dropping the message — matching AWS and LocalStack behaviour.
1205
+
1206
+ Scope: only the missing-endpoint case is modelled. Throttling, HTTP 5xx, and
1207
+ other delivery failures don't apply because fauxqs only delivers to SQS
1208
+ endpoints. Messages dropped by a `FilterPolicy` are not redriven.
1209
+
1210
+ ```ts
1211
+ await sns.send(
1212
+ new SubscribeCommand({
1213
+ TopicArn: topicArn,
1214
+ Protocol: "sqs",
1215
+ Endpoint: endpointQueueArn,
1216
+ Attributes: {
1217
+ RedrivePolicy: JSON.stringify({ deadLetterTargetArn: dlqArn }),
1218
+ },
1219
+ }),
1220
+ );
1221
+
1222
+ // Later: endpoint queue is deleted, publish still succeeds, and the message
1223
+ // lands in the DLQ with these extra SQS message attributes:
1224
+ // ErrorCode = "AWS.SimpleQueueService.NonExistentQueue"
1225
+ // ErrorMessage = "The specified queue does not exist or you do not have access to it."
1226
+ // RequestID = <shared across all fan-out deliveries from this publish>
1227
+ // AWS.SNS.MessageId = <original SNS MessageId>
1228
+ // AWS.SNS.TopicARN = <topic ARN>
1229
+ ```
1230
+
1231
+ The body is the normal SNS notification envelope, or the raw message body
1232
+ when `RawMessageDelivery=true`. `RedrivePolicy` is validated at write time:
1233
+ malformed JSON, non-object values, or a non-string `deadLetterTargetArn` are
1234
+ rejected at Subscribe / SetSubscriptionAttributes with `InvalidParameter`.
1235
+
1200
1236
  ### S3
1201
1237
 
1202
1238
  | Action | Supported |
@@ -1230,8 +1266,10 @@ Platform application, SMS, and phone number actions are not supported.
1230
1266
  | PutBucketLifecycleConfiguration | Yes |
1231
1267
  | GetBucketLifecycleConfiguration | Yes |
1232
1268
  | DeleteBucketLifecycle | Yes |
1269
+ | PutBucketNotificationConfiguration | Yes |
1270
+ | GetBucketNotificationConfiguration | Yes |
1233
1271
 
1234
- Bucket configuration (CORS, encryption, replication, logging, website, notifications, policy), ACLs, versioning, tagging, object lock, and public access block actions are not supported.
1272
+ Bucket configuration (CORS, encryption, replication, logging, website, policy), ACLs, versioning, tagging, object lock, and public access block actions are not supported.
1235
1273
 
1236
1274
  ### STS
1237
1275
 
@@ -1250,7 +1288,7 @@ Returns a mock identity with account `000000000000` and ARN `arn:aws:iam::000000
1250
1288
  - **Visibility timeout** — messages become invisible after receive and reappear after timeout
1251
1289
  - **Delay queues** — per-queue default delay and per-message delay overrides
1252
1290
  - **Long polling** — `WaitTimeSeconds` on ReceiveMessage blocks until messages arrive or timeout
1253
- - **Dead letter queues** — messages exceeding `maxReceiveCount` are moved to the configured DLQ
1291
+ - **Dead letter queues** — messages exceeding `maxReceiveCount` are moved to the configured DLQ. `ListDeadLetterSourceQueues` enumerates the queues feeding a DLQ, and message move tasks (`StartMessageMoveTask`, `ListMessageMoveTasks`, `CancelMessageMoveTask`) redrive dead-lettered messages back to their origin queue or an explicit destination. Move tasks run synchronously and complete immediately: `ListMessageMoveTasks` reports them as `COMPLETED`, `CancelMessageMoveTask` rejects them because a finished task cannot be cancelled, and `MaxNumberOfMessagesPerSecond` is accepted but not enforced
1254
1292
  - **Batch operations** — SendMessageBatch, DeleteMessageBatch, ChangeMessageVisibilityBatch with entry ID validation (`InvalidBatchEntryId`) and total batch size validation (`BatchRequestTooLong`)
1255
1293
  - **Queue attribute range validation** — validates `VisibilityTimeout`, `DelaySeconds`, `ReceiveMessageWaitTimeSeconds`, `MaximumMessageSize`, and `MessageRetentionPeriod` on both CreateQueue and SetQueueAttributes
1256
1294
  - **Message size validation** — rejects messages exceeding 1 MiB (1,048,576 bytes)
@@ -1262,7 +1300,7 @@ Returns a mock identity with account `000000000000` and ARN `arn:aws:iam::000000
1262
1300
  ## SNS Features
1263
1301
 
1264
1302
  - **SNS-to-SQS fan-out** — publish to a topic and messages are delivered to all confirmed SQS subscriptions
1265
- - **Filter policies** — both `MessageAttributes` and `MessageBody` scope, supporting exact match, prefix, suffix, anything-but (including anything-but with suffix), numeric ranges, exists, null conditions, and `$or` top-level grouping. MessageBody scope supports nested key matching
1303
+ - **Filter policies** — both `MessageAttributes` and `MessageBody` scope, supporting exact match, prefix, suffix, equals-ignore-case, wildcard, CIDR, anything-but (including anything-but with prefix, suffix, or wildcard), numeric ranges, exists, null conditions, and `$or` top-level grouping. MessageBody scope supports nested key matching
1266
1304
  - **Raw message delivery** — configurable per subscription
1267
1305
  - **Message size validation** — rejects messages exceeding 256 KB (262,144 bytes)
1268
1306
  - **Topic idempotency with conflict detection** — `CreateTopic` returns the existing topic when called with the same name, attributes, and tags, but throws when attributes or tags differ
@@ -1284,13 +1322,15 @@ Returns a mock identity with account `000000000000` and ARN `arn:aws:iam::000000
1284
1322
  - **Bulk delete** — DeleteObjects for batch key deletion with proper XML entity handling
1285
1323
  - **Keys with slashes** — full support for slash-delimited keys (e.g., `path/to/file.txt`)
1286
1324
  - **Stream uploads** — handles AWS chunked transfer encoding (`Content-Encoding: aws-chunked`) for stream bodies, including trailing header parsing for checksums
1287
- - **Checksums** — CRC32, SHA1, and SHA256 checksums are stored on upload (PutObject, UploadPart) and returned on download (GetObject, HeadObject with `x-amz-checksum-mode: ENABLED`). Multipart uploads compute composite checksums. GetObjectAttributes supports the `Checksum` attribute. CRC32C and CRC64NVME are silently ignored. Checksums are stored and returned as-is — no body validation is performed.
1325
+ - **Checksums** — CRC32, CRC32C, CRC64NVME, SHA1, and SHA256 checksums are stored on upload (PutObject, UploadPart) and returned on download (GetObject, HeadObject with `x-amz-checksum-mode: ENABLED`). Multipart uploads compute composite checksums. GetObjectAttributes supports the `Checksum` attribute. Checksums are stored and returned as-is — no body validation is performed.
1288
1326
  - **GetObjectAttributes** — selective metadata retrieval via `x-amz-object-attributes` header: ETag, StorageClass, ObjectSize, ObjectParts (with pagination), and Checksum (including per-part checksums for multipart objects)
1289
1327
  - **RenameObject** — atomic rename within directory buckets (`PUT /:bucket/:key?renameObject`). Preserves all metadata, ETag, timestamps, and checksums. Rejects general-purpose buckets. Default no-overwrite (412 if destination exists unless `If-Match` is provided). Supports source and destination conditional headers.
1290
1328
  - **Directory buckets** — `CreateBucket` accepts `<Type>Directory</Type>` in the body. Programmatic API: `server.createBucket("name", { type: "directory" })`. Init config supports `{ name, type, lifecycleConfiguration }` objects in the `buckets` array.
1291
1329
  - **Lifecycle configuration** — PutBucketLifecycleConfiguration, GetBucketLifecycleConfiguration, and DeleteBucketLifecycle. Lifecycle configs are stored and returned as-is (rules are not enforced — fauxqs is a mock). Persisted across restarts. Can also be set declaratively via init config.
1292
1330
  - **Path-style and virtual-hosted-style** — both S3 URL styles are supported (see below)
1293
1331
  - **CORS** — permissive CORS headers are enabled by default, allowing browser-based presigned URL uploads (see below)
1332
+ - **Conditional writes** — `If-None-Match` and `If-Match` preconditions on PutObject, CompleteMultipartUpload, and CopyObject (compare-and-swap and overwrite prevention), returning `412 Precondition Failed` when a precondition does not hold. Conditional reads (`If-Match`, `If-None-Match`, `If-Modified-Since`, `If-Unmodified-Since`) are supported on GetObject.
1333
+ - **Event notifications** — `PutBucketNotificationConfiguration` / `GetBucketNotificationConfiguration` wire object events (`ObjectCreated:*`, `ObjectRemoved:*`) to SQS queues and SNS topics, with optional prefix/suffix key filters. Events are delivered as the standard S3 `{"Records":[...]}` JSON envelope, with the object key URL-encoded as real S3 does. Destination ARNs and event names are validated when the configuration is set, and the configuration is persisted across restarts. Lambda and EventBridge destinations are not supported.
1294
1334
 
1295
1335
  ### S3 URL styles
1296
1336
 
package/dist/app.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AACA,OAAO,OAAO,MAAM,SAAS,CAAC;AAG9B,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC7C,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAI/D,OAAO,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAoC7C,OAAO,EAAE,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAO1C,OAAO,EAAc,KAAK,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAI7D,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAG1D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,YAAY,EACV,gBAAgB,EAChB,WAAW,EACX,gBAAgB,EAChB,gBAAgB,EAChB,uBAAuB,EACvB,iBAAiB,GAClB,MAAM,iBAAiB,CAAC;AACzB,YAAY,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC/D,YAAY,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,qBAAqB,EAAE,MAAM,gBAAgB,CAAC;AAC/E,YAAY,EACV,gBAAgB,EAChB,UAAU,EACV,aAAa,EACb,aAAa,EACb,UAAU,EACV,gBAAgB,EAChB,mBAAmB,EACnB,mBAAmB,EACnB,gBAAgB,EAChB,gBAAgB,EAChB,gBAAgB,EAChB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,YAAY;IAC3B,8FAA8F;IAC9F,wBAAwB,CAAC,EAAE,OAAO,CAAC;CACpC;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE;QAAE,QAAQ,EAAE,QAAQ,CAAC;QAAC,QAAQ,EAAE,QAAQ,CAAC;QAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IACtE,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,aAAa,CAAC,EAAE,aAAa,CAAC;CAC/B;AAED,wBAAgB,QAAQ,CAAC,OAAO,CAAC,EAAE,eAAe;;EA6PjD;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,GAAG,EAAE,gBAAgB,CAAC;IAC/B,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAEtB,WAAW,CACT,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAC/B,GACA;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,uGAAuG;IACvG,YAAY,CAAC,IAAI,EAAE,MAAM,GACrB;QACE,IAAI,EAAE,MAAM,CAAC;QACb,GAAG,EAAE,MAAM,CAAC;QACZ,GAAG,EAAE,MAAM,CAAC;QACZ,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACnC,QAAQ,EAAE;YACR,KAAK,EAAE,OAAO,mBAAmB,EAAE,UAAU,EAAE,CAAC;YAChD,OAAO,EAAE,OAAO,mBAAmB,EAAE,UAAU,EAAE,CAAC;YAClD,QAAQ,EAAE,KAAK,CAAC;gBACd,OAAO,EAAE,OAAO,mBAAmB,EAAE,UAAU,CAAC;gBAChD,aAAa,EAAE,MAAM,CAAC;gBACtB,kBAAkB,EAAE,MAAM,CAAC;aAC5B,CAAC,CAAC;SACJ,CAAC;KACH,GACD,SAAS,CAAC;IACd,WAAW,CACT,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACpC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KAC/B,GACA;QAAE,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IACxB,SAAS,CAAC,OAAO,EAAE;QACjB,KAAK,EAAE,MAAM,CAAC;QACd,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;KACrC,GAAG,IAAI,CAAC;IACT,YAAY,CACV,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,iBAAiB,GAAG,WAAW,CAAA;KAAE,GACnD;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1B,iEAAiE;IACjE,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/D,8FAA8F;IAC9F,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAC/D,uGAAuG;IACvG,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,gJAAgJ;IAChJ,WAAW,CACT,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,CAAC,EAAE;QACR,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;QAC1D,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,sBAAsB,CAAC,EAAE,MAAM,CAAC;QAChC,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GACA;QACD,SAAS,EAAE,MAAM,CAAC;QAClB,SAAS,EAAE,MAAM,CAAC;QAClB,sBAAsB,CAAC,EAAE,MAAM,CAAC;QAChC,cAAc,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,2JAA2J;IAC3J,OAAO,CACL,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,iBAAiB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,qBAAqB,CAAC,CAAC;QAC1D,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,sBAAsB,CAAC,EAAE,MAAM,CAAC;QAChC,MAAM,CAAC,EAAE,MAAM,CAAC;KACjB,GACA;QAAE,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IACzB,KAAK,CAAC,MAAM,EAAE,OAAO,iBAAiB,EAAE,gBAAgB,GAAG,OAAO,iBAAiB,EAAE,WAAW,CAAC;IACjG,2JAA2J;IAC3J,KAAK,IAAI,IAAI,CAAC;IACd,QAAQ,IAAI,IAAI,CAAC;IAEjB,kGAAkG;IAClG,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,iBAAiB,EAAE,WAAW,CAAC;IAC3E,wHAAwH;IACxH,WAAW,IAAI,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7D,sGAAsG;IACtG,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,wBAAsB,WAAW,CAAC,OAAO,CAAC,EAAE;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gIAAgI;IAChI,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,kHAAkH;IAClH,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,iBAAiB,EAAE,gBAAgB,CAAC;IAC3D,sGAAsG;IACtG,YAAY,CAAC,EAAE,OAAO,GAAG,OAAO,UAAU,EAAE,gBAAgB,CAAC;IAC7D,8EAA8E;IAC9E,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,uHAAuH;IACvH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,6JAA6J;IAC7J,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,uHAAuH;IACvH,MAAM,CAAC,EAAE,YAAY,CAAC;CACvB,GAAG,OAAO,CAAC,YAAY,CAAC,CAsaxB"}
package/dist/app.js CHANGED
@@ -25,6 +25,10 @@ import { changeMessageVisibilityBatch } from "./sqs/actions/changeMessageVisibil
25
25
  import { tagQueue } from "./sqs/actions/tagQueue.js";
26
26
  import { untagQueue } from "./sqs/actions/untagQueue.js";
27
27
  import { listQueueTags } from "./sqs/actions/listQueueTags.js";
28
+ import { listDeadLetterSourceQueues } from "./sqs/actions/listDeadLetterSourceQueues.js";
29
+ import { startMessageMoveTask } from "./sqs/actions/startMessageMoveTask.js";
30
+ import { listMessageMoveTasks } from "./sqs/actions/listMessageMoveTasks.js";
31
+ import { cancelMessageMoveTask } from "./sqs/actions/cancelMessageMoveTask.js";
28
32
  import { createTopic } from "./sns/actions/createTopic.js";
29
33
  import { deleteTopic } from "./sns/actions/deleteTopic.js";
30
34
  import { listTopics } from "./sns/actions/listTopics.js";
@@ -40,6 +44,7 @@ import { publish, publishBatch, fanOutToSubscriptions } from "./sns/actions/publ
40
44
  import { tagResource, untagResource, listTagsForResource } from "./sns/actions/tagResource.js";
41
45
  import { S3Store } from "./s3/s3Store.js";
42
46
  import { registerS3Routes } from "./s3/s3Router.js";
47
+ import { S3NotificationDispatcher } from "./s3/notifications.js";
43
48
  import { getCallerIdentity } from "./sts/getCallerIdentity.js";
44
49
  import { sqsQueueArn, snsTopicArn } from "./common/arnHelper.js";
45
50
  import { DEFAULT_REGION, SNS_MAX_MESSAGE_SIZE_BYTES } from "./common/types.js";
@@ -134,6 +139,10 @@ export function buildApp(options) {
134
139
  sqsRouter.register("TagQueue", tagQueue);
135
140
  sqsRouter.register("UntagQueue", untagQueue);
136
141
  sqsRouter.register("ListQueueTags", listQueueTags);
142
+ sqsRouter.register("ListDeadLetterSourceQueues", listDeadLetterSourceQueues);
143
+ sqsRouter.register("StartMessageMoveTask", startMessageMoveTask);
144
+ sqsRouter.register("ListMessageMoveTasks", listMessageMoveTasks);
145
+ sqsRouter.register("CancelMessageMoveTask", cancelMessageMoveTask);
137
146
  const snsRouter = new SnsRouter(snsStore, sqsStore);
138
147
  snsRouter.register("CreateTopic", createTopic);
139
148
  snsRouter.register("DeleteTopic", deleteTopic);
@@ -189,6 +198,8 @@ export function buildApp(options) {
189
198
  if (options?.relaxedRules) {
190
199
  s3Store.relaxedRules = options.relaxedRules;
191
200
  }
201
+ // Wire S3 object events to SQS queues and SNS topics (bucket notification configs).
202
+ s3Store.notificationDispatcher = new S3NotificationDispatcher(sqsStore, snsStore, options?.defaultRegion ?? DEFAULT_REGION);
192
203
  registerS3Routes(app, s3Store);
193
204
  // Add x-amz-request-id and x-amz-id-2 headers to S3 responses
194
205
  app.addHook("onSend", (_request, reply, payload, done) => {
package/dist/app.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,10 @@
1
1
  export declare function snsSuccessResponse(action: string, resultBody: string): string;
2
2
  export declare function snsErrorResponse(code: string, message: string, type?: "Sender" | "Receiver"): string;
3
3
  export declare function escapeXml(str: string): string;
4
+ /**
5
+ * Reverse of {@link escapeXml}. The `&amp;` entity is decoded last so that an
6
+ * escaped entity reference (e.g. `&amp;lt;`) round-trips to `&lt;` rather than
7
+ * being double-decoded into `<`.
8
+ */
9
+ export declare function unescapeXml(str: string): string;
4
10
  //# sourceMappingURL=xml.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"xml.d.ts","sourceRoot":"","sources":["../../src/common/xml.ts"],"names":[],"mappings":"AAIA,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAW7E;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,QAAQ,GAAG,UAAqB,GACrC,MAAM,CAWR;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAO7C"}
1
+ {"version":3,"file":"xml.d.ts","sourceRoot":"","sources":["../../src/common/xml.ts"],"names":[],"mappings":"AAIA,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAW7E;AAED,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,QAAQ,GAAG,UAAqB,GACrC,MAAM,CAWR;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAO7C;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAO/C"}
@@ -32,4 +32,17 @@ export function escapeXml(str) {
32
32
  .replaceAll('"', "&quot;")
33
33
  .replaceAll("'", "&apos;");
34
34
  }
35
+ /**
36
+ * Reverse of {@link escapeXml}. The `&amp;` entity is decoded last so that an
37
+ * escaped entity reference (e.g. `&amp;lt;`) round-trips to `&lt;` rather than
38
+ * being double-decoded into `<`.
39
+ */
40
+ export function unescapeXml(str) {
41
+ return str
42
+ .replaceAll("&lt;", "<")
43
+ .replaceAll("&gt;", ">")
44
+ .replaceAll("&quot;", '"')
45
+ .replaceAll("&apos;", "'")
46
+ .replaceAll("&amp;", "&");
47
+ }
35
48
  //# sourceMappingURL=xml.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"xml.js","sourceRoot":"","sources":["../../src/common/xml.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,SAAS,GAAG,0CAA0C,CAAC;AAE7D,MAAM,UAAU,kBAAkB,CAAC,MAAc,EAAE,UAAkB;IACnE,OAAO;QACL,IAAI,MAAM,mBAAmB,SAAS,IAAI;QAC1C,MAAM,MAAM,SAAS;QACrB,OAAO,UAAU,EAAE;QACnB,OAAO,MAAM,SAAS;QACtB,sBAAsB;QACtB,kBAAkB,UAAU,EAAE,cAAc;QAC5C,uBAAuB;QACvB,KAAK,MAAM,WAAW;KACvB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,IAAY,EACZ,OAAe,EACf,OAA8B,QAAQ;IAEtC,OAAO;QACL,yBAAyB,SAAS,IAAI;QACtC,WAAW;QACX,aAAa,IAAI,SAAS;QAC1B,aAAa,IAAI,SAAS;QAC1B,gBAAgB,SAAS,CAAC,OAAO,CAAC,YAAY;QAC9C,YAAY;QACZ,gBAAgB,UAAU,EAAE,cAAc;QAC1C,kBAAkB;KACnB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAW;IACnC,OAAO,GAAG;SACP,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;SACxB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC;SACzB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AAC/B,CAAC"}
1
+ {"version":3,"file":"xml.js","sourceRoot":"","sources":["../../src/common/xml.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,SAAS,GAAG,0CAA0C,CAAC;AAE7D,MAAM,UAAU,kBAAkB,CAAC,MAAc,EAAE,UAAkB;IACnE,OAAO;QACL,IAAI,MAAM,mBAAmB,SAAS,IAAI;QAC1C,MAAM,MAAM,SAAS;QACrB,OAAO,UAAU,EAAE;QACnB,OAAO,MAAM,SAAS;QACtB,sBAAsB;QACtB,kBAAkB,UAAU,EAAE,cAAc;QAC5C,uBAAuB;QACvB,KAAK,MAAM,WAAW;KACvB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,IAAY,EACZ,OAAe,EACf,OAA8B,QAAQ;IAEtC,OAAO;QACL,yBAAyB,SAAS,IAAI;QACtC,WAAW;QACX,aAAa,IAAI,SAAS;QAC1B,aAAa,IAAI,SAAS;QAC1B,gBAAgB,SAAS,CAAC,OAAO,CAAC,YAAY;QAC9C,YAAY;QACZ,gBAAgB,UAAU,EAAE,cAAc;QAC1C,kBAAkB;KACnB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,GAAW;IACnC,OAAO,GAAG;SACP,UAAU,CAAC,GAAG,EAAE,OAAO,CAAC;SACxB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,MAAM,CAAC;SACvB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC;SACzB,UAAU,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AAC/B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,GAAW;IACrC,OAAO,GAAG;SACP,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC;SACvB,UAAU,CAAC,MAAM,EAAE,GAAG,CAAC;SACvB,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC;SACzB,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC;SACzB,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;AAC9B,CAAC"}
@@ -9,6 +9,12 @@ export declare class PersistenceManager implements S3PersistenceProvider {
9
9
  private db;
10
10
  private stmts;
11
11
  constructor(dataDir: string);
12
+ /**
13
+ * Apply schema additions to databases created by an older fauxqs version.
14
+ * SQLite has no `ADD COLUMN IF NOT EXISTS`, so existing columns are checked
15
+ * before each `ALTER TABLE`.
16
+ */
17
+ private migrate;
12
18
  private prepareStatements;
13
19
  private transaction;
14
20
  insertQueue(queue: SqsQueue): void;
@@ -32,6 +38,7 @@ export declare class PersistenceManager implements S3PersistenceProvider {
32
38
  deleteBucket(name: string): void;
33
39
  saveBucketLifecycleConfiguration(bucket: string, config: string): void;
34
40
  deleteBucketLifecycleConfiguration(bucket: string): void;
41
+ saveBucketNotificationConfiguration(bucket: string, config: string): void;
35
42
  upsertObject(bucket: string, obj: S3Object): void;
36
43
  deleteObject(bucket: string, key: string): void;
37
44
  deleteObjectsByBucket(bucket: string): void;
@@ -54,6 +61,7 @@ export declare class PersistenceManager implements S3PersistenceProvider {
54
61
  private loadSnsSubscriptions;
55
62
  private loadS3Buckets;
56
63
  private loadS3BucketLifecycleConfigurations;
64
+ private loadS3BucketNotificationConfigurations;
57
65
  private loadS3Objects;
58
66
  private loadS3MultipartUploads;
59
67
  close(): void;
@@ -1 +1 @@
1
- {"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../src/persistence.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACnE,OAAO,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAqJnE,qBAAa,kBAAmB,YAAW,qBAAqB;IAC9D,OAAO,CAAC,EAAE,CAAe;IACzB,OAAO,CAAC,KAAK,CAAqB;gBAEtB,OAAO,EAAE,MAAM;IAS3B,OAAO,CAAC,iBAAiB;IAkGzB,OAAO,CAAC,WAAW;IAanB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAalC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAI/B,qBAAqB,CACnB,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAClC,YAAY,EAAE,MAAM,GACnB,IAAI;IAIP,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAM/D,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,GAAG,IAAI;IAoBvD,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAItC,qBAAqB,CACnB,SAAS,EAAE,MAAM,EACjB,aAAa,EAAE,MAAM,EACrB,kBAAkB,EAAE,MAAM,EAC1B,YAAY,EAAE,MAAM,EACpB,qBAAqB,EAAE,MAAM,GAAG,SAAS,GACxC,IAAI;IAUP,kBAAkB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAI3C,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAI5C,iBAAiB,IAAI,IAAI;IAMzB,WAAW,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI;IAUlC,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAI9B,qBAAqB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAI5E,2BAA2B,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,IAAI;IAM9D,kBAAkB,CAAC,GAAG,EAAE,eAAe,GAAG,IAAI;IAW9C,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI;IAIrC,4BAA4B,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI;IAMnF,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI;IAItE,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAIhC,gCAAgC,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI;IAItE,kCAAkC,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAMxD,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI;IAsBjD,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI;IAI/C,qBAAqB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;IAI3C,gBAAgB,IAAI,IAAI;IAIxB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAQ7C,YAAY,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI;IAgCtE,qBAAqB,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAgBpD,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,GAAG,IAAI;IAWhE,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAI7C,uBAAuB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI;IAO9E,yBAAyB,IAAI,IAAI;IASjC,uBAAuB,IAAI,IAAI;IAS/B,QAAQ,IAAI,IAAI;IAehB,IAAI,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI;IAKpE,aAAa,CAAC,QAAQ,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAG,IAAI;IAM3D,MAAM,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAO9B,OAAO,CAAC,aAAa;IA2BrB,OAAO,CAAC,eAAe;IAoFvB,OAAO,CAAC,aAAa;IAqBrB,OAAO,CAAC,oBAAoB;IAuB5B,OAAO,CAAC,aAAa;IAarB,OAAO,CAAC,mCAAmC;IAW3C,OAAO,CAAC,aAAa;IAgDrB,OAAO,CAAC,sBAAsB;IAwD9B,KAAK,IAAI,IAAI;CAGd"}
1
+ {"version":3,"file":"persistence.d.ts","sourceRoot":"","sources":["../src/persistence.ts"],"names":[],"mappings":"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"}
@@ -28,7 +28,8 @@ CREATE TABLE IF NOT EXISTS sqs_messages (
28
28
  message_deduplication_id TEXT,
29
29
  sequence_number TEXT,
30
30
  receipt_handle TEXT,
31
- visibility_deadline INTEGER
31
+ visibility_deadline INTEGER,
32
+ dead_letter_source_arn TEXT
32
33
  );
33
34
 
34
35
  CREATE TABLE IF NOT EXISTS sns_topics (
@@ -59,6 +60,11 @@ CREATE TABLE IF NOT EXISTS s3_bucket_lifecycle_configurations (
59
60
  configuration TEXT NOT NULL
60
61
  );
61
62
 
63
+ CREATE TABLE IF NOT EXISTS s3_bucket_notification_configurations (
64
+ bucket TEXT PRIMARY KEY REFERENCES s3_buckets(name) ON DELETE CASCADE,
65
+ configuration TEXT NOT NULL
66
+ );
67
+
62
68
  CREATE TABLE IF NOT EXISTS s3_objects (
63
69
  bucket TEXT NOT NULL,
64
70
  key TEXT NOT NULL,
@@ -113,8 +119,23 @@ export class PersistenceManager {
113
119
  this.db = new DatabaseSync(dbPath, { enableForeignKeyConstraints: true });
114
120
  this.db.exec("PRAGMA journal_mode = WAL");
115
121
  this.db.exec(SCHEMA);
122
+ this.migrate();
116
123
  this.stmts = this.prepareStatements();
117
124
  }
125
+ /**
126
+ * Apply schema additions to databases created by an older fauxqs version.
127
+ * SQLite has no `ADD COLUMN IF NOT EXISTS`, so existing columns are checked
128
+ * before each `ALTER TABLE`.
129
+ */
130
+ migrate() {
131
+ const hasColumn = (table, column) => {
132
+ const cols = this.db.prepare(`PRAGMA table_info(${table})`).all();
133
+ return cols.some((c) => c.name === column);
134
+ };
135
+ if (!hasColumn("sqs_messages", "dead_letter_source_arn")) {
136
+ this.db.exec("ALTER TABLE sqs_messages ADD COLUMN dead_letter_source_arn TEXT");
137
+ }
138
+ }
118
139
  prepareStatements() {
119
140
  return {
120
141
  insertQueue: this.db.prepare(`
@@ -130,8 +151,8 @@ export class PersistenceManager {
130
151
  message_id, queue_name, body, md5_of_body, message_attributes, md5_of_message_attributes,
131
152
  sent_timestamp, approximate_receive_count, approximate_first_receive_timestamp,
132
153
  delay_until, message_group_id, message_deduplication_id, sequence_number,
133
- receipt_handle, visibility_deadline
134
- ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
154
+ receipt_handle, visibility_deadline, dead_letter_source_arn
155
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
135
156
  `),
136
157
  deleteMessage: this.db.prepare("DELETE FROM sqs_messages WHERE message_id = ?"),
137
158
  updateMessageInflight: this.db.prepare(`
@@ -162,6 +183,8 @@ export class PersistenceManager {
162
183
  saveBucketLifecycleConfiguration: this.db.prepare("INSERT OR REPLACE INTO s3_bucket_lifecycle_configurations (bucket, configuration) VALUES (?, ?)"),
163
184
  deleteBucketLifecycleConfiguration: this.db.prepare("DELETE FROM s3_bucket_lifecycle_configurations WHERE bucket = ?"),
164
185
  loadBucketLifecycleConfigurations: this.db.prepare("SELECT * FROM s3_bucket_lifecycle_configurations"),
186
+ saveBucketNotificationConfiguration: this.db.prepare("INSERT OR REPLACE INTO s3_bucket_notification_configurations (bucket, configuration) VALUES (?, ?)"),
187
+ loadBucketNotificationConfigurations: this.db.prepare("SELECT * FROM s3_bucket_notification_configurations"),
165
188
  upsertObject: this.db.prepare(`
166
189
  INSERT OR REPLACE INTO s3_objects (
167
190
  bucket, key, body, content_type, content_length, etag, last_modified, metadata,
@@ -218,7 +241,7 @@ export class PersistenceManager {
218
241
  }
219
242
  // ── SQS Message write-through ──
220
243
  insertMessage(queueName, msg) {
221
- this.stmts.insertMessage.run(msg.messageId, queueName, msg.body, msg.md5OfBody, JSON.stringify(msg.messageAttributes), msg.md5OfMessageAttributes, msg.sentTimestamp, msg.approximateReceiveCount, msg.approximateFirstReceiveTimestamp ?? null, msg.delayUntil ?? null, msg.messageGroupId ?? null, msg.messageDeduplicationId ?? null, msg.sequenceNumber ?? null, null, null);
244
+ this.stmts.insertMessage.run(msg.messageId, queueName, msg.body, msg.md5OfBody, JSON.stringify(msg.messageAttributes), msg.md5OfMessageAttributes, msg.sentTimestamp, msg.approximateReceiveCount, msg.approximateFirstReceiveTimestamp ?? null, msg.delayUntil ?? null, msg.messageGroupId ?? null, msg.messageDeduplicationId ?? null, msg.sequenceNumber ?? null, null, null, msg.deadLetterSourceArn ?? null);
222
245
  }
223
246
  deleteMessage(messageId) {
224
247
  this.stmts.deleteMessage.run(messageId);
@@ -271,6 +294,9 @@ export class PersistenceManager {
271
294
  deleteBucketLifecycleConfiguration(bucket) {
272
295
  this.stmts.deleteBucketLifecycleConfiguration.run(bucket);
273
296
  }
297
+ saveBucketNotificationConfiguration(bucket, config) {
298
+ this.stmts.saveBucketNotificationConfiguration.run(bucket, config);
299
+ }
274
300
  // ── S3 Object write-through ──
275
301
  upsertObject(bucket, obj) {
276
302
  this.stmts.upsertObject.run(bucket, obj.key, obj.body, obj.contentType, obj.contentLength, obj.etag, obj.lastModified.toISOString(), JSON.stringify(obj.metadata), obj.contentLanguage ?? null, obj.contentDisposition ?? null, obj.cacheControl ?? null, obj.contentEncoding ?? null, obj.parts ? JSON.stringify(obj.parts) : null, obj.checksumAlgorithm ?? null, obj.checksumValue ?? null, obj.checksumType ?? null, obj.partChecksums ? JSON.stringify(obj.partChecksums) : null);
@@ -359,6 +385,7 @@ export class PersistenceManager {
359
385
  loadS3(s3Store) {
360
386
  this.loadS3Buckets(s3Store);
361
387
  this.loadS3BucketLifecycleConfigurations(s3Store);
388
+ this.loadS3BucketNotificationConfigurations(s3Store);
362
389
  this.loadS3Objects(s3Store);
363
390
  this.loadS3MultipartUploads(s3Store);
364
391
  }
@@ -393,6 +420,7 @@ export class PersistenceManager {
393
420
  messageGroupId: row.message_group_id ?? undefined,
394
421
  messageDeduplicationId: row.message_deduplication_id ?? undefined,
395
422
  sequenceNumber: row.sequence_number ?? undefined,
423
+ deadLetterSourceArn: row.dead_letter_source_arn ?? undefined,
396
424
  };
397
425
  // Recalculate message state from persisted timestamps
398
426
  if (row.receipt_handle && row.visibility_deadline) {
@@ -477,6 +505,12 @@ export class PersistenceManager {
477
505
  s3Store.restoreBucketLifecycleConfiguration(row.bucket, row.configuration);
478
506
  }
479
507
  }
508
+ loadS3BucketNotificationConfigurations(s3Store) {
509
+ const rows = this.stmts.loadBucketNotificationConfigurations.all();
510
+ for (const row of rows) {
511
+ s3Store.restoreBucketNotificationConfiguration(row.bucket, row.configuration);
512
+ }
513
+ }
480
514
  loadS3Objects(s3Store) {
481
515
  // Load metadata only — bodies are read on demand via readBody()
482
516
  const rows = this.stmts.loadObjectsMeta.all();
@@ -1 +1 @@
1
- {"version":3,"file":"persistence.js","sourceRoot":"","sources":["../src/persistence.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"persistence.js","sourceRoot":"","sources":["../src/persistence.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"completeMultipartUpload.d.ts","sourceRoot":"","sources":["../../../src/s3/actions/completeMultipartUpload.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAY7C,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,cAAc,CAAC;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,EACpE,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,OAAO,GACb,IAAI,CAiEN"}
1
+ {"version":3,"file":"completeMultipartUpload.d.ts","sourceRoot":"","sources":["../../../src/s3/actions/completeMultipartUpload.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAG5D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAI7C,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,cAAc,CAAC;IAAE,MAAM,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,CAAC,EACpE,KAAK,EAAE,YAAY,EACnB,KAAK,EAAE,OAAO,GACb,IAAI,CA0EN"}