From 73e91fd8c0b16e117826d5cd1e806f10d8ff7f97 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Mart=C3=AD?= Date: Mon, 21 Feb 2022 09:53:06 +0000 Subject: [PATCH] README: clarify that the first "garble build" may be slow The section said that "garble build" should take about twice as long as "go build", which is typically true, with the glaring exception that is the first "garble build" after normal use of "go build". This scenario will be rather common for first-time users, and the difference will be most noticeable with large projects. A large build may take about a second to rebuild with a warm cache, but could take tens or even hundreds of seconds to rebuild from scratch. See #479. --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index ad67e24..ebd4455 100644 --- a/README.md +++ b/README.md @@ -87,6 +87,10 @@ Garble obfuscates one package at a time, mirroring how Go compiles one package at a time. This allows Garble to fully support Go's build cache; incremental `garble build` calls should only re-build and re-obfuscate modified code. +Note that the first call to `garble build` may be comparatively slow, +as it has to obfuscate each package for the first time. This is akin to clearing +`GOCACHE` with `go clean -cache` and running a `go build` from scratch. + ### Determinism and seeds Just like Go, garble builds are deterministic and reproducible if the inputs