@bumail/queue 0.4.0 → 0.4.2

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 (2) hide show
  1. package/docs/roadmap.md +6 -18
  2. package/package.json +3 -3
package/docs/roadmap.md CHANGED
@@ -6,24 +6,10 @@ only number on it.
6
6
 
7
7
  ## Now
8
8
 
9
- Nothing in progress: the MongoDB store, first under Next, is the next
10
- one taken. The Redis store shipped in 0.3.0 (see Shipped).
9
+ Nothing in progress. The Redis store shipped in 0.3.0 (see Shipped).
11
10
 
12
11
  ## Next
13
12
 
14
- More answers to the `QueueStore` contract, built for several instances of
15
- a server sharing one queue — each claim atomic across them, each lease
16
- taken back from an instance that crashed — and each held to the same
17
- contract specs as the memory, `bun:sqlite`, PostgreSQL and Redis
18
- stores. None adds a dependency.
19
-
20
- - **A MongoDB store** — the contract answered structurally, against a
21
- collection of the shape a MongoDB driver gives, so the package peers on
22
- no driver: the application passes in its own collection; the claim a
23
- `findOneAndUpdate`.
24
-
25
- Then:
26
-
27
13
  - **MTA-STS (RFC 8461) and TLS-RPT (RFC 8460)** — a recipient domain's
28
14
  policy fetched, cached and enforced, `mxTls: 'required'` with the
29
15
  certificate checked against the policy's MX names, and the reports.
@@ -53,8 +39,10 @@ Then:
53
39
 
54
40
  - **A runtime dependency.** The memory store needs none, the `bun:sqlite`
55
41
  store uses Bun's own SQLite, the PostgreSQL store Bun's own `Bun.sql`,
56
- the Redis store Bun's own `Bun.redis`, and the MongoDB store will take
57
- the application's own collection, typed by its shape.
42
+ and the Redis store Bun's own `Bun.redis`.
43
+ - **A MongoDB store.** Several instances share one queue through
44
+ PostgreSQL, the database the mail store already needs for them, or
45
+ through Redis; a MongoDB store would add nothing a deployment lacks.
58
46
  - **Relaying on its own.** The queue sends what the app enqueues; who may
59
47
  send is decided before, by the SMTP server's AUTH or the app. No option
60
48
  will make the queue accept mail from the network.
@@ -63,7 +51,7 @@ Then:
63
51
 
64
52
  ## Shipped
65
53
 
66
- ### Unreleased — merged, not yet published
54
+ ### 0.4.0
67
55
 
68
56
  - **The PostgreSQL store's writes run at `READ COMMITTED`** — whatever
69
57
  the client's sessions default to, so a client shared with code that
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bumail/queue",
3
- "version": "0.4.0",
3
+ "version": "0.4.2",
4
4
  "description": "The outbound mail queue of a mail server: every recipient's state, retries with back-off, delivery status notifications (RFC 3464), leases for several workers, and a memory, a bun:sqlite, a PostgreSQL (Bun.sql) and a Redis (Bun.redis) store, delivering through @bumail/smtp/client",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -67,12 +67,12 @@
67
67
  "devDependencies": {
68
68
  "@bumail/dns": "^0.1.1",
69
69
  "@bumail/mime": "^0.1.2",
70
- "@bumail/smtp": "^0.3.0",
70
+ "@bumail/smtp": "^0.5.0",
71
71
  "@types/bun": "^1.4.2"
72
72
  },
73
73
  "peerDependencies": {
74
74
  "@bumail/mime": "^0.1.2",
75
- "@bumail/smtp": "^0.3.0",
75
+ "@bumail/smtp": "^0.5.0",
76
76
  "typescript": "^6.0.3 || ^7.0.0"
77
77
  },
78
78
  "peerDependenciesMeta": {