chadtmiller.com/pds.js
An atproto PDS in JavaScript, for Cloudflare Workers and Node
0
0
# @pdsjs/readonly
## 2.5.2
### Patch Changes
- Updated dependencies
- @pdsjs/core@2.5.2
- @pdsjs/storage-sqlite@2.5.2
- @pdsjs/blobs-fs@2.5.2
## 2.5.1
### Patch Changes
- Updated dependencies [542c4dc]
- @pdsjs/core@2.5.1
- @pdsjs/storage-sqlite@2.5.1
- @pdsjs/blobs-fs@2.5.1
## 2.5.0
### Patch Changes
- Updated dependencies [d66fcff]
- Updated dependencies [05a11b4]
- Updated dependencies [f79dd82]
- Updated dependencies [e0b38cd]
- Updated dependencies [cc4577b]
- Updated dependencies [7c06024]
- Updated dependencies [6935a55]
- Updated dependencies [15c69af]
- Updated dependencies [411b47b]
- Updated dependencies [861663f]
- Updated dependencies [154e7d7]
- Updated dependencies [10c91f6]
- Updated dependencies [77eb9db]
- Updated dependencies [76f5187]
- Updated dependencies [b51250e]
- Updated dependencies [799286b]
- Updated dependencies [4adc49e]
- Updated dependencies [9149663]
- Updated dependencies [fd401a4]
- Updated dependencies [93816a1]
- Updated dependencies [3d475f8]
- Updated dependencies [078c2df]
- Updated dependencies [d5f111c]
- @pdsjs/core@2.5.0
- @pdsjs/storage-sqlite@2.5.0
- @pdsjs/blobs-fs@2.5.0
## 2.4.3
### Patch Changes
- Updated dependencies [d307f57]
- Updated dependencies [2d0d653]
- @pdsjs/core@2.4.3
- @pdsjs/storage-sqlite@2.4.3
- @pdsjs/blobs-fs@2.4.3
## 2.4.2
### Patch Changes
- Updated dependencies [c235e96]
- @pdsjs/core@2.4.2
- @pdsjs/storage-sqlite@2.4.2
- @pdsjs/blobs-fs@2.4.2
## 2.4.1
### Patch Changes
- Updated dependencies [fa1558c]
- @pdsjs/core@2.4.1
- @pdsjs/storage-sqlite@2.4.1
- @pdsjs/blobs-fs@2.4.1
## 2.4.0
### Patch Changes
- Updated dependencies [ee6d696]
- Updated dependencies [54bec84]
- Updated dependencies [f716d9d]
- Updated dependencies [4c334b3]
- Updated dependencies [6b79149]
- Updated dependencies [8616855]
- Updated dependencies [af8b1fd]
- @pdsjs/core@2.4.0
- @pdsjs/blobs-fs@2.4.0
- @pdsjs/storage-sqlite@2.4.0
## 2.3.0
### Patch Changes
- c541c98: The account password can be changed from the security page. The configured
password (PDS_PASSWORD) seeds a fresh server; a change stores a hash in
actor storage and wins from then on. Setting a different configured
password afterwards is the operator's reset: it wins over the stored hash,
which is the recovery path when the password is lost. The change endpoint
takes the current password even inside a signed-in session. Open sessions
and app passwords stay valid through a change.
- f8e3dff: Private repositories in the account page, and a blob privacy fix. The
repositories page lists space-held repos with a Private badge, browses their
files, and manages the space's members; a New repository dialog creates the
space behind a private repo and shows the push commands. The public
`com.atproto.sync.getBlob` and `sync.listBlobs` endpoints no longer serve or
list a blob that only space records reference; `com.atproto.space.getBlob`
remains the authenticated path to those.
- Updated dependencies [232a280]
- Updated dependencies [c541c98]
- Updated dependencies [f8e3dff]
- Updated dependencies [bdad8c4]
- Updated dependencies [51d6402]
- Updated dependencies [d8cae21]
- Updated dependencies [d8cae21]
- Updated dependencies [24c9e1e]
- Updated dependencies [035450d]
- Updated dependencies [3920c52]
- Updated dependencies [585139b]
- Updated dependencies [5125583]
- @pdsjs/core@2.3.0
- @pdsjs/storage-sqlite@2.3.0
- @pdsjs/blobs-fs@2.3.0
## 2.2.0
### Minor Changes
- f800d5a: A Files page in the account UI: every blob the account holds, with the
records that use it.
The page opens with a storage bar — bytes by media kind, one fixed hue per
kind, doubling as a filter — and chips for kind, app, and "not used", all
combinable with a Newest/Largest sort. Filters run server-side with keyset
pagination and live in the URL. Filtered to images, the list becomes a
thumbnail grid with details in a dialog. On phones the chip rows scroll
sideways with sort pinned in view.
Dates mean when the content was made, not when the bytes arrived: each
blob→record link now stores the record's own timestamp (any top-level
ISO-dated field, earliest wins, window-checked so a birthday or a scheduled
future date never counts), falling back to the record's TID time and then to
arrival here. A file only dated by arrival reads "Stored". On a migrated
repo this keeps the original post order, where arrival time would collapse
everything onto the migration date.
Behind it, `ActorStoragePort` grows optional `listBlobDetails` and
`getBlobFacets` methods, implemented for better-sqlite3 and Durable Object
SQLite from one shared builder (`@pdsjs/core/blob-sql`), and
`linkBlobToRecord` takes the record time. The `record_blobs` table self-heals:
`relinkBlobRecords()` rebuilds links and times from record content on CAR
import, on the daily blob cleanup, and on demand via the page's "Recheck
usage" action (POST /account/api/blobs/relink) — so an imported repo's files
stop reading as unused. The overview's blob count uses the exact aggregate
instead of the capped page-through when the storage supports it.
### Patch Changes
- Updated dependencies [261d4f4]
- Updated dependencies [dfce920]
- Updated dependencies [dfcf1cc]
- Updated dependencies [99c414f]
- Updated dependencies [261d4f4]
- Updated dependencies [218f25c]
- Updated dependencies [1b8cd1e]
- Updated dependencies [f2df586]
- Updated dependencies [e761cdb]
- Updated dependencies [d679bf1]
- Updated dependencies [fd33b13]
- Updated dependencies [d88b21d]
- Updated dependencies [8ce9621]
- Updated dependencies [faceaf7]
- Updated dependencies [bc5314a]
- Updated dependencies [f800d5a]
- Updated dependencies [eeb7976]
- Updated dependencies [b368c19]
- Updated dependencies [44bd2b5]
- Updated dependencies [6e47bc6]
- Updated dependencies [5a39d42]
- Updated dependencies [72965f8]
- Updated dependencies [09e110d]
- Updated dependencies [098af68]
- Updated dependencies [7898894]
- Updated dependencies [378e2bb]
- Updated dependencies [4363389]
- Updated dependencies [011e28d]
- Updated dependencies [4169189]
- Updated dependencies [ee386d7]
- Updated dependencies [8cbae75]
- Updated dependencies [4363389]
- Updated dependencies [4a9943d]
- Updated dependencies [9abf6d6]
- Updated dependencies [9524139]
- Updated dependencies [62dc25a]
- Updated dependencies [8d62485]
- Updated dependencies [f1c6639]
- Updated dependencies [224cb48]
- Updated dependencies [5a39d42]
- Updated dependencies [fd54c7d]
- Updated dependencies [67387fe]
- Updated dependencies [1852faf]
- Updated dependencies [9ceb6ad]
- Updated dependencies [e628859]
- @pdsjs/core@2.2.0
- @pdsjs/storage-sqlite@2.2.0
- @pdsjs/blobs-fs@2.2.0
## 2.1.0
### Patch Changes
- Updated dependencies [8ac38c1]
- Updated dependencies [f5335a0]
- @pdsjs/core@2.1.0
- @pdsjs/storage-sqlite@2.1.0
- @pdsjs/blobs-fs@2.1.0
## 2.0.0
### Patch Changes
- Updated dependencies [62c6521]
- Updated dependencies [13e3049]
- @pdsjs/core@2.0.0
- @pdsjs/storage-sqlite@2.0.0
- @pdsjs/blobs-fs@2.0.0
## 1.0.2
### Patch Changes
- Updated dependencies
- @pdsjs/core@1.0.2
- @pdsjs/storage-sqlite@1.0.2
- @pdsjs/blobs-fs@1.0.2
## 1.0.1
### Patch Changes
- Updated dependencies [de2ceed]
- @pdsjs/core@1.0.1
- @pdsjs/storage-sqlite@1.0.1
- @pdsjs/blobs-fs@1.0.1
## 1.0.0
### Patch Changes
- Updated dependencies [3b7895c]
- @pdsjs/core@1.0.0
- @pdsjs/storage-sqlite@1.0.0
- @pdsjs/blobs-fs@1.0.0