Commit f11ef8bf authored by Alexandre Delanoë's avatar Alexandre Delanoë

Merge remote-tracking branch 'origin/304-dev-toml-config-rewrite-and-update-deps-9.4.8' into dev

parents 43564cbe bde48039
# Optimising CI speed by using tips from https://blog.nimbleways.com/let-s-make-faster-gitlab-ci-cd-pipelines/
image: adinapoli/gargantext:v3.4
#image: adinapoli/gargantext:v3.4
image: cgenie/gargantext:9.4.8
variables:
STACK_ROOT: "${CI_PROJECT_DIR}/.stack-root"
......
......@@ -238,6 +238,27 @@ If you want to run particular tests, use:
cabal v2-test garg-test-tasty --test-show-details=streaming --test-option=--pattern='/job status update and tracking/
```
### CI
The CI is on gitlab and is controlled by the `.gitlab-ci.yml` file.
The Docker image that is used can be built with:
```shell
podman build -t cgenie/gargantext:9.4.8 -f ./devops/docker/Dockerfile --format=docker .
```
or
```shell
docker build -t cgenie/gargantext:9.4.8 -f ./devops/docker/Dockerfile .
```
NOTE: if podman/docker complains about not enough space, it's probably
about tmpfs. In that case you can set
```shell
mkdir _build
export TMPDIR=$(pwd)/_build
```
(https://stackoverflow.com/questions/75845647/changing-podman-build-to-path-with-more-space).
### Working on libraries
When a devlopment is needed on libraries (for instance, the HAL crawler in https://gitlab.iscpif.fr/gargantext/crawlers):
......
......@@ -18,13 +18,12 @@ fi
# with the `sha256sum` result calculated on the `cabal.project` and
# `cabal.project.freeze`. This ensures the files stay deterministic so that CI
# cache can kick in.
expected_cabal_project_hash="3943da8b9f3ae918afadf2b302875b3b395b31b2f69c3d42135af2ac800b7a0c"
expected_cabal_project_freeze_hash="af825192f1ec47b07e6001dd2556b59991c9e6c50094dc732ee933a41f0dc9bd"
expected_cabal_project_hash="3afb11e01938b74ae8419caa160180d8f8628a67315a2d689c3a42a76463071e"
expected_cabal_project_freeze_hash="de1726d350936da5f5e15140e3be29bb4f44757c5702defe995c2386f1b4a741"
cabal --store-dir=$STORE_DIR v2-build --dry-run
cabal2stack --system-ghc --allow-newer --resolver lts-21.17 --resolver-file devops/stack/lts-21.17.yaml -o stack.yaml
cabal --store-dir=$STORE_DIR v2-freeze
cabal2stack --system-ghc --allow-newer --resolver lts-21.25 --resolver-file devops/stack/lts-21.25.yaml -o stack.yaml
# Run 'sed' to remove the constraint for 'gargantext', as it doesn't make sense and
# for the test we need to run this with a different flag.
......
......@@ -3,7 +3,7 @@
-- index-state: 2023-12-10T10:34:46Z
index-state: 2024-09-12T03:02:26Z
with-compiler: ghc-9.4.7
with-compiler: ghc-9.4.8
optimization: 2
packages:
......
......@@ -8,7 +8,7 @@ constraints: any.Cabal ==3.8.1.0,
any.JuicyPixels ==3.3.9,
JuicyPixels -mmap,
any.KMP ==0.2.0.0,
any.MissingH ==1.4.3.1,
any.MissingH ==1.6.0.1,
MissingH +network--ge-3_0_0,
any.MonadRandom ==0.6,
any.OneTuple ==0.4.2,
......@@ -57,7 +57,7 @@ constraints: any.Cabal ==3.8.1.0,
any.authenticate-oauth ==1.7,
any.auto-update ==0.1.6,
any.barbies ==2.1.1.0,
any.base ==4.17.2.0,
any.base ==4.17.2.1,
any.base-compat ==0.13.1,
any.base-compat-batteries ==0.13.1,
any.base-orphans ==0.9.2,
......@@ -84,7 +84,7 @@ constraints: any.Cabal ==3.8.1.0,
any.bsb-http-chunked ==0.0.0.4,
any.byteable ==0.1.1,
any.byteorder ==1.0.4,
any.bytestring ==0.11.5.2,
any.bytestring ==0.11.5.3,
any.bytestring-builder ==0.10.8.2.0,
bytestring-builder +bytestring_has_builder,
any.bzlib-conduit ==0.3.0.3,
......@@ -203,13 +203,13 @@ constraints: any.Cabal ==3.8.1.0,
any.generic-monoid ==0.1.0.1,
any.generically ==0.1.1,
any.generics-sop ==0.5.1.3,
any.ghc ==9.4.7,
any.ghc ==9.4.8,
any.ghc-bignum ==1.3,
any.ghc-boot ==9.4.7,
any.ghc-boot-th ==9.4.7,
any.ghc-heap ==9.4.7,
any.ghc-boot ==9.4.8,
any.ghc-boot-th ==9.4.8,
any.ghc-heap ==9.4.8,
any.ghc-prim ==0.9.1,
any.ghci ==9.4.7,
any.ghci ==9.4.8,
any.githash ==0.1.7.0,
any.graphviz ==2999.20.2.0,
graphviz -test-parsing,
......@@ -395,7 +395,7 @@ constraints: any.Cabal ==3.8.1.0,
any.primitive ==0.7.4.0,
any.primitive-extras ==0.10.2,
any.primitive-unlifted ==2.1.0.0,
any.process ==1.6.17.0,
any.process ==1.6.18.0,
any.product-profunctors ==0.11.1.1,
any.profunctors ==5.6.2,
any.promises ==0.3,
......
......@@ -3,7 +3,7 @@ FROM ubuntu:noble
## NOTA BENE: In order for this to be built successfully, you have to run ./devops/coreNLP/build.sh first.
ARG DEBIAN_FRONTEND=noninteractive
ARG GHC=9.4.7
ARG GHC=9.4.8
ARG CORENLP=4.5.4
ARG CORE
COPY ./shell.nix /builds/gargantext/shell.nix
......
# https://github.com/commercialhaskell/stackage-snapshots/blob/master/lts/21/17.yaml
flags:
HsOpenSSL:
fast-bignum: false
......
This diff is collapsed.
......@@ -472,7 +472,7 @@ library
cpp-options: -DNO_PHYLO_DEBUG_LOGS
build-depends:
KMP ^>= 0.2.0.0
, MissingH ^>= 1.4.3.0
, MissingH ^>= 1.6.0.1
, MonadRandom ^>= 0.6
, QuickCheck ^>= 2.14.2
, accelerate ^>= 1.3.0.0
......@@ -485,14 +485,14 @@ library
, base64-bytestring ^>= 1.2.1.0
, bimap >= 0.5.0
, boolexpr ^>= 0.3
, bytestring ^>= 0.11.5.2
, bytestring ^>= 0.11.5.3
, cache >= 0.1.3.0
, case-insensitive ^>= 1.2.1.0
, cassava ^>= 0.5.2.0
, cereal ^>= 0.5.8.2
, clock >= 0.8
, conduit ^>= 1.3.4.2
, containers ^>= 0.6.5.1
, containers ^>= 0.6.7
, crawlerArxiv
, crawlerHAL
, crawlerISTEX
......@@ -501,16 +501,16 @@ library
, cron ^>= 0.7.0
, data-time-segment ^>= 0.1.0.0
, deferred-folds >= 0.9.18 && < 0.10
, directory ^>= 1.3.6.0
, directory ^>= 1.3.7.1
, discrimination >= 0.5
, ekg-core ^>= 0.1.1.7
, ekg-json ^>= 0.1.0.7
, epo-api-client
, exceptions ^>= 0.10.4
, exceptions ^>= 0.10.5
, extra ^>= 1.7.9
, fast-logger ^>= 3.2.2
, fgl ^>= 5.8.0.0
, filepath ^>= 1.4.2.1
, filepath ^>= 1.4.2.2
, fmt
, formatting ^>= 7.2.0
, fullstop ^>= 0.1.4
......@@ -552,11 +552,11 @@ library
, opaleye-textsearch >= 0.2.0.0
, openalex
, parallel ^>= 3.2.2.0
, parsec ^>= 3.1.14.0
, parsec ^>= 3.1.16.1
, patches-class ^>= 0.1.0.1
, patches-map ^>= 0.1.0.1
, postgresql-simple ^>= 0.6.4
, process ^>= 1.6.13.2
, process ^>= 1.6.18.0
, product-profunctors ^>= 0.11.0.3
, protolude ^>= 0.3.3
, quickcheck-instances ^>= 0.3.25.2
......@@ -649,11 +649,11 @@ executable gargantext-cli
aeson ^>= 2.1.2.1
, aeson-pretty
, async ^>= 2.2.4
, bytestring ^>= 0.11.5.2
, bytestring ^>= 0.11.5.3
, cassava ^>= 0.5.2.0
, containers ^>= 0.6.5.1
, containers ^>= 0.6.7
, cryptohash ^>= 0.11.9
, directory ^>= 1.3.6.0
, directory ^>= 1.3.7.1
, extra ^>= 1.7.9
, gargantext
, gargantext-prelude
......@@ -691,7 +691,7 @@ executable gargantext-server
bin/gargantext-server
build-depends:
cassava ^>= 0.5.2.0
, containers ^>= 0.6.5.1
, containers ^>= 0.6.7
, extra ^>= 1.7.9
, gargantext
, gargantext-prelude
......@@ -711,14 +711,14 @@ common testDependencies
, aeson-qq
, async ^>= 2.2.4
, boolexpr ^>= 0.3
, bytestring ^>= 0.11.5.2
, bytestring ^>= 0.11.5.3
, cache >= 0.1.3.0
, case-insensitive
, conduit ^>= 1.3.4.2
, containers ^>= 0.6.5.1
, containers ^>= 0.6.7
, crawlerArxiv
, cryptohash
, directory
, directory ^>= 1.3.7.1
, epo-api-client
, extra ^>= 1.7.9
, fast-logger ^>= 3.2.2
......@@ -740,13 +740,13 @@ common testDependencies
, monad-control >= 1.0.3 && < 1.1
, mtl ^>= 2.2.2
, network-uri
, parsec ^>= 3.1.14.0
, parsec ^>= 3.1.16.1
, patches-class ^>= 0.1.0.1
, patches-map ^>= 0.1.0.1
, postgres-options >= 0.2 && < 0.3
, postgresql-simple >= 0.6.4 && < 0.7
, pretty
, process ^>= 1.6.13.2
, pretty ^>= 1.1.3.6
, process ^>= 1.6.18.0
, protolude ^>= 0.3.3
, quickcheck-instances ^>= 0.3.25.2
, raw-strings-qq
......@@ -879,7 +879,7 @@ benchmark garg-bench
other-modules:
Paths_gargantext
build-depends: base
, bytestring ^>= 0.11.5.2
, bytestring ^>= 0.11.5.3
, gargantext
, gargantext-prelude
, tasty-bench
......
......@@ -2,8 +2,8 @@
rec {
inherit pkgs;
ghc947 = if pkgs.stdenv.isDarwin
then pkgs.haskell.compiler.ghc947.overrideAttrs (finalAttrs: previousAttrs: {
ghc948 = if pkgs.stdenv.isDarwin
then pkgs.haskell.compiler.ghc948.overrideAttrs (finalAttrs: previousAttrs: {
patches = previousAttrs.patches ++ [
# Reverts the linking behavior of GHC to not resolve `-libc++` to `c++`.
(pkgs.fetchpatch {
......@@ -12,8 +12,8 @@ rec {
})
];
})
else pkgs.haskell.compiler.ghc947;
cabal_install_3_10_1_0 = pkgs.haskell.lib.compose.justStaticExecutables pkgs.haskell.packages.ghc947.cabal-install;
else pkgs.haskell.compiler.ghc948;
cabal_install_3_10_2_1 = pkgs.haskell.lib.compose.justStaticExecutables pkgs.haskell.packages.ghc948.cabal-install;
graphviz_dev = pkgs.graphviz.overrideAttrs (finalAttrs: previousAttrs: {
version = "11.0.0~dev";
src = pkgs.fetchFromGitLab {
......@@ -95,8 +95,8 @@ rec {
});
hsBuildInputs = [
ghc947
cabal_install_3_10_1_0
ghc948
cabal_install_3_10_2_1
pkgs.haskellPackages.alex
pkgs.haskellPackages.happy
pkgs.haskellPackages.pretty-show
......
......@@ -2,13 +2,11 @@
"extra-deps":
- "JuicyPixels-3.3.9"
- "KMP-0.2.0.0"
- "MissingH-1.4.3.1"
- "OneTuple-0.4.2"
- "aeson-pretty-0.8.10"
- "alex-3.5.1.0"
- "ansi-terminal-1.0.2"
- "assoc-1.1.1"
- "async-2.2.5"
- "atomic-primops-0.8.8"
- "barbies-2.1.1.0"
- "base-compat-0.13.1"
......@@ -23,7 +21,6 @@
- "cabal-doctest-1.0.10"
- "cassava-0.5.3.2"
- "cassava-conduit-0.6.6"
- "cborg-0.2.10.0"
- "concurrent-output-1.10.21"
- "conduit-1.3.6"
- "criterion-measurement-0.2.2.0"
......@@ -32,7 +29,6 @@
- "crypton-x509-1.7.7"
- "data-fix-0.3.4"
- "dec-0.0.6"
- "deferred-folds-0.9.18.6"
- "digest-0.0.2.1"
- "double-conversion-2.0.5.0"
- "extra-1.7.16"
......@@ -43,7 +39,6 @@
- "foldl-1.4.17"
- "free-5.2"
- "fullstop-0.1.4"
- "graphviz-2999.20.2.0"
- "hashable-1.4.4.0"
- "haskell-src-meta-0.8.14"
- "hedgehog-1.5"
......@@ -56,23 +51,20 @@
- "hspec-expectations-0.8.4"
- "http-accept-0.2"
- "http-api-data-0.5.1"
- "http-client-0.7.14"
- "http-conduit-2.3.8.3"
- "http-types-0.12.4"
- "http2-5.0.1"
- "indexed-traversable-0.1.4"
- "invariant-0.6.3"
- "iproute-1.7.14"
- "jose-0.10.0.1"
- "json-stream-0.4.6.0"
- "kan-extensions-5.2.6"
- "language-c-0.9.3"
- "libyaml-0.1.4"
- "libyaml-clib-0.2.5"
- "lifted-async-0.10.2.5"
- "logict-0.8.1.0"
- "lzma-0.0.1.1"
- "math-functions-0.3.4.4"
- "matrix-0.3.6.3"
- "megaparsec-9.6.1"
- "microlens-th-0.4.3.15"
- "mono-traversable-1.0.17.0"
......@@ -87,7 +79,6 @@
- "morpheus-graphql-subscriptions-0.24.3"
- "mwc-random-0.15.1.0"
- "network-control-0.0.2"
- "old-time-1.1.0.4"
- "ordered-containers-0.2.4"
- "os-string-2.0.6"
- "password-3.0.4.0"
......@@ -96,14 +87,12 @@
- "primitive-extras-0.10.2"
- "primitive-unlifted-2.1.0.0"
- "protolude-0.3.4"
- "psqueues-0.2.8.0"
- "rake-0.0.1"
- "random-1.2.1.2"
- "recover-rtti-0.4.3"
- "reflection-2.1.8"
- "resourcet-1.3.0"
- "safe-0.3.21"
- "serialise-0.2.6.1"
- "servant-0.20.2"
- "servant-auth-0.4.2.0"
- "servant-auth-client-0.4.2.0"
......@@ -147,7 +136,6 @@
- "validity-0.12.1.0"
- "vector-0.12.3.1"
- "vector-algorithms-0.9.0.2"
- "wai-3.2.4"
- "wai-app-static-3.1.9"
- "wai-extra-3.1.15"
- "wai-logger-2.4.1"
......@@ -703,5 +691,5 @@ flags:
standalone: true
packages:
- .
resolver: "lts-21.17"
resolver: "lts-21.25"
"system-ghc": true
......@@ -468,7 +468,7 @@ test = do
testExceptions
it "fairly picks equal-priority-but-different-kind jobs" $
testFairness
describe "job status update and tracking" $ do
describe "job status update and tracking" $ sequential $ do
it "can fetch the latest job status" $
testFetchJobStatus
it "can spin two separate jobs and track their status separately" $
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment