Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Haskell: to-do list of potentially out-dated overrides #86500

Closed
peti opened this issue May 1, 2020 · 19 comments
Closed

Haskell: to-do list of potentially out-dated overrides #86500

peti opened this issue May 1, 2020 · 19 comments

Comments

@peti
Copy link
Member

peti commented May 1, 2020

The krank utility found the following references to closed Github issues in our Haskell override files. The fact that those bugs are closed upstream is an indication that we can probably remove the override, but that needs to be checked because upstream closes issues for all kinds of reasons, not all of them meaning that the issue was actually fixed. Furthermore, there appear to be some URLs to bugs that don't exist anymore (see end of this list).

Please, everyone, help fix these issues by checking some entries of that TODO list and, if applicable, create a pull-request to submit the fix. Then also please check the TODO entry here so that it won't be checked again by someone else.

Please submit your changes against the haskell-updates branch, not master. If you feel like it, please ping @peti and @nh2.

@peti
Copy link
Member Author

peti commented May 1, 2020

Overrides with closed issues attached

@peti
Copy link
Member Author

peti commented May 1, 2020

Overrides with Invalid URLs

@cdepillabout
Copy link
Member

cdepillabout commented May 2, 2020

nixpkgs/pkgs/development/haskell-modules/configuration-nix.nix
Line 685 in 4b942e8
purescript/spago#510

I'm not sure exactly what to do about this.

The upstream issue was closed because it is meant to work the way they have it working, so it is something we have to workaround in nixpkgs. I think it is nice to have the issue linked there to give some context why we have to do this hacky thing.

Although if you'd like to remove the issue link, I'd be fine with that as well. What we are doing should be explained in our code as well.

I checked this off, given that I think we should keep in the link, but if you want to keep it unchecked, please feel free to uncheck this.

@nh2
Copy link
Contributor

nh2 commented May 2, 2020

@cdepillabout I think that is fine. The point of this effort is to find things that need to be done; this linked issue is only informational and nothing needs to be done, so checking it off is right.

In the future we probably want to use some textual marker to exclude this type of link from krank.

@Anton-Latukha
Copy link
Contributor

Anton-Latukha commented Jun 4, 2020

In that PR there is haddock-library{._1_9_0} here is haddock mentioned.

Other packages from that PR seem not be mentioned here.

@Anton-Latukha
Copy link
Contributor

Anton-Latukha commented Jun 22, 2020

@Anton-Latukha
Copy link
Contributor

Anton-Latukha commented Jun 22, 2020

The lot of linked reports and PRs are closed/merged, but Nixpkgs awaits on project release a package on Hackage.

So since those reports/PRs are solved:

  1. they should be deleted, so krank does not false-positive on them
  2. they should be deleted/replaced to not misled contributors to re-re-re-check them.
  3. they should be replaced with relevant info.

So I adopted the message:

# 2020-06-22: NOTE: > 0.4.0 => rm Jailbreak

So the regex and the check against the version is needed.

@stale
Copy link

stale bot commented Dec 20, 2020

I marked this as stale due to inactivity. → More info

@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Dec 20, 2020
@nh2
Copy link
Contributor

nh2 commented Dec 21, 2020

Probably still relevant given the many recent PRs.

@stale stale bot removed the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Dec 21, 2020
@svmhdvn
Copy link
Contributor

svmhdvn commented Dec 21, 2020

I'm happy to continue gradually working on this, I will be getting a little more time to put into this soon.

@Jake-Gillberg
Copy link
Contributor

It looks like idris 1.3.3 is broken and needs an older version of megaparsec.

The issue referenced above: idris-lang/Idris-dev#4826 is closed as "won't fix".

This override was removed in 4b2b6ce. I believe this broke the package.

Idris is failing to build with the message:

  Setup: Encountered missing or private dependencies:
  aeson >=0.6 && <1.5, haskeline ==0.7.*, megaparsec >=7.0.4 && <9

I tried fixing this package (Jake-Gillberg@5c63f24) by re-adding the relevant overrides, but it looks like specified megaparsec versions are not found.

I'd be happy to test and submit a working pull request if I could get some guidance on how to meet the listed megaparsec version.

@Anton-Latukha
Copy link
Contributor

Anton-Latukha commented Feb 21, 2021

BTW. Stackage currently removed the upper bound on the hnix-store-core that is still unmaintained there. We by the team voted for removal, so it would happen eventually, commercialhaskell/stackage#5872. I do not know their schedules & all procedure of how Nixpkgs inherits with LTS & Nightly presence. But boundary removal means that hnix-store-core hardcode version derivation overrides soon would be out-dated or changed, which this thread is about.

@Anton-Latukha
Copy link
Contributor

Anton-Latukha commented Feb 21, 2021

#86500 (comment)

I'm happy to continue gradually working on this, I will be getting a little more time to put into this soon.

You did great work, thank you.

@cdepillabout
Copy link
Member

@Jake-Gillberg You can generate megaparsec_8_0_0 by adding a line to the following list:

extra-packages:
- Cabal == 2.2.* # required for jailbreak-cabal etc.
- Cabal == 2.4.* # required for cabal-install etc.
- Cabal == 3.2.* # required for cabal-install etc.
- dhall == 1.29.0 # required for ats-pkg
- dhall == 1.37.1 # required for spago 0.19.0.
- Diff < 0.4 # required by liquidhaskell-0.8.10.2: https://github.com/ucsd-progsys/liquidhaskell/issues/1729
- ghc-tcplugins-extra ==0.3.2 # required for polysemy-plugin 0.2.5.0
- haddock == 2.23.* # required on GHC < 8.10.x
- haddock-api == 2.23.* # required on GHC < 8.10.x
- haddock-library ==1.7.* # required by stylish-cabal-0.5.0.0
- happy == 1.19.9 # for purescript
- hinotify == 0.3.9 # for xmonad-0.26: https://github.com/kolmodin/hinotify/issues/29
- resolv == 0.1.1.2 # required to build cabal-install-3.0.0.0 with pre ghc-8.8.x
- immortal == 0.2.2.1 # required by Hasura 1.3.1, 2020-08-20
- dependent-map == 0.2.4.0 # required by Hasura 1.3.1, 2020-08-20
- dependent-sum == 0.4 # required by Hasura 1.3.1, 2020-08-20
- network == 2.6.3.1 # required by pkgs/games/hedgewars/default.nix, 2020-11-15
- mmorph == 1.1.3 # Newest working version of mmorph on ghc 8.6.5. needed for hls
- haskell-lsp == 0.23.0.0 # required by hls-plugin-api 0.7.0.0, 2021-02-08
- haskell-lsp-types == 0.23.0.0 # required by hls-plugin-api 0.7.0.0, 2021-02-08
- lsp-test == 0.11.0.7 # required by hls-plugin-api 0.7.0.0, 2021-02-08

If you send a PR to the haskell-updates branch adding this line and it is merged in, then the next time the re-generation script runs, it will create a megaparsec_8_0_0 derivation for you.

Please feel free to open up an issue or PR to further discuss this.

@Anton-Latukha
Copy link
Contributor

Anton-Latukha commented Feb 23, 2021

Stackage: hnix-store-core, which is in Nightly & LTS:

juhp in commercialhaskell/stackage#5872 (comment)

I have blocked the package now.
If you need action for LTS please open a separate issue for that as mentioned.

So the situation is changed for the package and for the hnix stack. Over time it would go through the proper process of a graceful removal, and hnix infrastructure would scale back to Hackage. So all of our "guilty as charged" overrides would be cleaned over the nearest time.

@stale
Copy link

stale bot commented Aug 22, 2021

I marked this as stale due to inactivity. → More info

@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Aug 22, 2021
@cdepillabout
Copy link
Member

@maralorn @sterfield @expipiplus1 Since none of us is really maintaining this list or this issue, how about just closing it out?

In theory I think something like this issue is a neat idea, but I don't think it makes sense to keep this issue open without anyone actually going through and keeping it up to date.

@stale stale bot removed the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jul 17, 2022
@maralorn
Copy link
Member

I think we should in general strive for more hygiene like that, but it’s not very high priority and I guess we should run krank new and open a new issue anyways.

@maralorn maralorn closed this as not planned Won't fix, can't repro, duplicate, stale Jul 17, 2022
@maralorn
Copy link
Member

Sorry for the noise @sterfield, we meant @sternenseemann.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants