diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 7264471..c3654ac 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -10,29 +10,37 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - ghc: ['8.6', '8.8', '8.10', '9.0', '9.2'] + ghc: ['9.6', '9.8', '9.10', '9.12'] + include: + - cabal: latest + - ghc: '8.6' + cabal: '3.6' + - ghc: '8.8' + cabal: '3.6' + - ghc: '8.10' + cabal: '3.6' fail-fast: false steps: - uses: actions/checkout@v4 - - uses: actions/cache@v3.3.1 + - uses: actions/cache@v4.2.3 name: Cache ~/.cabal/packages with: path: ~/.cabal/packages key: ${{ runner.os }}-${{ matrix.ghc }}-cabal-packages - - uses: actions/cache@v3.3.1 + - uses: actions/cache@v4.2.3 name: Cache ~/.cabal/store with: path: ~/.cabal/store key: ${{ runner.os }}-${{ matrix.ghc }}-cabal-store - - uses: actions/cache@v3.3.1 + - uses: actions/cache@v4.2.3 name: Cache dist-newstyle with: path: dist-newstyle key: ${{ runner.os }}-${{ matrix.ghc }}-dist-newstyle - - uses: haskell/actions/setup@v2.4.7 + - uses: haskell-actions/setup@v2.7.11 with: ghc-version: ${{ matrix.ghc }} - cabal-version: '3.6' + cabal-version: ${{ matrix.cabal }} - name: Update cabal package database run: cabal update - name: Build @@ -48,11 +56,11 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - stack-yaml: ['stack-8.10.yaml'] + stack-yaml: ['stack-8.10.yaml', 'stack-9.8.yaml'] fail-fast: false steps: - uses: actions/checkout@v4 - - uses: actions/cache@v3.3.1 + - uses: actions/cache@v4.2.3 name: Cache ~/.stack with: path: ~/.stack @@ -73,14 +81,18 @@ jobs: stack bench --stack-yaml ${{ matrix.stack-yaml }} opentelemetry-extra --benchmark-arguments '+RTS -l' macos-stack: - runs-on: macOS-latest + runs-on: ${{ matrix.os }} strategy: matrix: - stack-yaml: ['stack-8.10.yaml'] + include: + - os: macOS-latest + stack-yaml: 'stack-9.8.yaml' + - os: macOS-13 + stack-yaml: 'stack-8.10.yaml' fail-fast: false steps: - uses: actions/checkout@v4 - - uses: actions/cache@v3.3.1 + - uses: actions/cache@v4.2.3 name: Cache ~/.stack with: path: ~/.stack @@ -104,29 +116,33 @@ jobs: runs-on: windows-latest strategy: matrix: - ghc: ['8.10', '9.0', '9.2'] + include: + - ghc: '9.8' + cabal: latest + - ghc: '8.10' + cabal: '3.8' fail-fast: false steps: - uses: actions/checkout@v4 - - uses: actions/cache@v3.3.1 + - uses: actions/cache@v4.2.3 name: Cache ~/.cabal/packages with: path: ~/.cabal/packages key: ${{ runner.os }}-${{ matrix.ghc }}-cabal-packages - - uses: actions/cache@v3.3.1 + - uses: actions/cache@v4.2.3 name: Cache ~/.cabal/store with: path: ~/.cabal/store key: ${{ runner.os }}-${{ matrix.ghc }}-cabal-store - - uses: actions/cache@v3.3.1 + - uses: actions/cache@v4.2.3 name: Cache dist-newstyle with: path: dist-newstyle key: ${{ runner.os }}-${{ matrix.ghc }}-dist-newstyle - - uses: haskell/actions/setup@v2.4.7 + - uses: haskell-actions/setup@v2.7.11 with: ghc-version: ${{ matrix.ghc }} - cabal-version: '3.6' + cabal-version: ${{ matrix.cabal }} - name: Update cabal package database run: cabal update - name: Build diff --git a/opentelemetry-extra/src/OpenTelemetry/EventlogStreaming_Internal.hs b/opentelemetry-extra/src/OpenTelemetry/EventlogStreaming_Internal.hs index c473fe7..6d8d515 100644 --- a/opentelemetry-extra/src/OpenTelemetry/EventlogStreaming_Internal.hs +++ b/opentelemetry-extra/src/OpenTelemetry/EventlogStreaming_Internal.hs @@ -277,7 +277,7 @@ handleOpenTelemetryEventlogEvent m st (tid, now, m_trace_id) = Nothing -> error $ "set spanid " <> show serial <> " " <> show span_id <> ": span id not found" SetTraceEv (SpanInFlight serial) trace_id -> case HM.lookup serial $ serial2sid st of - Nothing -> error $ "set traceid: span id not found for serial" <> show serial + Nothing -> error $ "set traceid: span id not found for serial " <> show serial Just span_id -> ( (modifySpan span_id (setTraceId trace_id) st) { traceMap = HM.insert tid trace_id $ traceMap st @@ -287,7 +287,7 @@ handleOpenTelemetryEventlogEvent m st (tid, now, m_trace_id) = ) TagEv (SpanInFlight serial) k v -> case HM.lookup serial $ serial2sid st of - Nothing -> error $ "set tag: span id not found for serial" <> show serial + Nothing -> error $ "set tag: span id not found for serial " <> show serial Just span_id -> (modifySpan span_id (setTag k v) st, [], []) EndSpanEv (SpanInFlight serial) -> case HM.lookup serial $ serial2sid st of diff --git a/opentelemetry-extra/unit-tests/Arbitrary.hs b/opentelemetry-extra/unit-tests/Arbitrary.hs index 217a1a2..d51bedc 100644 --- a/opentelemetry-extra/unit-tests/Arbitrary.hs +++ b/opentelemetry-extra/unit-tests/Arbitrary.hs @@ -2,7 +2,7 @@ {-# LANGUAGE DerivingVia #-} {-# LANGUAGE GeneralizedNewtypeDeriving #-} {-# LANGUAGE StandaloneDeriving #-} -{-# OPTIONS_GHC -Wno-orphans #-} +{-# OPTIONS_GHC -Wno-orphans -fconstraint-solver-iterations=8 #-} module Arbitrary where diff --git a/stack-8.10.yaml b/stack-8.10.yaml index 87505ce..7b83993 100644 --- a/stack-8.10.yaml +++ b/stack-8.10.yaml @@ -1,4 +1,4 @@ -resolver: nightly-2021-04-02 +resolver: lts-18.28 packages: - megaexample @@ -8,7 +8,3 @@ packages: - opentelemetry-wai allow-newer: true - -extra-deps: -- jsonifier-0.1.0.5 -- ptr-poker-0.1.1.3 diff --git a/stack-9.8.yaml b/stack-9.8.yaml new file mode 100644 index 0000000..7f3af01 --- /dev/null +++ b/stack-9.8.yaml @@ -0,0 +1,10 @@ +resolver: lts-23.19 + +packages: +- megaexample +- opentelemetry +- opentelemetry-extra +- opentelemetry-lightstep +- opentelemetry-wai + +allow-newer: true