Commit Graph

379 Commits

Author SHA1 Message Date
Ivan Petkov
ca294409f3
mkCargoDerivation: allow ergonomically overriding stdenv (#101) 2022-09-15 10:20:48 -07:00
Ivan Petkov
99c8438f51
cargoAudit: fix tests, config file goes in .cargo/audit.toml (#100) 2022-09-15 16:17:48 +00:00
Ivan Petkov
924250db18
cargoAudit: ensure audit.toml is kept when cleaning source (#98) 2022-09-15 00:44:40 +00:00
Ivan Petkov
2d5e7fbfce
Update CHANGELOG 2022-09-07 20:47:33 -07:00
Ivan Petkov
d9f394e4e2
Document specifying/overriding a Cargo.lock file (#94) 2022-08-30 16:12:41 +00:00
Ivan Petkov
77d7e549a0
flake.lock: Update (#93)
Flake lock file updates:

• Updated input 'flake-utils':
    'github:numtide/flake-utils/7e2a3b3dfd9af950a856d66b0a7d01e3c18aa249' (2022-07-04)
  → 'github:numtide/flake-utils/c0e246b9b83f637f4681389ecabcb2681b4f3af0' (2022-08-07)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/cd8d1784506a7c7eb0796772b73437e0b82fad57' (2022-07-20)
  → 'github:NixOS/nixpkgs/0e304ff0d9db453a4b230e9386418fd974d5804a' (2022-08-24)
2022-08-30 15:47:39 +00:00
Ivan Petkov
dbda889c05
Replace source prefix mapping with remove-references-to (#90) 2022-08-28 01:44:07 +00:00
Ivan Petkov
5548a68f5d
README: add FAQ about avoiding unnecessary rebuilds (#78) 2022-08-14 03:22:43 +00:00
Ivan Petkov
185465a734
docs: tweak cargoBuild docs to mention doInstallCargoArtifacts (#77) 2022-08-14 03:20:49 +00:00
Ivan Petkov
b5ac03b201
vendorGitDeps: ignore crates not referenced by Cargo.lock (#71) 2022-08-12 23:48:53 +00:00
Ivan Petkov
8de515289f
cargoClippy: add --all-targets to default cargoClippyExtraArgs (#67)
* This allows callers to opt-out of using `--all-targets` without having
  to override the entire cargo command itself
2022-08-11 23:58:32 +00:00
Ivan Petkov
9682b9f7e1
checks: add test case for building crate with only tests (#61) 2022-08-11 00:19:07 +00:00
Ivan Petkov
7474abe543
vendorGitDeps: throw descriptive error if locked revision is missing (#58) 2022-08-07 12:07:33 -07:00
Ivan Petkov
57448afcec
cargoAudit: filter source to only include Cargo.lock files (#56)
* Seems like cargo-audit only needs a `Cargo.lock` file and an advisory
  database to run, so we can filter the inputs down even further to
  avoid rebuilds and file copying into the Nix sandbox
2022-08-01 15:55:52 -07:00
ngerstle-cognite
50a021ad55
Add support for cargo audit (#53)
Co-authored-by: Ivan Petkov <ivanppetkov@gmail.com>
2022-07-30 08:52:07 -07:00
Ivan Petkov
36af1e7598
Add a pull request template 2022-07-25 17:44:51 -07:00
Ivan Petkov
2f9dbdcaeb
Merge pull request #52 from ipetkov/nextest 2022-07-23 17:38:18 -07:00
Ivan Petkov
52568d052b
Conditionally gate nextest tests with multiple partitions 2022-07-23 16:51:28 -07:00
Ivan Petkov
3c65d924ec
Add cargo-nextest 2022-07-23 16:29:05 -07:00
Ivan Petkov
041840d60c
Merge pull request #50 from ipetkov/fix-cargo-profile
Correct docs on disabling CARGO_PROFILE from being used
2022-07-23 14:39:23 -07:00
Ivan Petkov
d32c16a835
Correct docs on disabling CARGO_PROFILE from being used 2022-07-23 14:11:53 -07:00
Ivan Petkov
b0cfa99c22
Merge pull request #49 from ipetkov/default-flags
Update default flags passed to cargo
2022-07-23 11:49:08 -07:00
Ivan Petkov
a2dd1b8ad4
Allow configuring which cargo profile is selected 2022-07-23 11:10:45 -07:00
Ivan Petkov
bce972e03b
Add cargoHelperFunctionsHook
* It will automatically capture and log all `cargo` invocations
2022-07-23 11:11:36 -07:00
Ivan Petkov
731a81056b
Remove nixpkgs-fmt check 2022-07-20 19:44:53 -07:00
Ivan Petkov
7fc1a8fec3
Remove --workspace from all default commands
* This allows for fewer assumptions about the project structure
* The old behavior can easily be brought back by setting `cargoExtraArgs
  = "--workspace";` in any derivation
2022-07-20 19:27:52 -07:00
Ivan Petkov
1239aa345d
Update CHANGELOG 2022-07-20 17:53:58 -07:00
Ivan Petkov
c91b2d3c6b
Mark reformat commit as an ignored revision 2022-07-20 17:58:04 -07:00
Ivan Petkov
9eb8357f53
Reformat nix files 2022-07-09 20:20:15 -07:00
Ivan Petkov
56e3bd715d
flake.lock: Update
Flake lock file updates:

• Updated input 'flake-utils':
    'github:numtide/flake-utils/1ed9fb1935d260de5fe1c2f7ee0ebaae17ed2fa1' (2022-05-30)
  → 'github:numtide/flake-utils/7e2a3b3dfd9af950a856d66b0a7d01e3c18aa249' (2022-07-04)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/5643714dea562f0161529ab23058562afeff46d0' (2022-05-31)
  → 'github:NixOS/nixpkgs/cd8d1784506a7c7eb0796772b73437e0b82fad57' (2022-07-20)
2022-07-20 17:57:28 -07:00
Ivan Petkov
c850d8c935
Merge pull request #47 from ipetkov/dummy-fix
mkDummySrc: fix handling when src is already filtered
2022-06-30 15:20:17 +00:00
Ivan Petkov
7fcdce8a0f
Update CHANGELOG 2022-06-29 20:55:25 -07:00
Ivan Petkov
b9b1c322a5
mkDummySrc: fix handling when src is already filtered 2022-06-29 20:49:12 -07:00
Ivan Petkov
223aaedd36
Merge pull request #45 from ipetkov/toolchain 2022-06-26 19:18:22 +00:00
Ivan Petkov
8b57883437
ci: don't abort other jobs if one fails
* The best thing we can do is finish those jobs and cache their results
  so subsequent runs don't have to start over again
2022-06-26 11:38:51 -07:00
Ivan Petkov
baae39b7e0
Skip aarch64-darwin evaluation for cross-rust-overlay example 2022-06-26 11:38:08 -07:00
Ivan Petkov
43aab4b7d8
Add .overrideToolchain convenience method 2022-06-26 11:25:40 -07:00
Ivan Petkov
4a3f1394b2
Update CHANGELOG 2022-06-12 16:56:30 -07:00
Ivan Petkov
6c8c826f97
Merge pull request #42 from ipetkov/groupBy
Import groupBy from lib not builtins
2022-06-07 22:00:12 +00:00
Ivan Petkov
49141d2b37
Import groupBy from lib not builtins
* lib.groupBy will default to builtins.groupBy if available, so it is
  safer to use
2022-06-07 14:51:20 -07:00
Ivan Petkov
db5482bf22
Merge pull request #40 from yusdacra/fix/dont-check-cargo-lock 2022-06-05 08:55:08 -07:00
Yusuf Bera Ertan
8f0b89244f
fix(mkDummySrc): remove IFD trigger by not checking if cargo lock path exists, the build will fail if it doesnt 2022-06-05 14:04:20 +03:00
Ivan Petkov
4fe4d14281
Merge pull request #39 from ipetkov/cleanup
buildDepsOnly: remove (now unnecessary) cargoLock check
2022-06-02 21:00:09 -07:00
Ivan Petkov
6fd4d85dac
buildDepsOnly: remove (now unnecessary) cargoLock check
* Previously we would manually copy over any Cargo.lock file from the
  source to the dummified source
* Now, `mkDummySrc` will implicitly copy the file if it is present, or
  ignore it if missing, so this check is a bit overzealous now
* Loosening this check also allows callers to sneak in their own
  Cargo.lock file (e.g. through a patch phase) while still avoiding IFD
2022-06-02 20:51:28 -07:00
Ivan Petkov
b2fedd23ff
Merge pull request #37 from adisbladis/unflaked
Make crane possible to use without flakes
2022-06-02 20:12:37 -07:00
Ivan Petkov
eb469e6981
Update changelog 2022-06-02 19:52:25 -07:00
Ivan Petkov
c2acd4b443
Minor cleanup 2022-06-02 19:49:44 -07:00
adisbladis
69c96f9d9e checks: Add a check that hits default.nix in the root
This is testing stable Nix (i.e. non-flakes).
2022-06-03 02:01:02 +08:00
adisbladis
c097eedd6b checks: Regenerate expected output for failing checks
Having changed the way of writing TOML there are some differences in output ordering.
2022-06-03 02:01:02 +08:00
adisbladis
26daa5a397 Add a meaningful default.nix
That can be used from classic Nix (i.e. non-Flakes) like this:
``` nix
{ lib ? pkgs.lib
, pkgs ? import <nixpkgs> { }
}:

let
  craneLib = import ../crane { inherit pkgs; };

  src = lib.cleanSource ./.;

  cargoArtifacts = craneLib.buildDepsOnly {
    inherit src;
  };

in craneLib.buildPackage {
  inherit cargoArtifacts src;
}
```
2022-06-03 02:01:02 +08:00