├── .github ├── FUNDING.yml └── workflows │ └── haskell-updates-status.yml ├── LICENSE ├── README-footer.md ├── README.md └── update.sh /.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | # These are supported funding model platforms 2 | 3 | github: cdepillabout 4 | patreon: # Replace with a single Patreon username 5 | open_collective: # Replace with a single Open Collective username 6 | ko_fi: # Replace with a single Ko-fi username 7 | tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel 8 | community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry 9 | liberapay: # Replace with a single Liberapay username 10 | issuehunt: # Replace with a single IssueHunt username 11 | otechie: # Replace with a single Otechie username 12 | custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] 13 | -------------------------------------------------------------------------------- /.github/workflows/haskell-updates-status.yml: -------------------------------------------------------------------------------- 1 | 2 | name: "Haskell Updates Status" 3 | 4 | on: 5 | schedule: 6 | # * is a special character in YAML so you have to quote this string 7 | # Update every 6 hours 8 | - cron: '0 */6 * * *' 9 | 10 | # Allow manually starting the GitHub Action from the browser. This is nice for 11 | # testing. You can manually start the workflow by clicking the "Run workflow" button on 12 | # https://github.com/cdepillabout/nix-haskell-updates-status/actions/workflows/haskell-updates-status.yml 13 | workflow_dispatch: 14 | inputs: {} 15 | 16 | jobs: 17 | update: 18 | runs-on: ubuntu-latest 19 | steps: 20 | - uses: actions/checkout@v4 21 | 22 | - uses: cachix/install-nix-action@v26 23 | 24 | - name: Run ./update.sh 25 | run: | 26 | # Create the updated README.md using the script from this checkout. 27 | ./update.sh 28 | mv README.md ../README.md-new 29 | 30 | - name: Update README.md on main branch 31 | run: | 32 | # Set GitHub Actions Bot email address and user name. 33 | git config --global user.name 'github-actions' 34 | git config --global user.email '41898282+github-actions[bot]@users.noreply.github.com' 35 | 36 | # Get the current commit that we are running this workflow from. 37 | commit=$(git rev-parse --short HEAD) 38 | 39 | # Checkout the remote main branch. 40 | git fetch 41 | git reset --hard origin/main 42 | 43 | # Check in our new README.md file and push it to the remote main branch. 44 | mv ../README.md-new ./README.md 45 | git add README.md 46 | git commit -m "Updated README.md from update.sh at ${commit}" 47 | git push origin HEAD:main 48 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | BSD 3-Clause License 2 | 3 | Copyright (c) 2021, Dennis Gosnell 4 | All rights reserved. 5 | 6 | Redistribution and use in source and binary forms, with or without 7 | modification, are permitted provided that the following conditions are met: 8 | 9 | 1. Redistributions of source code must retain the above copyright notice, this 10 | list of conditions and the following disclaimer. 11 | 12 | 2. Redistributions in binary form must reproduce the above copyright notice, 13 | this list of conditions and the following disclaimer in the documentation 14 | and/or other materials provided with the distribution. 15 | 16 | 3. Neither the name of the copyright holder nor the names of its 17 | contributors may be used to endorse or promote products derived from 18 | this software without specific prior written permission. 19 | 20 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 21 | AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 22 | IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 23 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE 24 | FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 25 | DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR 26 | SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER 27 | CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, 28 | OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 29 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 30 | -------------------------------------------------------------------------------- /README-footer.md: -------------------------------------------------------------------------------- 1 | 2 | ---------------------------------------------------------------------- 3 | 4 | This README.md is automatically updated every 6 hours with the status of the 5 | [`haskell-updates` branch/jobset on Hydra](https://hydra.nixos.org/jobset/nixpkgs/haskell-updates) 6 | from [Nixpkgs](https://github.com/NixOS/nixpkgs). This is mostly only of 7 | interest to the [Nixpkgs Haskell maintainers](https://github.com/orgs/NixOS/teams/haskell). 8 | 9 | See the 10 | [haskell-modules/HACKING.md](https://github.com/NixOS/nixpkgs/blob/haskell-updates/pkgs/development/haskell-modules/HACKING.md) 11 | file for more information about this build report. 12 | 13 | You may also be interested in the currently open 14 | [`haskell-updates` PR in Nixpkgs](https://github.com/nixos/nixpkgs/pulls?q=is%3Apr+is%3Aopen+head%3Ahaskell-updates). 15 | 16 | You can force the GitHub Action to run (and the README.md to be updated) by 17 | manually running the Action. To do this, go to the Action list screen 18 | (https://github.com/cdepillabout/nix-haskell-updates-status/actions), 19 | click on any of the Workflow runs, and then click the `Re-run jobs` button. 20 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ### [haskell-updates build report from hydra](https://hydra.nixos.org/jobset/nixpkgs/haskell-updates) 2 | *evaluation [1815785](https://hydra.nixos.org/eval/1815785) of nixpkgs commit [2c526a5](https://github.com/NixOS/nixpkgs/commits/2c526a5d52a941722c59465a07befddbb3b300a3) as of 2025-06-03 18:11 UTC* 3 | 4 | 🔴 **Branch not mergeable** 5 | * Too many outstanding jobs on x86_64-linux. 6 | * `mergeable` jobset is not finished. 7 | * `maintained` jobset is not finished. 8 | 9 | #### Build summary 10 | 11 | | Platform | Failed ❌ | DependencyFailed ❗ | TimedOut ⌛🚫 | Unfinished ⏳ | Success ✅ | 12 | | --- | --- | --- | --- | --- | --- | 13 | | [x86_64-linux 🐧](https://hydra.nixos.org/eval/1815785?filter=.x86_64-linux) | 10 | 11 | 1 | 5610 | 1760 | 14 | #### Maintained Linux packages with build failure 15 | - [ ] [[🐧❌]](https://hydra.nixos.org/build/299140180) [haskellPackages.persistent-sqlite](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.persistent-sqlite) @psibi 16 | #### Maintained Linux packages with failed dependency 17 | - [ ] [git-annex](https://hydra.nixos.org/eval/1815785?filter=git-annex) @peti @roosemberth 18 | - [[🐧⏳]](https://hydra.nixos.org/build/299134870) [toplevel](https://hydra.nixos.org/eval/1815785?filter=git-annex) 19 | - [[🐧❗]](https://hydra.nixos.org/build/299134976) [haskell.packages.ghc9101](https://hydra.nixos.org/eval/1815785?filter=haskell.packages.ghc9101.git-annex) 20 | - [[🐧⏳]](https://hydra.nixos.org/build/299134979) [haskell.packages.ghc9102](https://hydra.nixos.org/eval/1815785?filter=haskell.packages.ghc9102.git-annex) 21 | - [[🐧⏳]](https://hydra.nixos.org/build/299137958) [haskellPackages](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.git-annex) 22 | - [ ] [stack](https://hydra.nixos.org/eval/1815785?filter=stack) @cdepillabout 23 | - [[🐧❗]](https://hydra.nixos.org/build/299142604) [toplevel](https://hydra.nixos.org/eval/1815785?filter=stack) 24 | - [[🐧⏳]](https://hydra.nixos.org/build/299141627) [haskellPackages](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.stack) 25 | #### Unmaintained packages with build failure 26 |
9 job(s) 27 | 28 | - [ ] [[🐧❌]](https://hydra.nixos.org/build/299135676) [haskellPackages.aeson-warning-parser](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.aeson-warning-parser) ⤴️ 2 | 6 29 | - [ ] [[🐧❌]](https://hydra.nixos.org/build/299137169) [haskellPackages.diff-loc](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.diff-loc) ⤴️ 1 | 1 30 | - [ ] [[🐧❌]](https://hydra.nixos.org/build/299138327) [haskellPackages.hash-store](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.hash-store) ⤴️ 0 | 1 31 | - [ ] [[🐧❌]](https://hydra.nixos.org/build/299139104) [haskellPackages.kmeans](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.kmeans) ⤴️ 0 | 1 32 | - [ ] [[🐧❌]](https://hydra.nixos.org/build/299135789) [haskellPackages.amazonka-connectparticipant](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.amazonka-connectparticipant) 33 | - [ ] [[🐧❌]](https://hydra.nixos.org/build/299137101) [haskellPackages.dbus-app-launcher](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.dbus-app-launcher) 34 | - [ ] [[🐧❌]](https://hydra.nixos.org/build/299137822) [haskellPackages.genvalidity-network-uri](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.genvalidity-network-uri) 35 | - [ ] [[🐧❌]](https://hydra.nixos.org/build/299139659) [haskellPackages.more-extensible-effects](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.more-extensible-effects) 36 | - [ ] [[🐧❌]](https://hydra.nixos.org/build/299140266) [haskellPackages.phino](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.phino) 37 |
38 | 39 | #### Unmaintained packages with failed dependency 40 |
9 job(s) 41 | 42 | - [ ] [[🐧❗]](https://hydra.nixos.org/build/299142387) [haskellPackages.yesod-persistent](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.yesod-persistent) ⤴️ 17 | 89 43 | - [ ] [[🐧❗]](https://hydra.nixos.org/build/299142379) [haskellPackages.yesod-form](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.yesod-form) ⤴️ 16 | 86 44 | - [ ] [[🐧❗]](https://hydra.nixos.org/build/299142377) [haskellPackages.yesod](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.yesod) ⤴️ 7 | 51 45 | - [ ] [[🐧❗]](https://hydra.nixos.org/build/299142393) [haskellPackages.yesod-test](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.yesod-test) ⤴️ 3 | 9 46 | - [ ] [[🐧❗]](https://hydra.nixos.org/build/299137785) [haskellPackages.fs-sim](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.fs-sim) 47 | - [ ] [[🐧❗]](https://hydra.nixos.org/build/299138740) [haskellPackages.hsendxmpp](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.hsendxmpp) 48 | - [ ] [[🐧❗]](https://hydra.nixos.org/build/299138923) [haskellPackages.inspection-proxy](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.inspection-proxy) 49 | - [ ] [[🐧❗]](https://hydra.nixos.org/build/299142396) [haskellPackages.yesod-session-persist](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.yesod-session-persist) 50 | - [ ] [[🐧❗]](https://hydra.nixos.org/build/299142403) [haskellPackages.yesod-tableview](https://hydra.nixos.org/eval/1815785?filter=haskellPackages.yesod-tableview) 51 |
52 | 53 | #### Top 50 broken packages, sorted by number of reverse dependencies 54 |
50 job(s) 55 | 56 | [haskell98](https://packdeps.haskellers.com/reverse/haskell98) ⤴️ 152 57 | [failure](https://packdeps.haskellers.com/reverse/failure) ⤴️ 72 58 | [enumerator](https://packdeps.haskellers.com/reverse/enumerator) ⤴️ 56 59 | [connection](https://packdeps.haskellers.com/reverse/connection) ⤴️ 50 60 | [util](https://packdeps.haskellers.com/reverse/util) ⤴️ 49 61 | [derive](https://packdeps.haskellers.com/reverse/derive) ⤴️ 48 62 | [fclabels](https://packdeps.haskellers.com/reverse/fclabels) ⤴️ 47 63 | [syb-with-class](https://packdeps.haskellers.com/reverse/syb-with-class) ⤴️ 42 64 | [MonadCatchIO-transformers](https://packdeps.haskellers.com/reverse/MonadCatchIO-transformers) ⤴️ 41 65 | [TypeCompose](https://packdeps.haskellers.com/reverse/TypeCompose) ⤴️ 41 66 | [PrimitiveArray](https://packdeps.haskellers.com/reverse/PrimitiveArray) ⤴️ 35 67 | [crypto-random](https://packdeps.haskellers.com/reverse/crypto-random) ⤴️ 35 68 | [dual](https://packdeps.haskellers.com/reverse/dual) ⤴️ 32 69 | [hsp](https://packdeps.haskellers.com/reverse/hsp) ⤴️ 32 70 | [language-ecmascript](https://packdeps.haskellers.com/reverse/language-ecmascript) ⤴️ 31 71 | [iteratee](https://packdeps.haskellers.com/reverse/iteratee) ⤴️ 29 72 | [composite-base](https://packdeps.haskellers.com/reverse/composite-base) ⤴️ 28 73 | [regexpr](https://packdeps.haskellers.com/reverse/regexpr) ⤴️ 27 74 | [text-format](https://packdeps.haskellers.com/reverse/text-format) ⤴️ 27 75 | [crypto-numbers](https://packdeps.haskellers.com/reverse/crypto-numbers) ⤴️ 25 76 | [either-unwrap](https://packdeps.haskellers.com/reverse/either-unwrap) ⤴️ 25 77 | [Crypto](https://packdeps.haskellers.com/reverse/Crypto) ⤴️ 22 78 | [crypto-pubkey](https://packdeps.haskellers.com/reverse/crypto-pubkey) ⤴️ 22 79 | [haskelldb](https://packdeps.haskellers.com/reverse/haskelldb) ⤴️ 22 80 | [wxdirect](https://packdeps.haskellers.com/reverse/wxdirect) ⤴️ 22 81 | [BiobaseTypes](https://packdeps.haskellers.com/reverse/BiobaseTypes) ⤴️ 21 82 | [alg](https://packdeps.haskellers.com/reverse/alg) ⤴️ 21 83 | [hw-rankselect-base](https://packdeps.haskellers.com/reverse/hw-rankselect-base) ⤴️ 21 84 | [libxml-sax](https://packdeps.haskellers.com/reverse/libxml-sax) ⤴️ 21 85 | [wxc](https://packdeps.haskellers.com/reverse/wxc) ⤴️ 21 86 | [biocore](https://packdeps.haskellers.com/reverse/biocore) ⤴️ 20 87 | [hw-excess](https://packdeps.haskellers.com/reverse/hw-excess) ⤴️ 20 88 | [reform](https://packdeps.haskellers.com/reverse/reform) ⤴️ 20 89 | [wxcore](https://packdeps.haskellers.com/reverse/wxcore) ⤴️ 20 90 | [attoparsec-enumerator](https://packdeps.haskellers.com/reverse/attoparsec-enumerator) ⤴️ 19 91 | [cprng-aes](https://packdeps.haskellers.com/reverse/cprng-aes) ⤴️ 19 92 | [fay](https://packdeps.haskellers.com/reverse/fay) ⤴️ 19 93 | [harp](https://packdeps.haskellers.com/reverse/harp) ⤴️ 19 94 | [hsx2hs](https://packdeps.haskellers.com/reverse/hsx2hs) ⤴️ 19 95 | [hw-balancedparens](https://packdeps.haskellers.com/reverse/hw-balancedparens) ⤴️ 19 96 | [ixset](https://packdeps.haskellers.com/reverse/ixset) ⤴️ 19 97 | [mmsyn2](https://packdeps.haskellers.com/reverse/mmsyn2) ⤴️ 19 98 | [wx](https://packdeps.haskellers.com/reverse/wx) ⤴️ 19 99 | [BiobaseENA](https://packdeps.haskellers.com/reverse/BiobaseENA) ⤴️ 18 100 | [asn1-data](https://packdeps.haskellers.com/reverse/asn1-data) ⤴️ 18 101 | [bytestring-show](https://packdeps.haskellers.com/reverse/bytestring-show) ⤴️ 18 102 | [dbus-core](https://packdeps.haskellers.com/reverse/dbus-core) ⤴️ 18 103 | [digit](https://packdeps.haskellers.com/reverse/digit) ⤴️ 18 104 | [gtksourceview2](https://packdeps.haskellers.com/reverse/gtksourceview2) ⤴️ 18 105 | [hw-rankselect](https://packdeps.haskellers.com/reverse/hw-rankselect) ⤴️ 18 106 |
107 | 108 | 109 | *⤴️: The number of packages that depend (directly or indirectly) on this package (if any). If two numbers are shown the first (lower) number considers only packages which currently have enabled hydra jobs, i.e. are not marked broken. The second (higher) number considers all packages.* 110 | 111 | *Report generated with [maintainers/scripts/haskell/hydra-report.hs](https://github.com/NixOS/nixpkgs/blob/haskell-updates/maintainers/scripts/haskell/hydra-report.hs)* 112 | 113 | 114 | ---------------------------------------------------------------------- 115 | 116 | This README.md is automatically updated every 6 hours with the status of the 117 | [`haskell-updates` branch/jobset on Hydra](https://hydra.nixos.org/jobset/nixpkgs/haskell-updates) 118 | from [Nixpkgs](https://github.com/NixOS/nixpkgs). This is mostly only of 119 | interest to the [Nixpkgs Haskell maintainers](https://github.com/orgs/NixOS/teams/haskell). 120 | 121 | See the 122 | [haskell-modules/HACKING.md](https://github.com/NixOS/nixpkgs/blob/haskell-updates/pkgs/development/haskell-modules/HACKING.md) 123 | file for more information about this build report. 124 | 125 | You may also be interested in the currently open 126 | [`haskell-updates` PR in Nixpkgs](https://github.com/nixos/nixpkgs/pulls?q=is%3Apr+is%3Aopen+head%3Ahaskell-updates). 127 | 128 | You can force the GitHub Action to run (and the README.md to be updated) by 129 | manually running the Action. To do this, go to the Action list screen 130 | (https://github.com/cdepillabout/nix-haskell-updates-status/actions), 131 | click on any of the Workflow runs, and then click the `Re-run jobs` button. 132 | -------------------------------------------------------------------------------- /update.sh: -------------------------------------------------------------------------------- 1 | #! /usr/bin/env nix-shell 2 | #! nix-shell -i bash 3 | #! nix-shell -I nixpkgs=https://github.com/NixOS/nixpkgs/archive/haskell-updates.tar.gz 4 | #! nix-shell -p "with import (builtins.fetchTarball https://github.com/NixOS/nixpkgs/archive/nixos-24.11.tar.gz) {}; hydra_unstable" 5 | #! nix-shell -p "writers.writeHaskellBin \"hydra-report\" {libraries = with haskellPackages; [aeson req];} (path + \"/maintainers/scripts/haskell/hydra-report.hs\")" 6 | #! nix-shell -p "writers.writeBashBin \"get-nixpkgs-path\" \"echo \${path}\"" 7 | 8 | # This script updates the README.md with the latest build report from Hydra for 9 | # the `haskell-updates` branch in Nixpkgs. 10 | # 11 | # See https://github.com/NixOS/nixpkgs/blob/haskell-updates/pkgs/development/haskell-modules/HACKING.md 12 | # for more information about this process. 13 | # 14 | # TODO: This file hard-codes the Haskell libraries used by the nixpkgs 15 | # maintainers/scripts/haskell/hydra-report.hs file. 16 | # It would be nice to be able to figure out these libraries automatically. 17 | # 18 | # TODO: The `get-nixpkgs-path` is used to get the path to the nixpkgs repo that 19 | # has been downloaded for the nix-shell -I argument. This is somewhat of a hack. 20 | # I wouldn't be surprised if there wasn't an easier way to get the path to the 21 | # nixpkgs repo from within nix-shell. 22 | # 23 | # TODO: This uses `hydra_unstable` from 24.11 because `hydra-unstable` is sometimes broken 24 | # on `master`. 25 | 26 | set -u -e 27 | 28 | # Get the updated report from Hydra. 29 | if ! hydra-report get-report; then 30 | echo 31 | echo "Failure when running \`hydra-report get-report\`." 32 | echo "This may have been a timeout, since Hydra is terrible." 33 | echo "Trying again with \`--slow\` flag..." 34 | echo 35 | hydra-report get-report --slow 36 | fi 37 | 38 | # Create the markdown output from the report. Save it to the README.md file. 39 | # 40 | # Note that the `hydra-report ping-maintainers` command must be run the root of 41 | # the nixpkgs repo. 42 | (cd "$(get-nixpkgs-path)" && LC_ALL=en_US.UTF-8 hydra-report ping-maintainers) > README.md 43 | 44 | # Add the footer to the end of the README. 45 | cat README-footer.md >> README.md 46 | --------------------------------------------------------------------------------