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鈥檒l occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use hackage version of czipwith #2346

Merged
merged 13 commits into from
Nov 17, 2021
7 changes: 4 additions & 3 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ defaults: &defaults
working_directory: ~/build
docker:
- image: alanz/haskell-hie-ci
resource_class: large
steps:
- checkout
- run:
Expand Down Expand Up @@ -47,23 +48,23 @@ defaults: &defaults
name: Stack setup
command: |
if [[ -z "$SKIP_CI" ]]; then
stack -j2 --stack-yaml=${STACK_FILE} setup
stack -j4 --stack-yaml=${STACK_FILE} setup
fi

- run:
name: Build (we need the exe for tests)
# need j1, else ghc-lib-parser triggers OOM
command: |
if [[ -z "$SKIP_CI" ]]; then
stack -j1 --stack-yaml=${STACK_FILE} install --no-terminal
stack -j4 --stack-yaml=${STACK_FILE} install --no-terminal
fi
no_output_timeout: 30m

- run:
name: Build Testsuite without running it
command: |
if [[ -z "$SKIP_CI" ]]; then
stack -j1 --stack-yaml=${STACK_FILE} build --test --no-run-tests --no-terminal
stack -j4 --stack-yaml=${STACK_FILE} build --test --no-run-tests --no-terminal
fi
no_output_timeout: 30m

Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/nix.yml
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ jobs:
# 2. Nix files are changed (runs on PR)
build:
needs: pre_job
runs-on: matrix.os
runs-on: ${{ matrix.os }}
env:
HAS_TOKEN: ${{ secrets.HLS_CACHIX_AUTH_TOKEN != '' }}
if: (needs.pre_job.outputs.should_skip_build != 'true' && needs.pre_job.outputs.should_skip_pr != 'true') || (github.repository_owner == 'haskell' && github.ref == 'refs/heads/master')
Expand Down
8 changes: 1 addition & 7 deletions cabal-ghc901.project
Original file line number Diff line number Diff line change
Expand Up @@ -33,12 +33,6 @@ package *
ghc-options: -haddock
test-show-details: direct

source-repository-package
type: git
location: https://github.com/mithrandi/czipwith.git
tag: b6245884ae83e00dd2b5261762549b37390179f8
-- https://github.com/lspitzner/czipwith/pull/2

source-repository-package
type: git
location: https://github.com/anka-213/th-extras
Expand All @@ -55,7 +49,7 @@ source-repository-package

write-ghc-environment-files: never

index-state: 2021-10-04T02:41:06Z
index-state: 2021-11-11T19:25:51Z

constraints:
-- These plugins don't work on GHC9 yet
Expand Down
211 changes: 3 additions & 208 deletions cabal-ghc921.project
Original file line number Diff line number Diff line change
Expand Up @@ -24,34 +24,17 @@ packages:
./plugins/hls-ormolu-plugin
./plugins/hls-call-hierarchy-plugin

with-compiler: ghc-9.2.1

tests: true

package *
ghc-options: -haddock
test-show-details: direct

source-repository-package
type: git
location: https://github.com/mithrandi/czipwith.git
tag: b6245884ae83e00dd2b5261762549b37390179f8
-- https://github.com/lspitzner/czipwith/pull/2

-- Head of hiedb
source-repository-package
type: git
location: https://github.com/wz1000/HieDb
tag: 45c4671db2da8ce5cd11e964573846cfbf3bbec8

-- GHC 9.2 for ghc-check
source-repository-package
type: git
location: https://github.com/fendor/ghc-check
tag: 224f3901eaa1b32a27e097968afd4a3894efa77e
-- https://github.com/pepeiborra/ghc-check/pull/14/files

write-ghc-environment-files: never

index-state: 2021-09-29T21:38:47Z
index-state: 2021-11-11T19:25:51Z

constraints:
-- These plugins doesn't work on GHC92 yet
Expand All @@ -78,191 +61,3 @@ allow-newer:
diagrams:diagrams-core,
Chart-diagrams:diagrams-core,
SVGFonts:diagrams-core

constraints:
Agda ==2.6.1.3,
Diff ==0.4.0,
EdisonAPI ==1.3.1,
EdisonCore ==1.3.2.1,
FPretty ==1.1,
HTTP ==4000.3.16,
HUnit ==1.6.2.0,
QuickCheck ==2.14.2,
Comment on lines -82 to -90
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

did you intend to delete all the constraints?

Copy link
Member Author

@jneira jneira Nov 11, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yep, afaiu we usually dont need them having pinned the hackage index. They usually live in a cabal.project.freeze and no in the main one,. But maybe @fendor could expand the rationale behind

Copy link
Collaborator

@fendor fendor Nov 12, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IIRC, these are constraints from head.hackage to make sure the patched versions of packages are used. I think removal of them is fine, assuming all of our dependencies now really work with GHC 9.2.

Copy link
Member Author

@jneira jneira Nov 12, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Oh, i see, maybe it would be nice to add another cabal-9.2.1.project.local with all the info needed to use head.hackage: the head.hackage repository info itself (it is advised in the head.hackage repo to set it per project/cabal.project.local) + constraints if needed
So any developer could use such cabal-9.2.1.project.local out of the box

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If you prefer an additional file containing it, fine by me. BTW, these constraints might be outdated, unsure how to best proceed with updating these.

Copy link
Member Author

@jneira jneira Nov 12, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

cabal freeze having head.hackage as a overlay repo could help? maybe we could add the head.hackage repo in cabal-921.project if it is needed to make it work for sure (and remove it when patches are upstreamed)

And use directly the constraints it offer: https://ghc.gitlab.haskell.org/head.hackage/cabal.constraints
Or use directly head.hackage.sh init-local

We also could check if index-state affects head.hackage so it could help to avoid the need of constraints

Spock-core ==0.14.0.0,
aeson ==1.5.6.0,
aivika ==5.9.1,
aivika-transformers ==5.9.1,
alex ==3.2.6,
ansi-pretty ==0.1.2.2,
arith-encode ==1.0.2,
async ==2.2.3,
async-pool ==0.9.1,
attoparsec ==0.13.2.5 || ==0.14.1,
barbies-th ==0.1.8,
base-compat ==0.11.2,
base-compat-batteries ==0.11.2,
base16-bytestring ==1.0.1.0,
basement ==0.0.12,
bits ==0.5.3,
blaze-builder ==0.4.2.1,
blaze-textual ==0.2.1.0,
boomerang ==1.4.7,
bound ==2.0.3,
box-tuples ==0.2.0.4,
byteslice ==0.2.5.2,
bytesmith ==0.3.7.0,
bytestring-strict-builder ==0.4.5.4,
cabal-doctest ==1.0.8,
cantor-pairing ==0.2.0.1,
cassava ==0.5.2.0,
cborg ==0.2.5.0,
cereal ==0.5.8.1,
charset ==0.3.8,
chaselev-deque ==0.5.0.5,
classy-prelude ==1.5.0,
combinat ==0.2.10.0,
commonmark-extensions ==0.2.1.2,
conduit ==1.3.4.1,
constraints ==0.13,
constraints-extras ==0.3.1.0,
cql ==4.0.3,
critbit ==0.2.0.0,
cryptonite ==0.29,
data-default-instances-new-base ==0.0.2,
data-dword ==0.3.2,
data-r-tree ==0.6.0,
datetime ==0.3.1,
deferred-folds ==0.9.17,
dependent-sum-template ==0.1.0.3,
deriving-compat ==0.5.10,
diagrams-lib ==1.4.4,
doctest ==0.18.1,
dom-lt ==0.2.2.1,
drinkery ==0.4,
edit-distance ==0.2.2.1,
emacs-module ==0.1.1,
endo ==0.3.0.1,
entropy ==0.4.1.6,
enumeration ==0.2.0,
extra ==1.7.9,
fgl ==5.7.0.3,
filepattern ==0.1.2,
focus ==1.0.2,
free-algebras ==0.1.0.1,
free-functors ==1.2.1,
generic-data ==0.9.2.0,
generic-deriving ==1.14,
generic-lens ==2.2.0.0,
generic-lens-core ==2.2.0.0,
generic-optics ==2.2.0.0,
generics-sop ==0.5.1.1,
geniplate-mirror ==0.7.8,
ghc-events ==0.17.0,
happy ==1.20.0,
hashtables ==1.2.4.1,
haskeline ==0.7.5.0,
haskell-src-exts ==1.23.1,
haskell-src-meta ==0.8.7,
haxl ==2.3.0.0,
heterocephalus ==1.0.5.4,
hgeometry ==0.12.0.4,
hgeometry-ipe ==0.12.0.0,
hscolour ==1.24.4,
hslogger ==1.3.1.0,
hspec-core ==2.8.3,
hspec-discover ==2.8.3,
hspec-expectations ==0.8.2,
hspec-meta ==2.7.8,
hspec-wai ==0.11.1,
http-types ==0.12.3,
http2 ==3.0.2,
hvect ==0.4.0.0,
hxt ==9.3.1.22,
inj-base ==0.2.0.0,
inspection-testing ==0.4.6.0,
invariant ==0.5.4,
io-choice ==0.0.7,
iproute ==1.7.11,
language-c ==0.9.0.1,
language-haskell-extract ==0.2.4,
language-javascript ==0.7.1.0,
lens ==5.0.1,
lens-family-th ==0.5.2.0,
list-t ==1.0.4,
lockfree-queue ==0.2.3.1,
memory ==0.16.0,
microlens-ghc ==0.4.13,
monad-validate ==1.2.0.0,
monadplus ==1.4.2,
mono-traversable ==1.0.15.1,
mono-traversable-keys ==0.1.0,
mustache ==2.3.1,
network ==3.1.2.2,
newtype-generics ==0.6,
obdd ==0.8.2,
optics-th ==0.4,
packman ==0.5.0,
pandoc ==2.14.2,
parameterized-utils ==2.1.3.0,
partial-isomorphisms ==0.2.2.1,
pem ==0.2.4,
persistent ==2.13.0.3 || ==2.13.1.1,
plots ==0.1.1.2,
pointed ==5.0.2,
posix-api ==0.3.5.0,
primitive-extras ==0.10.1.1,
primitive-sort ==0.1.0.0,
primitive-unlifted ==0.1.3.0,
proto3-wire ==1.2.2,
quickcheck-instances ==0.3.25.2,
random ==1.2.0,
relude ==1.0.0.1,
row-types ==1.0.1.0,
safe ==0.3.19,
safecopy ==0.10.4.2,
salak ==0.3.6,
securemem ==0.1.10,
semialign ==1.2,
semigroupoids ==5.3.5,
serialise ==0.2.3.0,
servant ==0.18.3,
shake ==0.19.5,
shakespeare ==2.0.25,
singletons ==3.0,
singletons-base ==3.0,
siphash ==1.0.3,
snap-core ==1.0.4.2,
streaming-commons ==0.2.2.1,
streamly ==0.8.0,
subcategories ==0.1.1.0,
test-framework ==0.8.2.0,
text-format ==0.3.2,
text-short ==0.1.3,
text-show ==3.9,
th-desugar ==1.12,
th-extras ==0.0.0.4,
threads ==0.5.1.6,
tls ==1.5.5,
tpdb ==2.2.0,
tree-diff ==0.2,
true-name ==0.1.0.3,
uniplate ==1.6.13,
unordered-containers ==0.2.14.0,
validity ==0.11.0.1,
vector-builder ==0.3.8.2,
vector-circular ==0.1.3,
vector-th-unbox ==0.2.1.9,
vinyl ==0.13.3,
vty ==5.33,
wai-app-static ==3.1.7.2,
wai-extra ==3.1.6,
wai-middleware-static ==0.9.0,
warp ==3.3.17,
winery ==1.3.2,
witherable ==0.4.1,
x509 ==1.7.5,
x509-validation ==1.6.11,
xlsx ==0.8.4,
xml-hamlet ==0.5.0.1,
yaml ==0.11.5.0,
yesod-core ==1.6.21.0
2 changes: 1 addition & 1 deletion cabal.project
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ package *

write-ghc-environment-files: never

index-state: 2021-10-04T02:41:06Z
index-state: 2021-11-11T19:25:51Z

constraints:
hyphenation +embed
Expand Down
7 changes: 0 additions & 7 deletions configuration-ghc-901.nix
Original file line number Diff line number Diff line change
Expand Up @@ -27,13 +27,6 @@ let
sha256 = "1nyhc9mrnxsl21ksnpp0ryki4wgk49r581yy504g2gjq6x3bkb59";
}) { };

czipwith = hself.callCabal2nix "czipwith" (pkgs.fetchFromGitHub {
owner = "mithrandi";
repo = "czipwith";
rev = "b6245884ae83e00dd2b5261762549b37390179f8";
sha256 = "2uSoGyrxT/OstRcpx55kwP4JwjPbWLxD72LajeyQV0E=";
}) { };

hie-bios = hself.callCabal2nix "hie-bios"
(builtins.fetchTarball {
url = "https://hackage.haskell.org/package/hie-bios-0.7.6/hie-bios-0.7.6.tar.gz";
Expand Down
2 changes: 1 addition & 1 deletion stack-8.10.7.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
resolver: lts-18.10
resolver: lts-18.16

packages:
- .
Expand Down
13 changes: 1 addition & 12 deletions stack-9.0.1.yaml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
resolver: nightly-2021-09-16
resolver: nightly-2021-11-06

packages:
- .
Expand Down Expand Up @@ -38,10 +38,7 @@ extra-deps:
- dependent-sum-0.7.1.0@sha256:0e419237f5b86da3659772afff9cab355c0f8d5b3fdb15a5b30e673d8dc83941,2147
- extra-1.7.9
- floskell-0.10.5
jneira marked this conversation as resolved.
Show resolved Hide resolved
- fourmolu-0.4.0.0
- ghc-source-gen-0.4.1.0
- heapsize-0.3.0.1@sha256:0b69aa97a46d819b700ac7b145f3b5493c3565cf2c5b8298682238d405d0326e,1417
- hie-bios-0.7.6
- hiedb-0.4.1.0
- hspec-2.7.10
- hspec-core-2.7.10
Expand All @@ -57,10 +54,6 @@ extra-deps:
- lsp-test-0.14.0.1
- sqlite-simple-0.4.18.0

- github: mithrandi/czipwith
commit: b6245884ae83e00dd2b5261762549b37390179f8
# https://github.com/lspitzner/czipwith/pull/2

- github: anka-213/th-extras
commit: 57a97b4df128eb7b360e8ab9c5759392de8d1659
# https://github.com/mokus0/th-extras/pull/8
Expand All @@ -82,10 +75,6 @@ extra-deps:
- prettyprinter-1.7.1@sha256:9c43c9d8c3cd9f445596e5a2379574bba87f935a4d1fa41b5407ee3cf4edc743,6987
- operational-0.2.4.0

- github: diagrams/active
commit: ca23431a8dfa013992f9164ccc882a3277361f17
# https://github.com/diagrams/active/pull/36

# end of shake-bench dpendencies

# due to floskell-0.10.5 and diagrams-core-1.5.0
Expand Down