@lossless.org/objectstorage 10.7.0 → 10.7.1

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.
Binary file
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "format": "tsrust.build-provenance.v2",
3
- "binarySha256": "1db5e49ed9857fbea1e3d3298c447129580d273d94b927d92159819ce85c2fd9",
3
+ "binarySha256": "9841eb22a91b762d816707e1d1ad7958f1fe7bdb8f810bdc59c8eca4c71a4f23",
4
4
  "buildInfo": {
5
5
  "projectName": "@lossless.org/objectstorage",
6
- "projectVersion": "10.7.0",
7
- "gitCommit": "a4a276bb852a2d81a3a8bdedee80fe4748a8b319",
6
+ "projectVersion": "10.7.1",
7
+ "gitCommit": "375f3c1cdc3fb34abe9a71a7b335832430417f98",
8
8
  "gitDirty": false,
9
- "builtAt": "2026-10-14T01:21:25.465Z",
9
+ "builtAt": "2026-10-14T17:51:00.129Z",
10
10
  "tsrustVersion": "4.5.1",
11
11
  "binary": "ruststorage",
12
12
  "target": "linux_amd64"
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "format": "tsrust.build-provenance.v2",
3
- "binarySha256": "b0da2b5d3cf5b0ff9d1f07b45042478066f1e9495db903c61a059f2443bbb7e3",
3
+ "binarySha256": "f6a034096bfe5f5d27a95772a12af4cb1ca81e0bea801d1038259a0d2c641bf8",
4
4
  "buildInfo": {
5
5
  "projectName": "@lossless.org/objectstorage",
6
- "projectVersion": "10.7.0",
7
- "gitCommit": "a4a276bb852a2d81a3a8bdedee80fe4748a8b319",
6
+ "projectVersion": "10.7.1",
7
+ "gitCommit": "375f3c1cdc3fb34abe9a71a7b335832430417f98",
8
8
  "gitDirty": false,
9
- "builtAt": "2026-10-14T01:21:26.644Z",
9
+ "builtAt": "2026-10-14T17:51:01.751Z",
10
10
  "tsrustVersion": "4.5.1",
11
11
  "binary": "ruststorage",
12
12
  "target": "linux_amd64_musl"
Binary file
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "format": "tsrust.build-provenance.v2",
3
- "binarySha256": "61f0ee887b3a8f69b3c19a86de1264304d69a446bdc85444870a4439978494a5",
3
+ "binarySha256": "067d82cbb87353ae47c3df994618aff871767c773aac883aa92d441095431045",
4
4
  "buildInfo": {
5
5
  "projectName": "@lossless.org/objectstorage",
6
- "projectVersion": "10.7.0",
7
- "gitCommit": "a4a276bb852a2d81a3a8bdedee80fe4748a8b319",
6
+ "projectVersion": "10.7.1",
7
+ "gitCommit": "375f3c1cdc3fb34abe9a71a7b335832430417f98",
8
8
  "gitDirty": false,
9
- "builtAt": "2026-10-14T01:21:26.065Z",
9
+ "builtAt": "2026-10-14T17:51:00.918Z",
10
10
  "tsrustVersion": "4.5.1",
11
11
  "binary": "ruststorage",
12
12
  "target": "linux_arm64"
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "format": "tsrust.build-provenance.v2",
3
- "binarySha256": "c6622111e393261c6858c756f15c69131374bf440c4d5d4b1b8657540bd264cd",
3
+ "binarySha256": "235a10fb515965f293520c649b298704a9be3abbad618765b8258b4911c6b767",
4
4
  "buildInfo": {
5
5
  "projectName": "@lossless.org/objectstorage",
6
- "projectVersion": "10.7.0",
7
- "gitCommit": "a4a276bb852a2d81a3a8bdedee80fe4748a8b319",
6
+ "projectVersion": "10.7.1",
7
+ "gitCommit": "375f3c1cdc3fb34abe9a71a7b335832430417f98",
8
8
  "gitDirty": false,
9
- "builtAt": "2026-10-14T01:21:27.150Z",
9
+ "builtAt": "2026-10-14T17:51:02.424Z",
10
10
  "tsrustVersion": "4.5.1",
11
11
  "binary": "ruststorage",
12
12
  "target": "linux_arm64_musl"
Binary file
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "format": "tsrust.build-provenance.v2",
3
- "binarySha256": "a61dec7b20e1b2f47a4d23924e997109adfe21f3beef66e0b198b19e0bf29419",
3
+ "binarySha256": "326b74e415950f73198706d35bdb1ecca48dd5a2344f015e80c5228c3a0fc87c",
4
4
  "buildInfo": {
5
5
  "projectName": "@lossless.org/objectstorage",
6
- "projectVersion": "10.7.0",
7
- "gitCommit": "a4a276bb852a2d81a3a8bdedee80fe4748a8b319",
6
+ "projectVersion": "10.7.1",
7
+ "gitCommit": "375f3c1cdc3fb34abe9a71a7b335832430417f98",
8
8
  "gitDirty": false,
9
- "builtAt": "2026-10-14T01:32:16.713Z",
9
+ "builtAt": "2026-10-14T18:03:24.210Z",
10
10
  "tsrustVersion": "4.5.1",
11
11
  "binary": "ruststorage",
12
12
  "target": "macos_amd64"
Binary file
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "format": "tsrust.build-provenance.v2",
3
- "binarySha256": "90ccf74fea89d47d507354bd3fb4673d2b8b33a82bcf714bd8f9a390e45ac25b",
3
+ "binarySha256": "975efecbbd161d33b33e9ed59bd79da3748a2110efdd002ee7bbe255dd27b310",
4
4
  "buildInfo": {
5
5
  "projectName": "@lossless.org/objectstorage",
6
- "projectVersion": "10.7.0",
7
- "gitCommit": "a4a276bb852a2d81a3a8bdedee80fe4748a8b319",
6
+ "projectVersion": "10.7.1",
7
+ "gitCommit": "375f3c1cdc3fb34abe9a71a7b335832430417f98",
8
8
  "gitDirty": false,
9
- "builtAt": "2026-10-14T01:32:17.538Z",
9
+ "builtAt": "2026-10-14T18:03:24.893Z",
10
10
  "tsrustVersion": "4.5.1",
11
11
  "binary": "ruststorage",
12
12
  "target": "macos_arm64"
@@ -3,7 +3,7 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@lossless.org/objectstorage',
6
- version: '10.7.0',
6
+ version: '10.7.1',
7
7
  description: 'A Node.js TypeScript package to create a local S3-compatible storage server using mapped local directories for development and testing purposes.'
8
8
  };
9
9
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSw2QkFBNkI7SUFDbkMsT0FBTyxFQUFFLFFBQVE7SUFDakIsV0FBVyxFQUFFLGtKQUFrSjtDQUNoSyxDQUFBIn0=
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lossless.org/objectstorage",
3
- "version": "10.7.0",
3
+ "version": "10.7.1",
4
4
  "private": false,
5
5
  "description": "A Node.js TypeScript package to create a local S3-compatible storage server using mapped local directories for development and testing purposes.",
6
6
  "main": "dist_ts/index.js",
@@ -11,10 +11,10 @@
11
11
  "devDependencies": {
12
12
  "@aws-sdk/client-s3": "^3.1039.0",
13
13
  "@git.zone/tsbuild": "^6.0.2",
14
- "@git.zone/tsbundle": "^3.2.1",
14
+ "@git.zone/tsbundle": "^3.3.0",
15
15
  "@git.zone/tsrun": "^3.0.3",
16
16
  "@git.zone/tsrust": "^4.5.1",
17
- "@git.zone/tstest": "^7.2.1",
17
+ "@git.zone/tstest": "^8.0.0",
18
18
  "@push.rocks/smartbucket": "^4.10.0",
19
19
  "@types/node": "26.6.4"
20
20
  },
package/readme.md CHANGED
@@ -1153,8 +1153,8 @@ the scanned bucket and leaf counts, the total `orphanCount`, and up to
1153
1153
  `reportLimit` orphans with bucket, decoded key, leaf path and the leaf's first
1154
1154
  entry names.
1155
1155
 
1156
- An orphan leaf makes reads, writes and deletes of its key and every listing of
1157
- its bucket fail. A server startup removes empty orphan leaves; a leaf that
1156
+ An orphan leaf makes reads, writes and deletes of its key fail, and every
1157
+ listing of its bucket whose prefix and cursor range covers the key. A server startup removes empty orphan leaves; a leaf that
1158
1158
  still holds sidecar files stays in place until it is repaired.
1159
1159
 
1160
1160
  Engines before 10.7.0 create a key's leaf before its upload body is complete,
@@ -1493,6 +1493,11 @@ those versions cannot read the canonical v2 objects.
1493
1493
  ListObjects pages identically in standalone and cluster mode, because both
1494
1494
  backends assemble a page through the same builder.
1495
1495
 
1496
+ A standalone listing walks only the part of the bucket its prefix and cursor
1497
+ can reach, and blocks only writes to the listed bucket while it walks: reads
1498
+ of every bucket, writes to other buckets and other listings of the same bucket
1499
+ proceed. A listing without a prefix still walks the whole bucket.
1500
+
1496
1501
  **ListObjectsV2** (`?list-type=2`) reads `prefix`, `delimiter`, `max-keys`,
1497
1502
  `continuation-token` and `start-after`. Both cursors are exclusive: listing
1498
1503
  resumes strictly after the named key. A request may carry both; the
@@ -1549,6 +1554,16 @@ bucket with `IsTruncated` false.
1549
1554
  # key leaf appears only with the complete payload
1550
1555
  ```
1551
1556
 
1557
+ Rolling a standalone root back from 10.7.0 or later to 8.0.3–10.6.0: a crash
1558
+ between staging and publication of a PUT, CopyObject or CompleteMultipartUpload
1559
+ can leave a staged leaf directory
1560
+ `.smartstorage/staging/v1/.smartstorage-<uuid>.object.tmp.leaf/`. Startup of
1561
+ 10.7.0 or later removes it; 8.0.3–10.6.0 refuse to start with "Standalone
1562
+ staging directory contains an unowned entry". Start and stop the newer engine
1563
+ once on the root before rolling back. If it cannot start, back up the root and
1564
+ then remove only those `*.object.tmp.leaf` directories: they hold payloads that
1565
+ were never published.
1566
+
1552
1567
  **Cluster mode:**
1553
1568
  ```
1554
1569
  {storage.directory}/
@@ -3,6 +3,6 @@
3
3
  */
4
4
  export const commitinfo = {
5
5
  name: '@lossless.org/objectstorage',
6
- version: '10.7.0',
6
+ version: '10.7.1',
7
7
  description: 'A Node.js TypeScript package to create a local S3-compatible storage server using mapped local directories for development and testing purposes.'
8
8
  }