diff --git a/comment_on_pr.sh b/comment_on_pr.sh index a36bcdb..e96c881 100755 --- a/comment_on_pr.sh +++ b/comment_on_pr.sh @@ -39,39 +39,39 @@ has_elements() { # If BASE_REPORT is provided, a comparison will be made markdown_from_report() { cat <<-"EOF" - + - # Flake output sizes +# Flake output sizes -
Definitions: +
Definitions: - - `Name`: the name of the package/configuration. - - `Size`: the closure size (size on disk/NAR size + all transitive dependencies). - - `NAR Size`: the size of the build output (package without the dependencies). +- `Name`: the name of the package/configuration. +- `Size`: the closure size (size on disk/NAR size + all transitive dependencies). +- `NAR Size`: the size of the build output (package without the dependencies). EOF if [ "${2+set}" = "set" ]; then cat <<-"EOF" - - `[NAR] Size Change`: the amount changed compared to the main branch. +- `[NAR] Size Change`: the amount changed compared to the main branch. -
+
EOF else cat <<-"EOF" - + EOF fi cat <<-"EOF" -
Tips on reading this data: +
Tips on reading this data: - - For NixOS configurations you generally care only about the `Size` (closure size/size on disk). - - Reduce the `Size` by disabling unneeded services/default packages. - - For Packages you care about both the `Size` and the `NAR Size`. - - Reduce the `NAR Size` by reducing the size of the build outputs, e.g. don't copy unnecessary data to the $out dir, optimize binaries for size, etc. - - Reduce the `Size` by reducing the dependencies (e.g. `buildInputs`). - - Don't worry too much about size, some dependencies are deduplicated, e.g. `glibc` adds ~40MiB to the `Size`, but is generally shared by ~every binary on the system, so, chances are, you are already including it from somewhere else and statically linking with e.g. `musl` is not gonna improve things. +- For NixOS configurations you generally care only about the `Size` (closure size/size on disk). + - Reduce the `Size` by disabling unneeded services/default packages. +- For Packages you care about both the `Size` and the `NAR Size`. + - Reduce the `NAR Size` by reducing the size of the build outputs, e.g. don't copy unnecessary data to the $out dir, optimize binaries for size, etc. + - Reduce the `Size` by reducing the dependencies (e.g. `buildInputs`). + - Don't worry too much about size, some dependencies are deduplicated, e.g. `glibc` adds ~40MiB to the `Size`, but is generally shared by ~every binary on the system, so, chances are, you are already including it from somewhere else and statically linking with e.g. `musl` is not gonna improve things. -
+
EOF if [ "${2+set}" = "set" ]; then