Commit Graph

2205 Commits

Author SHA1 Message Date
Hamish Mackenzie
a443611ecf
Add evalSystem and evalPackages project args (#1546)
This adds a way to specify the `evalSystem` or `evalPackages` explicitly when calling the `project` functions.

Currently if we want to make a `flake` that supports multiple systems we have few options:

* Require builders for all the supported systems (even just for `nix flake show`).

* Pass `--impure` so that haskell.nix can see `builtins.currentSystem` to set up `pkgs.evalPackages` to use that.  Unfortunately this prevents nix from caching some of the work it does and often results in it recalculating for each supported system when it would otherwise be cached and take no time at all.

* Add an overlay to replace `evalPackages`.  This works, but it is not straight forward.

* Materialize the nix files for the project.

This change allows `evalSystem = "x86_64-linux";` to be passed telling `haskell.nix` to run `cabal` and `nix-tools` on that system.  The user will have to have a builder for that system, but does not need to have builders for the others (unless building outputs for them).
2022-07-28 20:03:05 +12:00
IOHK
7f02c057e6 Update Hackage and Stackage 2022-07-28 07:38:07 +00:00
Hamish Mackenzie
a368a8f959
Fix union version range bug (#1556)
* Fix union version range bug

Needed to fix hackage updates (see https://github.com/input-output-hk/nix-tools/pull/117).

* Update materialization
2022-07-28 19:22:28 +12:00
Yvan Sraka
e3397e0ace
Turn off trace messages (when checkMaterialization is disabled) to not bother user (#1555) 2022-07-27 09:10:13 +12:00
IOHK
a32961b724 Update Hackage and Stackage 2022-07-26 01:15:57 +00:00
IOHK
b25a25f40c Update Hackage and Stackage 2022-07-25 01:25:07 +00:00
IOHK
926818e9d3 Update Hackage and Stackage 2022-07-24 01:30:19 +00:00
IOHK
4c3974e856 Update Hackage and Stackage 2022-07-23 01:31:08 +00:00
IOHK
3a81e80d9a Update Hackage and Stackage 2022-07-22 01:16:57 +00:00
IOHK
a25983e8ab Update Hackage and Stackage 2022-07-21 01:31:05 +00:00
IOHK
fbd32c9c44 Update Hackage and Stackage 2022-07-20 01:24:07 +00:00
Samuel Evans-Powell
0dca71e2f3
Improve coverage reports (#1548)
* Provide an empty coverage report when package has no coverage

- When covering a project with multiple packages, the project coverage report
  will produce a table of individual coverage reports for each package. The
  links in this table don't go anywhere when a package is uncovered (they are
  broken links).
  - By producing an empty coverage report when a package has no coverage, we fix
    the broken links, and provide a tad more information about the coverage
    state of that package.

* Improve project coverage report index page

- Provide a link to the union/all coverage report.
- Format the reports as a list instead of a table of one column.
- Provide better explanation of what each report means.

* Add warning explaining modules with no coverage

- Modules that have no coverage at all are simply not included in the HTML
  reports generated by HPC.
- Add a warning to the project coverage report index page so users are aware of
  this limitation of HPC.

* Simplify interface of coverageReport

- Remove the concept of "package boundaries" from the "coverageReport" function.
- The "coverageReport" is now a function of:
  - arbitrary checks generating tix files
  - arbitrary mix modules
- This more closely reflects the usage of hpc, which doesn't care about package
  boundaries.
- Use this new "coverageReport" function to simplify the "projectCoverageReport"
  implementation. A project coverage report now simply:
  - copies out constituent coverage reports.
  - writes out an "all coverage report" using all checks in the project and all
    mix modules..
  - writes out a summary index page.
2022-07-19 19:40:41 +12:00
Jean-Baptiste G
80082aebba
Add missing deps to devshell overlay, remove cabalWrapper (#1549)
since it needs custom shell setup and knowledge not wanted/necessary for
 many project. cabalWrapper can still be used from iohk-nix, until
 underlying issue is handled natively by cabal.

 Also remove packagesExes materialization attributes,
 not really useful anymore, given faster evaluation of recent haskell.nix
2022-07-19 19:16:35 +12:00
IOHK
e0b5d9dbc1 Update Hackage and Stackage 2022-07-19 01:53:26 +00:00
IOHK
8955cbd1e1 Update Hackage and Stackage 2022-07-18 01:15:09 +00:00
Hamish Mackenzie
4e01f34543
Add nixpkgs-2205 and update other nixpkgs pins (#1506) 2022-07-17 18:18:19 +12:00
IOHK
41ea384502 Update Hackage and Stackage 2022-07-17 01:35:20 +00:00
IOHK
2b68ab788d Update Hackage and Stackage 2022-07-16 01:34:55 +00:00
IOHK
a9130c2c4d Update Hackage and Stackage 2022-07-15 01:21:04 +00:00
IOHK
ca93a5aec5 Update Hackage and Stackage 2022-07-14 01:54:56 +00:00
IOHK
1d8ca8b15d Update Hackage and Stackage 2022-07-13 02:04:25 +00:00
Robert Hensing
f9090d21d7
check.nix: Don't cd when src is from srcOnly (#1542) 2022-07-13 12:25:27 +12:00
IOHK
66ae51e640 Update Hackage and Stackage 2022-07-12 01:23:17 +00:00
IOHK
6fd5f3ce0b Update Hackage and Stackage 2022-07-11 01:17:17 +00:00
IOHK
ae94d26a33 Update Hackage and Stackage 2022-07-10 01:16:29 +00:00
IOHK
76d714fb6a Update Hackage and Stackage 2022-07-09 01:47:35 +00:00
IOHK
3dadce6f09 Update Hackage and Stackage 2022-07-08 01:19:45 +00:00
IOHK
4bec9cf2b1 Update Hackage and Stackage 2022-07-07 01:53:27 +00:00
Chua Hou
5d5d471409
Set meta.mainProgram for executable components (#1539)
- This allows nix run to work correctly, so that it knows the correct
  name of the executable, as it would otherwise attempt to execute an
  executable named "project-name-exe-exeName", for example.
- See #1231.
2022-07-06 23:25:58 +12:00
IOHK
278367ad80 Update Hackage and Stackage 2022-07-06 01:16:36 +00:00
IOHK
3e46b71d6a Update Hackage and Stackage 2022-07-05 01:14:27 +00:00
Sascha-Oliver Prolic
00fc9204fa
add glew (#1534)
* add glew

* move glew

* move glew to GL and GLU
2022-07-04 09:59:57 +01:00
IOHK
21230476ad Update Hackage and Stackage 2022-07-04 01:30:07 +00:00
IOHK
11284f143f Update Hackage and Stackage 2022-07-03 01:19:30 +00:00
Kobayashi
4e100b2ad9
enable internal-interpreter flag for ghc (#1536) 2022-07-02 21:07:09 +12:00
IOHK
27e138b0d2 Update Hackage and Stackage 2022-07-02 01:14:47 +00:00
IOHK
9c519fdb95 Update Hackage and Stackage 2022-07-01 01:37:07 +00:00
Teo Camarasu
54b86efe7c
Avoid duplicated packages in ghc-pkg list (#1530)
Filter out the setup dependencies of `Simple` packages from the shell. Fixes #1518.

Co-authored-by: Hamish Mackenzie <Hamish.K.Mackenzie@gmail.com>
2022-06-30 21:16:35 +12:00
IOHK
6786f2440e Update Hackage and Stackage 2022-06-30 01:17:07 +00:00
IOHK
c5c44f4027 Update Hackage and Stackage 2022-06-29 01:23:29 +00:00
IOHK
dd13e82252 Update Hackage and Stackage 2022-06-28 01:15:38 +00:00
IOHK
5c49987f99 Update Hackage and Stackage 2022-06-27 01:17:18 +00:00
IOHK
fc05774463 Update Hackage and Stackage 2022-06-26 01:17:05 +00:00
IOHK
ed14313f8c Update Hackage and Stackage 2022-06-25 01:15:07 +00:00
IOHK
c6b80fe119 Update Hackage and Stackage 2022-06-24 01:15:58 +00:00
IOHK
0f203573d2 Update Hackage and Stackage 2022-06-23 01:19:16 +00:00
Andrea Ciceri
2c1701b681
Supporting ca-derivations experimental feature (#1494)
* Supporting `ca-derivations` experimental feature

* Improved `contentAddressed.include` option description

* Ensure deterministic output for content addressed components

* Comment transformed into a Nix comment

To avoid possibly useless rebuilds

* Use `modules` arg `contentAddressed` flag

* Tutorial about CA derivations

Co-authored-by: Hamish Mackenzie <Hamish.K.Mackenzie@gmail.com>
2022-06-23 12:39:35 +12:00
Hamish Mackenzie
2a89c68994
Build ghci/ghc with internal interpreter (#1520)
Fixes #1512
2022-06-22 16:00:58 +12:00
IOHK
473b0b8509 Update Hackage and Stackage 2022-06-22 01:19:17 +00:00
Hamish Mackenzie
1eaa396e9c
Fix #1507 by running postBuild hook in setup build (#1519)
* Includes very temporary work around for CI issue
2022-06-21 15:38:41 +12:00