On 2023-11-08, Felix Lechner via wrote: > On Wed, Nov 08 2023, Maxim Cournoyer wrote: >> A source tree doesn't produce a derivation. A derivation is the >> complete build recipe that captures the source and the package >> definition, that when built by the daemon produces a store item. > > Okay, thanks! Now I'm going to get it right: > > The store item that is produced should not change whether build-time > tests run or not. > > It does not make sense (and wastes resources) to rebuild a consuming > package because build-time tests were enabled or disabled in an input. > > The historical version of openssl gave rise to this thread. It did not > build anymore because the tests no longer worked with the certificates > shipped in that release (a common problem in TLS libraries). Rebuilding > openssl without running the tests rendered the rebuild useless because > it produced a different store item. That should not happen. > > Does that make more sense?
I do not really think people are misunderstanding you, more that your *should* does not align with reality in a way that guix can depend on; build-time tests *do* affect the build result in some cases. You can write tests that can be run outside the build environment, like Debian's autopkgtest, but those may need to actually be different tests and most upstreams do not provide them yet... The only way to ensure they do not change the build results is even more resource-intensive; systematically run the build without tests and then run the build with tests and compare the store items... assuming the build is reproducible in the first place, which is not yet 100% reliable either, unfortunately. This does seem well outside the context of help-guix (drop from CC in replies?) at this point, and should perhaps be moved to guix-devel(added to CC), as it may require significant changes to guix; it is not a simple matter of helping someone figure out how to do something with guix. live well, vagrant
signature.asc
Description: PGP signature