You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: src/ipips/ipip-0499.md
+6-1Lines changed: 6 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -57,8 +57,9 @@ Here is the complete set of UnixFS parameters that affect the resulting string e
57
57
1. Whether hidden entities (including dot files) are included in the DAG. Some implementations may apply filtering.
58
58
1. Directory wrapping for single files: in order to retain the name of a single file, some implementations have the option to wrap the file in a `Directory` with link to the file.
59
59
1. Presence and accurate setting of `Tsize`.
60
+
1. Symlink handling: preserved as UnixFS Type=4 nodes, or followed (dereferenced to target).
60
61
61
-
The handling of symlinks and symlink follows is defined by the [UnixFS](https://specs.ipfs.tech/unixfs/)spec.
62
+
The [UnixFS spec](https://specs.ipfs.tech/unixfs/)defines Type=4 for symlinks with target path stored in the Data field.
62
63
63
64
## CID profiles
64
65
@@ -79,6 +80,7 @@ The initial profile in the series, **`unixfs-2025`**, captures the baseline defa
79
80
| Leaves | raw |
80
81
| Empty directories | TODO (kubo needs opt-out flag) |
81
82
| Hidden entities | TODO |
83
+
| Symlinks | TODO (preserved?) |
82
84
83
85
## Legacy profiles
84
86
@@ -98,12 +100,15 @@ We also define a series of **legacy profiles**, used by various implementations
98
100
| Leaves | dag-pb | raw | raw | raw | raw | not specified |
99
101
| Empty directories | included | included | excluded | included | included | not specified |
| Symlinks | preserved | followed | followed | preserved | preserved | not specified |
101
104
102
105
**Terminology:**
103
106
-`included`: Always included in the DAG (no option to exclude)
104
107
-`excluded`: Always excluded from the DAG (no option to include)
105
108
-`opt-in`: Excluded by default; implementations provide a flag to include (e.g., `--hidden` in Kubo/Storacha, `hidden: true` in Helia)
106
109
-`opt-out`: Included by default; implementations provide a flag to exclude
110
+
-`preserved`: Symlinks stored as UnixFS Type=4 nodes with target path (per [UnixFS spec](https://specs.ipfs.tech/unixfs/)). Note: Kubo (v0.39) `--dereference-args` only follows symlinks passed as CLI arguments; symlinks found during recursive traversal are always preserved.
111
+
-`followed`: Symlinks dereferenced and treated as target files/directories
107
112
108
113
See related discussion at https://discuss.ipfs.tech/t/should-we-profile-cids/18507/
0 commit comments