summaryrefslogtreecommitdiff
path: root/maintainers/scripts/haskell (follow)
Commit message (Collapse)AuthorAgeFilesLines
* hledger: 1.43.2 -> 1.50.2Robert Schütz2025-10-181-0/+5
|
* Merge commit 'aee3f2ec9ef6ddea6115097946bc237a5b6ad8d9' into haskell-updatesWolfgang Walther2025-10-051-4/+4
|\
| * treewide: remove optional builtins prefixes from prelude functionsNAHO2025-09-301-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Remove optional builtins prefixes from prelude functions by running: builtins=( abort baseNameOf break derivation derivationStrict dirOf false fetchGit fetchMercurial fetchTarball fetchTree fromTOML import isNull map null placeholder removeAttrs scopedImport throw toString true ) fd --type file --exec-batch sed --in-place --regexp-extended " s/\<builtins\.($( printf '%s\n' "${builtins[@]}" | paste --delimiter '|' --serial - ))\>/\1/g " nix fmt
| * haskellPackages.cabal2nix-unstable: override with unstable dependenciesWolfgang Walther2025-09-171-4/+12
| | | | | | | | | | | | | | | | These dependencies need to be pulled from the same unstable commit that cabal2nix is pulled from, otherwise changes to any of them will not be in effect and possibly break the build. (cherry picked from commit 631661e66cb097c9f3b4b15eb0f6464ce6ac8007)
| * haskellPackages.cabal2nix-unstable: set version according to contribution ↵Wolfgang Walther2025-09-171-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | guidelines The contribution guidelines require an unstable version to be leading with a real version, or if none is available with `0-`. This is because certain Nix operations split a package's full name into name and version component starting with the first section starting with a digit. (cherry picked from commit 453d0f8eab3c0fb27968705d7f8a45328b7cc03b)
* | maintainers/scripts/haskell/hydra-report: speed up with --no-instantiateWolfgang Walther2025-09-121-3/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a new flag introduced in `nix-eval-jobs`, which reduces runtime for the `ping-maintainers` subcommand from 12 minutes to 3 minutes for me. The `--constituents` flag is not supported anymore with `--no-instantiate`, but it doesn't seem to make a difference anyway. Same for `--max-jobs` - I don't get a difference with or without it. Removing the `foldl'` import because it is warned to be redundant after switching to import the current nixpkgs instance, likely due to a newer GHC version (?).
* | Merge commit '50a00d8692c0253cc75a3dc0bfc46a88d98f1b8c' into haskell-updatesWolfgang Walther2025-09-071-2/+2
|\|
| * haskell.compiler.ghc8107{,Binary}: dropEmily2025-09-071-2/+2
| | | | | | | | | | | | | | Also, rearrange the GHC‐related release notes to be in order of most likely to matter to anyone. Co-authored-by: Wolfgang Walther <walther@technowledgy.de>
* | maintainers/haskell/hydra-report.hs: stop referencing infra issuesternenseemann2025-09-061-1/+1
| | | | | | | | | | | | The timeout does not seem to happen anymore, so we can stop sending mass requests (https://github.com/cdepillabout/nix-haskell-updates-status/pull/13) and don't need to further contextualize them.
* | haskellPackages.cabal2nix-unstable: override with unstable dependencies ↵Malte Ott2025-09-011-4/+12
|\ \ | | | | | | | | | (#438290)
| * | haskellPackages.cabal2nix-unstable: override with unstable dependenciesWolfgang Walther2025-09-011-4/+12
| | | | | | | | | | | | | | | | | | These dependencies need to be pulled from the same unstable commit that cabal2nix is pulled from, otherwise changes to any of them will not be in effect and possibly break the build.
| * | haskellPackages.cabal2nix-unstable: set version according to contribution ↵Wolfgang Walther2025-08-291-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | guidelines The contribution guidelines require an unstable version to be leading with a real version, or if none is available with `0-`. This is because certain Nix operations split a package's full name into name and version component starting with the first section starting with a digit.
* | | git-annex: 10.20250416 -> 10.20250721sternenseemann2025-08-291-0/+1
|/ / | | | | | | | | | | | | | | Stackage LTS 24 contains git-annex (contrary to LTS 23). I believe this resulted in a downgrade of git-annex when switching to LTS 23. We'll want to continue using the latest version of git-annex. At the very least, this will fix the trouble we're having with its test suite on haskell-updates.
* | maintainers/hydra-report.hs: migrate to nix-eval-jobssternenseemann2025-08-122-82/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Hydra unilaterally removed hydra-eval-jobs, so we need to figure out how to migrate to nix-eval-jobs. I can't shake the feeling that it's slower. Maybe we need to increase the resource limitations for nix-eval-jobs. nix-eval-jobs no longer produces a big JSON object, but instead one object per line (one for each job). This is supported in a simple way by readJSONLinesProcess. It'd be possible to implement this without presupposing that there's one object per line, however, it is not an usecase exactly intended by aeson, it seems. nix-eval-jobs makes our job easier in some ways, e.g. jobs have a proper meta set now, so we no longer need to cross reference a mail address to github handle map. There is even room for further improvement, e.g. attribute paths can just be queried instead of generating them using Text.splitOn. See also https://github.com/NixOS/hydra/pull/1421.
* | maintainers/haskell/hydra-report.hs: use eitherDecodeStrictTextsternenseemann2025-08-121-3/+2
| |
* | haskellPackages.cabal2nix-unstable: don't wrap with runtime depssternenseemann2025-07-301-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | cabal2nix-unstable is mostly used for regenerating the Haskell package set. Thus we should aim to make it quick to rebuild in case its hash changes because of Haskell related changes. - cabal2nix is not fussy about the Nix version it uses for nix-env(1) and we can just assume it is already in PATH like we do for maintainers/scripts/haskell/*. - nix-prefetch-scripts causes the most trouble since its python dependencies depend on pandoc, so many Haskell changes require an additional Python rebuild when building cabal2nix-unstable. nix-prefetch-scripts is most likely installed and not necessary in many cases, e.g. hackage2nix doesn't need them which is the main use we have for cabal2nix-unstable. For the update scripts that do need them, we add them to the used nix-shell explicitly.
* | haskellPackages.cabal2nix-unstable: use separate bin outputsternenseemann2025-07-302-2/+2
|/
* Merge cda03d762aa4d6930f41c2a60b946e0f8a743630 into haskell-updatesnixpkgs-ci[bot]2025-07-192-2/+2
|\
| * treewide: Remove nixfmt-rfc-style from update script shebangsSilvan Mosberger2025-07-152-2/+2
| | | | | | | | | | | | | | | | | | Based on the Nixpkgs used and the version of nixfmt-rfc-style in that version, it's likely that not the correct version is used. Update scripts should instead run within a Nixpkgs development shell (`nix-shell`/`nix develop`/`direnv`), where the correct version of `nixfmt` (although `treefmt` should be preferred) is always available.
* | maintainers/update-{st,h}ackage.sh: drop support for --do-commitsternenseemann2025-07-182-24/+12
| |
* | maintainers/update-hackage.sh: don't print diff if no changessternenseemann2025-07-181-0/+1
| | | | | | | | Bug introduced in 1158f20f1563e8a8e5524d6f910d311956b006a3.
* | maintainers/scripts/haskell: unify pkg set update into single commitsternenseemann2025-07-102-7/+54
| | | | | | | | | | | | | | | | | | | | | | | | | | Currently, every package set consists of three commits, generated by update-hackage.sh, update-stackage.sh and regenerate-hackage-packages.sh, respectively. This is suboptimal, as it necessarly causes intermediate states of Nixpkgs where the generated hackage-packages.nix and all-cabal-hasehs and/or the hackage2nix configuration files are out of sync. Ideally, running regenerate-hackage-packages.sh is a no-op for every Nixpkgs revision. This is achieved by adding a wrapper script, update-package-set.sh, which runs the individual moving parts and commits the result.
* | maintainers/haskell/regen-h-packages.sh: let user edit commit msgsternenseemann2025-07-101-1/+1
| | | | | | | | | | | | | | Calling git commit with --edit here, allows the user to rephrase the very nondescript default message, in doing so e.g. clarifying why the regeneration was necessary etc. This should hopefully encourage better commit mesages.
* | maintainers/scripts/haskell: briefer commit message bodiessternenseemann2025-07-103-3/+3
| | | | | | | | | | | | The “This commit was generated by …” message is very wordy and often exceeds 72 characters which is a good (loose) target for wrapping lines in commit messages.
* | maintainers/haskell/update*: print version diff when not committingsternenseemann2025-07-102-6/+58
|/ | | | | | | | This allows other scripts to detect whether anything changed without resorting to git-diff(1): If nothing changed, stdout will be empty (i.e. we now enforce that other messages go to stderr). To make sure that this behavior is retained in the future, the scripts' behavior is briefly documented in the files' header.
* maintainers/scripts/haskell: don't redundantly add C++ Nix to envsternenseemann2025-06-305-5/+5
| | | | | | | | | | | Since the shebang calls nix-shell, we can safely assume that Nix (Lix, C++ Nix) is installed. Our scripts should support a wide enough range of Nix versions so that using the “impure” version of the tool is not a problem. This works around #400784. My theory is that the Nix frontend commands no longer work with older versions of the Nix daemon nor the Lix daemon in our workloads.
* maintainers/scripts/haskell: sort case- and locale-insensitively consistentlyWolfgang Walther2025-05-053-5/+5
| | | | | sort -i actually means "ignore nonprinting", not "ignore case". Also, we need to set LC_ALL to get proper sorting for "-".
* maintainers/scripts/haskell/regenerate-hackage-packages.sh: run nixfmt ↵Wolfgang Walther2025-04-061-1/+1
| | | | without --fast as well
* maintainers/scripts/haskell/regenerate-hackage-packages.sh: run nixfmt on ↵Wolfgang Walther2025-04-051-1/+2
| | | | hackage-packages.nix
* maintainers/scripts/haskell: add unbreak.nu scriptWolfgang Walther2025-02-171-0/+31
| | | | | | The new script runs through all packages marked as broken in broken.yaml, tries to build them, and removes them from the file if they do.
* maintainers/haskell/merge-and-open-pr.sh: target stagingsternenseemann2025-02-121-9/+5
| | | | | We can't update the package list after the merge since it may be weeks until the changes propagate to master and the channels.
* haskellPackages: stackage LTS 22.43 -> LTS 23.3sternenseemann2025-01-081-1/+1
| | | | This commit has been generated by maintainers/scripts/haskell/update-stackage.sh
* haskellPackages: stackage LTS 22.40 -> LTS 22.43sternenseemann2024-12-261-1/+1
| | | | This commit has been generated by maintainers/scripts/haskell/update-stackage.sh
* haskellPackages.cabal2nix-unstable: 2024-12-04 -> 2024-12-22sternenseemann2024-12-221-3/+5
| | | | Includes https://github.com/NixOS/cabal2nix/pull/638.
* treewide: format all inactive Nix filesSilvan Mosberger2024-12-105-129/+146
| | | | | | | | | | | | | | | | | | | | | | After final improvements to the official formatter implementation, this commit now performs the first treewide reformat of Nix files using it. This is part of the implementation of RFC 166. Only "inactive" files are reformatted, meaning only files that aren't being touched by any PR with activity in the past 2 months. This is to avoid conflicts for PRs that might soon be merged. Later we can do a full treewide reformat to get the rest, which should not cause as many conflicts. A CI check has already been running for some time to ensure that new and already-formatted files are formatted, so the files being reformatted here should also stay formatted. This commit was automatically created and can be verified using nix-build https://github.com/infinisil/treewide-nixpkgs-reformat-script/archive/a08b3a4d199c6124ac5b36a889d9099b4383463f.tar.gz \ --argstr baseRev 78e9caf153f5a339bf1d4c000ff6f0a503a369c8 result/bin/apply-formatting $NIXPKGS_PATH
* hydra: rename from hydra_unstableSandro Jäckel2024-08-291-1/+1
| | | | There is no stable hydra package
* haskell.packages.ghc{96,98}.cabal-install: fix build of 3.12sternenseemann2024-07-251-0/+1
| | | | | | | | | | | | | | | | | | 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.
* maintainers/haskell/hydra-report: slightly optimise `get-report --slow`Naïm Favier2024-03-301-5/+4
| | | | There's no need to fetch the eval again, we have it right there.
* maintainers/haskell/hydra-report: add optional id argument to `get-report`Naïm Favier2024-03-301-7/+15
| | | | | Useful if we ever need to reproduce the report for a previous evaluation.
* haskellPackages.cabal2nix-unstable: 2024-01-04 -> 2024-02-05maralorn2024-02-051-4/+0
|
* maintainers/scripts/haskell: optimise `calculateReverseDependencies`Naïm Favier2024-01-141-5/+5
| | | | Use an IntMap rather than a list for the fixpoint computation.
* maintainers/scripts/haskell: ignore self-dependenciesNaïm Favier2024-01-141-2/+4
| | | | | These create trivial loops in the dependency graph, which make the transitive closure computation loop.
* haskellPackages: stackage LTS 21.25 -> LTS 22.4sternenseemann2024-01-071-1/+1
| | | | This commit has been generated by maintainers/scripts/haskell/update-stackage.sh
* haskellPackages: stackage LTS 21.23 -> LTS 21.25sternenseemann2024-01-041-1/+4
| | | | | | | 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.
* maintainers/scripts/merge-and-open-pr: fix error handlingNaïm Favier2023-12-041-2/+2
| | | | Calling `die` in a subshell hides the error message.
* scripts/haskell/hydra-report: use inline emojiNaïm Favier2023-12-031-18/+18
| | | | | GitHub broke the rendering of colon emoji codes inside square brackets; let's just use emoji.
* treewide: fix redirected and broken URLsAnthony Roussel2023-11-111-1/+1
| | | | Using the script in maintainers/scripts/update-redirected-urls.sh
* haskell hydra-report: bump timeout for all requests to HydraDennis Gosnell2023-11-021-9/+10
| | | | | | | | | 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.
* maintainers/scripts/haskell: Fix a typomaralorn2023-09-061-1/+1
|
* maintainers/haskell/mark-broken.sh: allow passing --no-request-logssternenseemann2023-09-031-2/+20
| | | | This flag needs to be passed through to hydra-report.hs.