Commit Graph

111 Commits

Author SHA1 Message Date
Sandro Jäckel
55760e4c10 hydra: rename from hydra_unstable
There is no stable hydra package
2024-08-29 13:56:32 +10:00
sternenseemann
9919b666ab haskell.packages.ghc{96,98}.cabal-install: fix build of 3.12
With cabal-install >= 3.12, we need to adjust our cabal-install overlay
once again.

- Due to the new dependency semaphore-compat, which appears to require
  unix >= 2.8 it is very difficult to get to work for GHC < 9.6 (but
  probably possible). Technically, using pkgs.cabal-install should
  always be fine, so there's no strict need for cabal-install to work
  with every GHC. Let's drop support for GHC < 9.6 for now.

- Make sure that cabal-install-solver also uses the latest version
  always.

- Due to Cabal 3.12, we need to deviate from Stackage for
  hackage-security. cabal-install does support the standard version of
  resolv now, though.
2024-07-25 16:54:51 +02:00
Naïm Favier
9f983a6c27
maintainers/haskell/hydra-report: slightly optimise get-report --slow
There's no need to fetch the eval again, we have it right there.
2024-03-30 13:56:58 +01:00
Naïm Favier
73add9a862
maintainers/haskell/hydra-report: add optional id argument to get-report
Useful if we ever need to reproduce the report for a previous
evaluation.
2024-03-30 13:56:58 +01:00
maralorn
b9cae33009 haskellPackages.cabal2nix-unstable: 2024-01-04 -> 2024-02-05 2024-02-05 23:32:27 +01:00
Naïm Favier
18456d10ef
maintainers/scripts/haskell: optimise calculateReverseDependencies
Use an IntMap rather than a list for the fixpoint computation.
2024-01-14 17:46:48 +01:00
Naïm Favier
afb843b80f
maintainers/scripts/haskell: ignore self-dependencies
These create trivial loops in the dependency graph, which make the
transitive closure computation loop.
2024-01-14 17:46:04 +01:00
sternenseemann
854b534052 haskellPackages: stackage LTS 21.25 -> LTS 22.4
This commit has been generated by maintainers/scripts/haskell/update-stackage.sh
2024-01-07 14:14:09 +01:00
sternenseemann
4a227da543 haskellPackages: stackage LTS 21.23 -> LTS 21.25
This commit has been generated by maintainers/scripts/haskell/update-stackage.sh
and maintainers/scripts/haskell/regenerate-hackage-packages.sh.

Add capability to update to an out of date solver in update-stackage.sh.
2024-01-04 13:31:30 +01:00
Naïm Favier
1a1a8d2559
maintainers/scripts/merge-and-open-pr: fix error handling
Calling `die` in a subshell hides the error message.
2023-12-04 19:06:30 +01:00
Naïm Favier
5f1da6e045
scripts/haskell/hydra-report: use inline emoji
GitHub broke the rendering of colon emoji codes inside square brackets;
let's just use emoji.
2023-12-03 13:06:38 +01:00
Anthony Roussel
e30f48be94
treewide: fix redirected and broken URLs
Using the script in maintainers/scripts/update-redirected-urls.sh
2023-11-11 10:49:01 +01:00
Dennis Gosnell
f754973d14
haskell hydra-report: bump timeout for all requests to Hydra
In practice, almost all requests to Hydra take longer than the default
timeout of 30 seconds.

This commit bumps all requests to the max timeout of 15 minutes.  This
should hopefully make the hdyra-report.hs script more reliable and fail
less.
2023-11-02 10:29:42 +09:00
maralorn
ba46866a27
maintainers/scripts/haskell: Fix a typo 2023-09-06 00:06:02 +02:00
sternenseemann
5a835f6742 maintainers/haskell/mark-broken.sh: allow passing --no-request-logs
This flag needs to be passed through to hydra-report.hs.
2023-09-03 22:15:15 +02:00
sternenseemann
71cbb538a5 maintainers/haskell/hydra-report.hs: increase timeout to 15min
This seems to be the server side Hydra timeout as well, so it makes
sense waiting as long as Hydra will try to give a response.
2023-09-03 21:56:38 +02:00
sternenseemann
76dc153544 maintainers/haskell/hydra-report.hs: work around bulk status timeout
This change adds a flag --slow to hydra-report.sh get-report which
causes it to fetch the cheap evaluation overview endpoint (which only
contains build ids and meta data). The gathered information is then used
to request each build's status individually instead of in bulk which is
very slow, but useful as a last resort if the bulk endpoint times out.
2023-09-03 21:54:03 +02:00
sternenseemann
00b0824635 maintainers/haskell/hydra-report.hs: allow disabling log requesting
Since every failure in the jobset means one request to get the log when
generating the list of newly broken packages, we need to add an option
to disable log requesting in case a lot of new breakage needs to be
entered.
2023-09-03 21:39:04 +02:00
Dennis Gosnell
6f41cccb9e
haskell: don't pin stack to version in LTS, but take the latest from hackage 2023-07-26 11:09:53 +09:00
Theodore Ni
ac69020750
treewide: remove unused nix-prefetch-github from shebangs 2023-07-18 18:16:17 -07:00
sternenseemann
6dcc0ab9b5 maintainers/haskell/merge-and-open-pr: only push haskell-updates
If we want to push only one branch, we'll have to specify branch and
remote explicitly. Pushing to origin doesn't work for everyone, since
some of us have a origin remote that can't be pushed to. Using plain
`git push` has the problem that it'll try pushing all checked out
branchs which fails e.g. if some branches (staging, staging-next, …) are
behind their remote counterparts.

The solution is to require everyone to configure a per branch pushRemote
for haskell-updates which will then be used by merge-and-open-pr.sh.
2023-05-19 16:33:56 +02:00
maralorn
ef41eed24f maintainers/scripts/haskell/*transitive-broken*: Fix an error message 2023-05-02 12:07:16 +02:00
maralorn
05e9a22322 maintainers/scripts/haskell/regenerate-transitive-broken-packages.sh: Make more robust against eval errors 2023-05-01 02:36:37 +02:00
maralorn
1cfb18d793 maintainers/scripts/haskell/merge-and-open-pr.sh: Pass --fast to regeneration script 2023-05-01 02:23:54 +02:00
maralorn
e4b66fa1a1 maintainers/scripts/haskell: Integrate transitive-broken into regeneration script 2023-04-23 10:47:36 +02:00
sternenseemann
b79286ea28 maintainers/haskell/upload-package-list: support 3.10 config dir
cabal-install 3.10 has some quirky new logic for config, cache, …
directory discovery. We reimplement this in this simple bash script,
additionally respecting the CABAL_DIR environment variable.
2023-04-14 18:35:33 +02:00
sternenseemann
35c00c639a haskellPackages.hackage-db: 2.1.2 -> 2.1.3
This update adds support for $CABAL_DIR as well as the new
$XDG_CACHE_HOME location of the hackage db.

Since we maintain hackage-db, having the latest version always is nice
even though it has more reverse dependencies than the other libraries we
maintain.
2023-04-13 14:13:40 +02:00
maralorn
632d358c64 maintainers/scripts/haskell: Add reference to manual to PR template 2023-04-08 00:24:31 +02:00
Ellie Hermaszewska
d7c630ca17
maintainers/haskell/update-stackage.sh: Strip out with-compiler from stackage config
It was previously just being inserted alphabetically into the list
2023-04-05 15:21:47 +08:00
Dennis Gosnell
35295aed71
haskellPackages: in hydra-report.hs, split Linux and Darwin build failures
This commit changes hydra-report.hs to split up Linux and Darwin build
failures into two different sections.  Darwin failures are hidden by
default.
2023-03-26 18:10:08 +09:00
Dennis Gosnell
bd9bb50ad2
haskellPackages: remove error about outstanding jobs on aarch64-darwin in hydra-report.hs 2023-03-26 18:08:30 +09:00
Dennis Gosnell
19b5676361
haskellPackages: add newtype for PkgName and PkgSet in hydra-report.hs
Add a newtype for a package name and a package set.  This is less for
correctness, and more just to make the code a little easier to read
through without having to keep in mind what each Text refers to.
2023-03-25 23:00:56 +09:00
Dennis Gosnell
b2af201c0e
haskellPackages: add newtype for JobName in hydra-report.hs
This commits changes the `job` field in `Build` to a newtype.  This is
mostly just to have a place to document exactly what a job name consists
of.
2023-03-25 19:24:13 +09:00
Dennis Gosnell
28f22d86d7
haskellPackages: slight refactoring of hydra-report.hs 2023-03-25 18:21:55 +09:00
Dennis Gosnell
c574a8c37e
haskellPackages: add a little documentation to hydra-report.hs 2023-03-25 17:44:26 +09:00
Dennis Gosnell
265a3a3b15
haskellPackages: add types and some formatting to hydra-report.hs 2023-03-24 20:55:52 +09:00
Dennis Gosnell
3aea75b8fc
haskellPackages: fix indentiation in hydra-report.hs 2023-03-24 20:26:01 +09:00
Bernardo Meurer
6e55733359
Merge pull request #219747 from Stunkymonkey/deprecate-isNull 2023-03-16 11:10:22 -03:00
sternenseemann
100d887968 release-haskell.nix: add aarch64-darwin
nixpkgs:trunk also builds aarch64-darwin these days, so this forces our
hand a little bit. We can still refuse to care about failures _too_
much, but at least we will stop merging as big a rebuilds as we are
currently.
2023-03-10 14:43:00 +01:00
Felix Buehler
d10e69c86b treewide: deprecate isNull
https://nixos.org/manual/nix/stable/language/builtins.html#builtins-isNull
2023-03-06 22:40:04 +01:00
maralorn
0debf1453d maintainers/scripts/haskell/hydra-report: Add comments with error causes to broken list 2023-02-20 00:36:43 +01:00
sternenseemann
b7e41b825e maintainers/haskell: generate core-pkgs hackage2nix configuration
`ghc-pkg list` tells us everything hackage2nix needs to know. In the
past the core-packages list and compiler setting in hackage2nix was
maintained manually which inevitably leads to it being forgot once in a
while – this will then mess with flag resolution when generating the
package set in some cases. Luckily, we can just let a simple derivation
do this for us.

Resolves #202621.
2023-02-19 19:52:17 +01:00
Ingo Blechschmidt
168d9a5f1e agda: 2.6.2.2 -> 2.6.3 2023-02-14 14:45:39 +01:00
sternenseemann
3dfbe2b6a3 maintainers/haskell/test-configurations.nix: support ghcHEAD
Since we now have a versioned configuration-ghc-*.nix file for GHC HEAD,
we don't need to add a super special case to the package set logic in
test-configurations.nix anymore. We can just create a versioned
attribute for the ghcHEAD package set (which is not exposed) and keep
using the normal discovery logic.

The only tricky bit is that GHC HEAD's configuration file is named after
the GHC release that will be branched off from it, so a little bit of
arithmetic is involved.
2023-02-13 14:42:03 +01:00
Dennis Gosnell
4be2c3acd5
haskellPackages: ignore maintainers without email
The Haskell Hydra report generator
(`maintainers/scripts/haskell/hydra-report.hs`) uses this
`maintainer-handles.nix` script for generating a mapping of email
addresses to GitHub handles.

This `maintainer-handles.nix` script is necessary because the Haskell
Hydra report generator gets Hydra job status info as input, but needs to
ping users on GitHub.  Hydra job status info only contains user emails (not
GitHub handles).  So the `maintainer-handles.nix` script is necessary
for looking up GitHub handles from email addresses.

This commit fixes the `maintainers-handles.nix` code to ignore
maintainers that don't have email addresses.  The code was originally
assuming that all maintainers have email addresses, but there was
recently a maintainer added without an email address.
2023-01-30 08:27:03 +09:00
maralorn
a8fa46a964 maintainers/../haskell/mark-broken: Insert eval info in commit msg 2023-01-10 00:49:56 +01:00
maralorn
931fef04f9
Merge pull request #207764 from qowoz/shellcheck
shellcheck: add override for newer version
2022-12-29 15:44:15 +01:00
zowoq
232b508059 haskellPackages.ShellCheck: unpin 2022-12-28 10:42:13 +10:00
Andy
e677218d32
Haskell: Fix dead link in report 2022-12-27 14:59:25 +01:00
Naïm Favier
755d5259c7
maintainers/scripts/haskell: fix regenerate-transitive-broken
- use `restrict-eval` so that we're not affected by the user's environment
- use jq instead of the horrible echo+sed hack

The second point also fixes the indentation before each line to be two
spaces instead of one, so I set it back to one space to avoid a diff.
2022-12-24 13:38:34 +01:00