Seems like they only should depend on the parts of dependency that actually get incorporated in the dependent.<p>For instance:<p>- Changes to C source files of a shared library should not require a rebuild of dependents (assuming you don't LTO with shared library bitcode)<p>- Changes to an executable in a dependency that you run as a child process during usage but not at build time should not require a rebuild of dependents
tl;dr: Nix will soon be deciding whether to rebuild packages based on the <i>dependency contents</i> rather than the build inputs, which should result in much fewer rebuilds.<p>This is excellent news, and hopefully the savings will end up being used to run more aggressive tests and builds of lower priority packages, to have fewer breakages.