Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 19 additions & 0 deletions .changeset/twenty-bushes-enter.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
"wrangler": patch
---

Remove default values for delivery delay and message retention and update messaging on limits

Fixes the issue of the default maximum message retention (365400 seconds) being longer than the maximum allowed retention period for free tier users (86400 seconds).

Previous:

- Wrangler set a default value of 365400 seconds max message retention if the setting was not explicitly provided in the Wrangler configuration.
- The maximum retention period was documented as 1209600 seconds for all queues users because it was required to be on paid tier.
- Wrangler also set a default value of 0 seconds for delivery delay if the setting was not explicitly provided in the Wrangler configuration.

Updated:

- Wrangler no longer sets a default value for max message retention so that the default can be applied at the API.
- The maximum retention period is now documented as 86400 seconds for free tier queues and 1209600 seconds for paid tier queues
- Wrangler also no longer sets a default value for delivery delay so that the default can be applied at the API.
25 changes: 9 additions & 16 deletions packages/wrangler/src/__tests__/queues/queues.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -186,20 +186,13 @@ describe("wrangler", () => {
describe("create", () => {
function mockCreateRequest(
queueName: string,
queueSettings: {
queueSettings?: {
delivery_delay?: number;
message_retention_period?: number;
} = {}
}
) {
const requests = { count: 0 };

if (queueSettings?.delivery_delay === undefined) {
queueSettings.delivery_delay = 0;
}
if (queueSettings?.message_retention_period === undefined) {
queueSettings.message_retention_period = 345600;
}

msw.use(
http.post(
"*/accounts/:accountId/queues",
Expand All @@ -208,9 +201,9 @@ describe("wrangler", () => {

const body = (await request.json()) as {
queue_name: string;
settings: {
delivery_delay: number;
message_retention_period: number;
settings?: {
delivery_delay?: number;
message_retention_period?: number;
};
};
expect(body.queue_name).toEqual(queueName);
Expand Down Expand Up @@ -252,8 +245,8 @@ describe("wrangler", () => {
-v, --version Show version number [boolean]

OPTIONS
--delivery-delay-secs How long a published message should be delayed for, in seconds. Must be between 0 and 42300 [number] [default: 0]
--message-retention-period-secs How long to retain a message in the queue, in seconds. Must be between 60 and 1209600 [number] [default: 345600]"
--delivery-delay-secs How long a published message should be delayed for, in seconds. Must be between 0 and 43200 [number]
--message-retention-period-secs How long to retain a message in the queue, in seconds. Must be between 60 and 86400 if on free tier, otherwise must be between 60 and 1209600 [number]"
`);
});
describe.each(["wrangler.json", "wrangler.toml"])("%s", (configPath) => {
Expand Down Expand Up @@ -476,8 +469,8 @@ describe("wrangler", () => {
-v, --version Show version number [boolean]

OPTIONS
--delivery-delay-secs How long a published message should be delayed for, in seconds. Must be between 0 and 42300 [number]
--message-retention-period-secs How long to retain a message in the queue, in seconds. Must be between 60 and 1209600 [number]"
--delivery-delay-secs How long a published message should be delayed for, in seconds. Must be between 0 and 43200 [number]
--message-retention-period-secs How long to retain a message in the queue, in seconds. Must be between 60 and 86400 if on free tier, otherwise must be between 60 and 1209600 [number]"
`);
});

Expand Down
6 changes: 2 additions & 4 deletions packages/wrangler/src/queues/cli/commands/create.ts
Original file line number Diff line number Diff line change
Expand Up @@ -31,14 +31,12 @@ export const queuesCreateCommand = createCommand({
"delivery-delay-secs": {
type: "number",
describe:
"How long a published message should be delayed for, in seconds. Must be between 0 and 42300",
default: 0,
"How long a published message should be delayed for, in seconds. Must be between 0 and 43200",
},
"message-retention-period-secs": {
type: "number",
describe:
"How long to retain a message in the queue, in seconds. Must be between 60 and 1209600",
default: 345600,
"How long to retain a message in the queue, in seconds. Must be between 60 and 86400 if on free tier, otherwise must be between 60 and 1209600",
},
},
positionalArgs: ["name"],
Expand Down
4 changes: 2 additions & 2 deletions packages/wrangler/src/queues/cli/commands/update.ts
Original file line number Diff line number Diff line change
Expand Up @@ -26,12 +26,12 @@ export const queuesUpdateCommand = createCommand({
"delivery-delay-secs": {
type: "number",
describe:
"How long a published message should be delayed for, in seconds. Must be between 0 and 42300",
"How long a published message should be delayed for, in seconds. Must be between 0 and 43200",
},
"message-retention-period-secs": {
type: "number",
describe:
"How long to retain a message in the queue, in seconds. Must be between 60 and 1209600",
"How long to retain a message in the queue, in seconds. Must be between 60 and 86400 if on free tier, otherwise must be between 60 and 1209600",
},
},
positionalArgs: ["name"],
Expand Down
Loading