nixpkgs/pkgs/applications/version-management
Benjamin Hipple 2115a2037c fetchcargo: use flat tar.gz file for vendored src instead of recursive hash dir
This has several advantages:

1. It takes up less space on disk in-between builds in the nix store.
2. It uses less space in the binary cache for vendor derivation packages.
3. It uses less network traffic downloading from the binary cache.
4. It plays nicely with hashed mirrors like tarballs.nixos.org, which only
   substitute --flat hashes on single files (not recursive directory hashes).
5. It's consistent with how simple `fetchurl` src derivations work.
6. It provides a stronger abstraction between input src-package and output
   package, e.g., it's harder to accidentally depend on the src derivation at
   runtime by referencing something like `${src}/etc/index.html`. Likewise, in
   the store it's harder to get confused with something that is just there as a
   build-time dependency vs. a runtime dependency, since the build-time
   src dependencies are tarred up.

Disadvantages are:
1. It takes slightly longer to untar at the start of a build.

As currently implemented, this attaches the compacted vendor.tar.gz feature as a
rider on `verifyCargoDeps`, since both of them are relatively newly implemented
behavior that change the `cargoSha256`.

If this PR is accepted, I will push forward the remaining rust packages with a
series of treewide PRs to update the `cargoSha256`s.
2020-02-10 10:17:29 -05:00
..
arch
bazaar treewide: name -> pname (#67513) 2019-08-31 07:41:22 -04:00
bcompare treewide: Stop using Qt 5.9 2019-11-18 20:10:43 +00:00
bitkeeper treewide: name -> pname (easy cases) (#66585) 2019-08-15 13:41:18 +01:00
blackbox Merge master into staging-next 2019-08-27 16:36:47 +02:00
cvs
cvs2svn treewide: name -> pname (#67513) 2019-08-31 07:41:22 -04:00
cvs-fast-export cvs_fast_export: 1.49 -> 1.50 2020-01-06 00:38:27 -08:00
cvsps treewide: name -> pname (easy cases) (#66585) 2019-08-15 13:41:18 +01:00
dvc dvc: init at 0.24.3 2019-10-28 13:07:58 +11:00
fossil Merge branch 'master' into rename-z77z-into-maggesi 2019-10-13 18:06:23 +02:00
gerrit gerrit: 2.14.6 -> 3.0.2 2019-09-06 22:01:22 +00:00
git-and-tools fetchcargo: use flat tar.gz file for vendored src instead of recursive hash dir 2020-02-10 10:17:29 -05:00
git-backup git-backup: init at 0.2.0 2019-10-24 18:50:34 -07:00
git-crecord treewide: name -> pname (easy cases) (#66585) 2019-08-15 13:41:18 +01:00
git-lfs git-lfs: use buildGoPackage 2019-09-21 04:34:00 -05:00
git-repo gitRepo: 1.13.9.3 -> 1.13.9.4 2020-02-09 19:13:13 +01:00
git-review treewide: remove redundant quotes 2019-09-08 23:38:31 +00:00
git-sizer git-sizer: 1.0.0 -> 1.3.0 2019-11-05 18:36:00 +01:00
git-up git-up: 1.4.2 -> 1.6.1 2019-10-03 00:19:33 +02:00
gitea gitea: 1.10.2 -> 1.10.3 2020-01-18 09:56:41 +01:00
gitinspector treewide: name -> pname (#67513) 2019-08-31 07:41:22 -04:00
gitkraken gitkraken: 6.4.1 -> 6.5.1 2020-01-31 14:25:57 -05:00
gitlab gitlab: 12.7.4 -> 12.7.5 2020-02-01 17:07:55 +01:00
gitless gitless: use python3 2019-12-30 09:45:37 +01:00
gitolite gitolite: wrap gitolite-shell 2019-12-08 12:26:02 +01:00
gitstats treewide: name -> pname (easy cases) (#66585) 2019-08-15 13:41:18 +01:00
gogs gogs: 0.11.86 -> 0.11.91, fixes CVE-2019-14544 2020-02-06 07:49:01 +01:00
gource Merge branch 'master' into staging-next 2019-11-27 22:57:50 -08:00
guitone treewide: remove redundant rec 2019-08-28 11:07:32 +00:00
meld maintainer: mimadrid: update github username and personal data 2019-09-14 12:15:46 +02:00
mercurial mercurial: 5.2.1 -> 5.2.2 2020-01-22 03:12:23 +00:00
monotone treewide: Get rid of most parseDrvName without breaking compat 2019-11-24 17:22:28 +00:00
monotone-viz monotoneViz: refactor out of ocamlPackages 2019-10-30 18:05:20 +00:00
mr treewide: replace make/build/configure/patchFlags with nix lists 2019-12-30 12:58:11 +01:00
nbstripout nbstripout: fix build 2019-12-30 16:46:55 +01:00
nitpick treewide: name -> pname (easy cases) (#66585) 2019-08-15 13:41:18 +01:00
p4v p4v: explicitly depend on openssl 1.0 series 2019-10-18 09:26:28 +11:00
peru treewide: remove redundant quotes 2019-09-08 23:38:31 +00:00
pijul pijul: Fix the build (broke due to a more recent Rust version) 2020-02-04 14:05:02 +01:00
rabbitvcs treewide: name -> pname (#67513) 2019-08-31 07:41:22 -04:00
rapidsvn treewide: name -> pname (easy cases) (#66585) 2019-08-15 13:41:18 +01:00
rcs treewide: NIX_*_COMPILE -> string 2019-12-31 00:13:29 +01:00
redmine treewide: fix redirected urls 2020-01-22 11:26:22 +01:00
reposurgeon
sit treewide: name -> pname (#67513) 2019-08-31 07:41:22 -04:00
smartgithg treewide: fix redirected urls 2020-01-22 11:26:22 +01:00
sourcehut sourcehut.listssrht: add pygit2 2019-11-30 09:31:58 -08:00
src src: 1.26 -> 1.27 2019-09-28 20:46:00 -07:00
srcml treewide: name -> pname (easy cases) (#66585) 2019-08-15 13:41:18 +01:00
sublime-merge
subversion subversion: 1.9.10 -> 1.9.12, 1.10.4 -> 1.10.6 2019-08-10 09:23:48 -04:00
tailor treewide: name -> pname (#67513) 2019-08-31 07:41:22 -04:00
tkcvs
tortoisehg tortoisehg: 5.0.2 -> 5.2.1 2019-12-22 10:04:31 +00:00
vcprompt treewide: name -> pname (easy cases) (#66585) 2019-08-15 13:41:18 +01:00
vcsh treewide: remove redundant rec 2019-08-28 11:07:32 +00:00
yadm yadm: 2.0.1 -> 2.3.0 2019-12-24 15:57:36 -08:00