TAR to TXT — a package manifest short enough to quote in a release note
A changelog should say what a package carries. Reading a tarball by hand gives you verbose listing output that nobody pastes into a note. This route reads the tar entry by entry in the browser tab and writes a plain manifest: one line per entry with its name, kind and uncompressed byte count. Payloads are not unpacked, nothing is uploaded, and the manifest has a hard length limit that is stated when it is reached.
tar mode bits, owner and group names are not carried into ZIP; directories are written as empty entries.
Processed on your device. Files aren’t sent anywhere.
The manifest for a written note
Three fields per line, in tar order by default or sorted by name when the note needs an alphabetical list.
| Field | Interpretation |
|---|---|
| name | the member path recorded in the tar header |
| kind | file, or directory |
| bytes | member payload length, excluding the TAR header and block padding |
How the cap behaves on a large tar
The listing stops at 200000 characters and appends a marker saying it was truncated. A quoted manifest that ends with a marker is still useful, but you must not present it as complete.
The reader accepts at most 200 entries and 8 MiB per member inside a TAR of at most 12 MiB. Plain TAR is not decompressed. Shared archive payload bounds are checked, while the separate listing character cap controls the downloaded text.
Building the manifest
A portable project bundle is usually the input, and the note is the output.
- Hand the .tar to the archive studio; a single file, maximum 12 MiB.
- Choose TXT as the target and pick entry order.
- Scan for directories the package should not carry, such as a vendor folder.
- Quote the lines the changelog needs, and state that byte values are uncompressed.
- Add a note about the manifest being partial if a truncation marker is present.
- Use the JSON inventory route when a script, rather than a reader, needs the same data.
What the manifest cannot tell you
- It does not include file contents, hashes or modification times.
- Timestamps, permissions, owners, comments and extra fields cannot be reconstructed.
- It does not extract members to folders; no member files are automatically extracted; only the generated download is saved if you choose.
- It does not classify content or identify malware.
- A tar with a symlink, hardlink, device entry, PAX or GNU extended header, traversal or duplicate path, or a non-UTF8 name is rejected with a named error instead of listed.
Names and sizes answer what the package carries; contents answer what the files say.
The distinction a manifest preserves