Skip to content

Commit d06d9e4

Browse files
committed
chore: update README
1 parent 5879940 commit d06d9e4

File tree

1 file changed

+17
-1
lines changed

1 file changed

+17
-1
lines changed

README.md

Lines changed: 17 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,10 +38,26 @@ One of the following must be specified:
3838
- `--output-dir`: The output directory for the final zip file. The name of the zip file will be based on the project's
3939
name in the `pyproject.toml` file (with dashes replaced with underscores).
4040

41-
## A Note on Reproducibility
41+
## Notes on Reproducibility
42+
43+
### Timestamps
4244

4345
The ZIP files generated adhere with [reproducible builds](https://reproducible-builds.org/docs/archives/). This means that file permissions and timestamps are modified inside the ZIP, such that the ZIP will have a deterministic hash. By default, the date is set to `1980-01-01`.
4446

4547
Additionally, the tool respects the standardized `$SOURCE_DATE_EPOCH` [environment variable](https://reproducible-builds.org/docs/source-date-epoch/), which will allow you to set that date as needed.
4648

4749
One important caveat is that ZIP files do not support files with timestamps earlier than `1980-01-01` inside them, due to MS-DOS compatibility. Therefore, the tool will throw a `SourceDateEpochError` is `$SOURCE_DATE_EPOCH` is below `315532800`.
50+
51+
### Files with embedded full paths
52+
53+
In testing, we found that several file types can leak information from the machine that generated the virtual environment.
54+
55+
To get around this, the tool removes the following files:
56+
57+
```gitignore
58+
**/__pycache/
59+
**/*.pyc
60+
**/*.pyo
61+
**/*dist-info/direct_url.json
62+
**/*dist-info/RECORD
63+
```

0 commit comments

Comments
 (0)