Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nixpkgs
base: 0bcd9a5262d8
Choose a base ref
...
head repository: NixOS/nixpkgs
compare: 453589696b99
Choose a head ref
  • 2 commits
  • 1 file changed
  • 1 contributor

Commits on Feb 11, 2020

  1. buildRustCrate: remove superfluous dependency overrides

    By overriding each dependency on every level of the dependency tree we
    are creating a lot of unnecessary instances of the same derivation
    
    Looking at the output size of `nix-instantiate --trace-function-calls
    -vvvv …` and the execution time I got about a 10x improvement after
    applying this change.
    
    It was probably good intentions that lead to these overrides but in
    practice no tooling (that I know of) really needs this. `carnix` and
    `crate2nix` are fine without those overrides. Furthermore I believe that
    it is the job of the tooling around `buildRustCrate` to provide a
    coherent set of overrides. By not enforcing all of the overrides, debug
    flags, verbosity, … to be the same throughout the closure we also allow
    consumers to override specific aspects of the crates. Some (older?)
    crates might need different `crateOverrides` then newer crates with the
    same name. Currently such situations can not (easily) be implemented
    with the override in-place.
    andir committed Feb 11, 2020
    Copy the full SHA
    be5597f View commit details
    Browse the repository at this point in the history

Commits on Feb 18, 2020

  1. Merge pull request #79816 from andir/buildRustCrate-no-override-dep

    buildRustCrate: remove superfluous dependency overrides
    andir committed Feb 18, 2020
    Copy the full SHA
    4535896 View commit details
    Browse the repository at this point in the history