@procedures/archive 0.7.0 → 0.8.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.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,24 @@
1
1
  # @procedures/archive
2
2
 
3
+ ## 0.8.0
4
+
5
+ ### Patch Changes
6
+
7
+ - 90ea741: The root of `createArchiveModule({ root })` uses the rules of `@procedures/fs/root`, so the package has no copy of them. The procedures declare their path inputs in `metadata.fsRoot`, so the root of a host (`confineToRoot()`) confines them too (roadmap R33).
8
+ - Updated dependencies [4b09a03]
9
+ - Updated dependencies [4b09a03]
10
+ - Updated dependencies [aa6e3aa]
11
+ - Updated dependencies [698e24d]
12
+ - Updated dependencies [4b09a03]
13
+ - Updated dependencies [600c497]
14
+ - Updated dependencies [7c2e7f7]
15
+ - Updated dependencies [90ea741]
16
+ - Updated dependencies [90ea741]
17
+ - Updated dependencies [c4cfa34]
18
+ - Updated dependencies [d25805a]
19
+ - @procedures/client@0.8.0
20
+ - @procedures/fs@0.8.0
21
+
3
22
  ## 0.7.0
4
23
 
5
24
  ### Patch Changes
package/README.md CHANGED
@@ -46,7 +46,7 @@ The extract reads all the entries first. It refuses the archive, and writes noth
46
46
 
47
47
  ## The root
48
48
 
49
- Without a root, the procedures read and write each path that the process can reach. `createArchiveModule({ root })` confines each path of the inputs to one folder (roadmap R33). The rules are the rules of `createFsModule({ root })` of `@procedures/fs`:
49
+ Without a root, the procedures read and write each path that the process can reach. `createArchiveModule({ root })` confines each path of the inputs to one folder (roadmap R33). The rules are the rules of `createFsModule({ root })` of `@procedures/fs`. The package imports them from `@procedures/fs/root`, so the two packages have one copy of the rules:
50
50
 
51
51
  ```ts
52
52
  import { createRegistry } from "@procedures/client";
@@ -64,6 +64,14 @@ const registry = createRegistry(createArchiveModule({ root: "/srv/files" }));
64
64
  - A relative root starts at the working folder of the process. The root must exist when a call starts.
65
65
  - `isOutsideRoot(error)` tells the refusal of the root. On Windows, the comparison ignores the case of the letters.
66
66
 
67
+ A host with a root (`mark --fs-root`, `procedure-server --fs-root`, `MCP_FS_ROOT`) does not need `createArchiveModule({ root })`. Its `confineToRoot()` reads the rules in `metadata.fsRoot` of each procedure:
68
+
69
+ | Procedure | The inputs that the root examines |
70
+ |---|---|
71
+ | `archive.create` | `output` and `source` (from the root), `cwd` (the default is the root), and each name of `files` (from `cwd`) |
72
+ | `archive.extract` | `archive` and `target` |
73
+ | `archive.list` | `archive` |
74
+
67
75
  ## Limits
68
76
 
69
77
  | Option | Meaning |