Commit Graph

1491 Commits

Author SHA1 Message Date
DavHau
1c9ac6b462 fix(mach-nix): mkDefault for builtPythonPackage.format 2023-03-25 00:15:18 +08:00
DavHau
aac492c957 fix(apps.update-locks): declare dependency in writers.nix 2023-03-25 00:15:18 +08:00
Yusuf Bera Ertan
8f99939a4a
feat(rust): prepare for duplicate dependency vendoring (#481) 2023-03-24 17:08:30 +03:00
DavHau
56d9e582bd chore(fetchPip): rename maxDate -> pypiSnapshotDate 2023-03-24 12:13:29 +08:00
DavHau
3a2adfa121 feat(flake-compat): manage default.nix and shell.nix via flake-compat 2023-03-24 12:04:04 +08:00
DavHau
b920329542
Merge pull request #500 from nix-community/fetch-pip
v1: manage all FOD hashes via `.#update-locks`
2023-03-24 11:48:35 +08:00
DavHau
88b056bf6a chore(v1/apps): rename internals 2023-03-24 11:47:49 +08:00
DavHau
f91d7e0928 chore(lock): improve extracting hash from drv file 2023-03-24 11:41:46 +08:00
DavHau
15769c35a5
Merge pull request #499 from Atry/inputFrom
Fix error when src is a local directory in pip-freeze
2023-03-23 20:53:11 +08:00
DavHau
d31b5e1954 chore(v1/drvs): update all locks 2023-03-23 18:14:12 +08:00
DavHau
b38481532d fix(lock): output FOD hashes in SRI format 2023-03-23 18:13:59 +08:00
DavHau
4b5b9886ad feat(tests): run .#update-locks before nix flake check 2023-03-23 17:29:53 +08:00
DavHau
80b0f7148d feat(v1/drvs): make all packages use the fetch-pip module and update hashes 2023-03-23 17:20:28 +08:00
DavHau
9e5219f26f feat(apps.update-locks): add script to update all locks 2023-03-23 17:19:53 +08:00
DavHau
edeec27a5b feat(mach-nix): set feakeSha256 as default for fetchPipHash 2023-03-23 17:18:17 +08:00
DavHau
c624dd0286 feat(lock): allow to define defaults for values
This can be used to prevent infinite recursions if the script for a value itself depends on the value
2023-03-23 17:17:32 +08:00
DavHau
c8ca8e6aa0 fix(fetchPypi): Use default python version for mitmproxy
- this increases stability and cache hits
2023-03-23 17:11:04 +08:00
DavHau
96873569bf feat(mach-nix): use fetch-pip and set defaults 2023-03-23 14:41:22 +08:00
DavHau
1e4e1cdaf5 chore(ansible): make use of fetch-pip module 2023-03-23 14:31:22 +08:00
DavHau
877c290f1e feat(mach-nix): allow module for pythonSources 2023-03-23 14:30:22 +08:00
DavHau
d0bf948eb5 feat(fetch-pip): init module fetch-pip 2023-03-23 14:28:49 +08:00
DavHau
17a8993d88 feat(lock): several features
- don't allow nested fields in lock file (can lead to infinite recursion)
- don't modify FOD
- shortcut if output is cached -> inherit hash from drv
2023-03-23 14:27:25 +08:00
DavHau
24dc75dbd1 chore: update drv-parts 2023-03-23 14:17:58 +08:00
Yang, Bo
81f165f528 Fix error when src is a local directory
I encountered the following error when running `nix develop`
```
       > Cannot copy . to .: destination already exists!
       > Did you specify two "srcs" with the same "name"?
       > do not know how to unpack source archive .
       For full logs, run 'nix log /nix/store/fy1mpipp9xb7ds1m081q5x7f3c53j8i2-python3.10-default.drv'.
```

The error can be fixed with this PR. See https://nixos.org/manual/nixpkgs/stable/#sec-pkgs-mkShell-usage
2023-03-23 05:02:06 +00:00
DavHau
00f5be531b
Merge pull request #497 from phaer/fixes
small fixes + python: read egg-info metadata, not requirements.txt
2023-03-22 23:33:24 +08:00
DavHau
f2b02bc056 chore(v1): remove some packages from checks (temporarily) 2023-03-22 23:30:58 +08:00
DavHau
694d895f2c fix(nixpkgs-overrides): fix attrs from nixpkgs not applied 2023-03-22 23:17:55 +08:00
phaer
bd4b8b36a6 fix(fetchPip): re-add requirements.txt support 2023-03-22 23:17:55 +08:00
phaer
fa58684291 fix(eval-cache): prevent infinite recursion in doc 2023-03-22 23:17:55 +08:00
phaer
a47ec7511a fix(nixpkgs-overrides): only extract existing pkgs 2023-03-22 23:17:55 +08:00
phaer
eb9e70bdd2 feat(fetch-python-reqs): read egg-info, not...
...requirements.txt. The latter was a dirty hack as its meant for
environments and doesn't really include package metadata.
egg-info + dist info seems to cover most of pypi.
2023-03-22 23:17:55 +08:00
DavHau
6e9c012806
Merge pull request #498 from nix-community/lock
Add module `lock`: Generic lock file interactions
2023-03-22 23:16:51 +08:00
DavHau
dce1cbc2ef feat(updateFODHash): fixes + rename to compureFODHash 2023-03-22 23:09:08 +08:00
DavHau
a984457902 fix(lock): fix config.name refs and makeDrv 2023-03-22 12:50:03 +08:00
phaer
f07cfcaf71 fix(tests): use alejandra from nixpkgs 2023-03-22 12:06:42 +08:00
phaer
2f162e68e8 chore(lock): move updateFODHash to lock part 2023-03-22 12:03:41 +08:00
phaer
530a05eec0 fix(lock): simplify & clarify log msg...
We don't need to build dependencies separately anymore, as we now check
the drv_path in the nix build log.

Also, the hash found does not have to be "new", it could be the same as
before.
2023-03-22 12:03:41 +08:00
phaer
7ba5d4abc9 feat(lock): re-implement in python...
as discussed during the last weekly, where we've implemented a
prototype, this replaces the nix + jq magic with python.

it requires more SLOCs and error handling could further be improved,
but i think it helps readability and makes the logic of parsing
nix build logs a bit more robust by checking that we get a hash
for the drv_path we expected.

Empty hash is replaced by l.fakeSha256 to silence a nix warning.
2023-03-22 12:03:41 +08:00
DavHau
8a85ff2904 feat(lock): init lock module for generic locking via json file 2023-03-22 12:03:41 +08:00
DavHau
58e6e18ce4 chore(fetchPip): remove unused args 2023-03-22 10:53:55 +08:00
DavHau
f04f032418 Handle zip files in write-dependency-tree
Authored-by: @phaer
2023-03-21 12:53:50 +07:00
DavHau
b1b5887ce8 chore(fetchPythonRequirements): rename to fetchPip 2023-03-21 12:44:05 +07:00
DavHau
a677084257 chore(fetchPythonRequirements): refactor code
- add and improve comments
- reduce nesting in several places
- move requirementsFiles flag logic to python
- MAX_DATE -> maxDate
- respect column 80 wherever possible
2023-03-21 12:35:54 +07:00
DavHau
4aa6e86907 chore(v1): move name & version to top-level 2023-03-19 14:46:59 +07:00
DavHau
fa5668eef3 chore: remove unused arguments from some legacy modules 2023-03-19 14:25:53 +07:00
DavHau
13904ccd31 chore: fix comment in ./src/modules/builders/implementation.nix 2023-03-19 14:24:12 +07:00
DavHau
f6b2e4bd41 fix(devShell): remove pinned nix from devShell 2023-03-19 14:23:40 +07:00
DavHau
1038c66dce chore(v1): update drv-parts 2023-03-19 14:23:04 +07:00
DavHau
92caa82c50
Merge pull request #495 from raboof/no-root-for-dist-source
PHP: don't set rootName for `dist` type `path`
2023-03-18 18:46:42 +07:00
Arnout Engelen
c6fafff4c0
PHP: don't set rootName for dist type path
It looks like `rootName` should be set to the *parent* name,
but currently points at the name of the dependency component.

Fixes #488, though it seems this was changed intentionally by
@tinybeachthor in #311 (specifically 156d7e0f50),
so this might break something else?
2023-03-18 12:14:17 +01:00