bevyengine / bevyengine/bevy-website

Building website is not deterministic

Open
#957 0 comments 0 reactions 0 assignees View on GitHub
A-Build-System C-Bug
Dominant language
JavaScript
Stars
249
Forks
450
Avg merge
16h 20m
Merged PRs (30d)
6

Description

Determinism is a property that allows you to reproduce the exact same website given the exact same files. This would be useful when comparing the effect of changes, since you could run:

```shell
$ zola build --output-dir public-old
$ git switch new-branch
$ zola build --output-dir public-new
$ diff --recursive public-old public-new
```

This currently does not work because random whitespace is inserted by Zola every build, without ever changing the files. To reproduce, run the above command but without switching to a different branch.

The main reason I wanted this is because it could help me review the changes made in #862.

Contributor guide

Open the contributing guide

Research direction

Reproduce the issue with the two `zola build --output-dir` commands from the report, without switching branches, and compare the generated directories recursively. Trace the website build inputs and Zola output to identify where whitespace changes between identical builds; done means repeated builds from the same files produce identical output.

Written by the indexing model from the issue text.

Assessment

Domain
build-system, web-dev
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.