-
Notifications
You must be signed in to change notification settings - Fork 7
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Instead of a library containing a manually written build-depends corresponding to a stackage snapshot, we now have an executable that queries stackage directly, and then uses the response to generate the desired cabal file. The executable then builds that project. The executable also includes the ability to split the package set into smaller groups, where each group is built sequentially. This allows for scenarios where building the entire set at once is not feasible, at the cost of performance. We also add 'postgresql-libpq' to linux/osx (requires postgres dep), and 'hfsevents' to osx.
- Loading branch information
Showing
42 changed files
with
3,409 additions
and
2,731 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
*.golden -text |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,59 @@ | ||
name: ci | ||
on: | ||
push: | ||
branches: | ||
- master | ||
|
||
pull_request: | ||
branches: | ||
- master | ||
|
||
workflow_dispatch: | ||
jobs: | ||
cabal: | ||
strategy: | ||
fail-fast: false | ||
matrix: | ||
os: | ||
- "macos-latest" | ||
- "ubuntu-latest" | ||
runs-on: ${{ matrix.os }} | ||
steps: | ||
- uses: actions/checkout@v4 | ||
- uses: haskell-actions/setup@v2 | ||
with: | ||
ghc-version: "9.8.2" | ||
- name: Configure | ||
run: | | ||
cabal configure --enable-tests --ghc-options -Werror | ||
- name: Build executable | ||
run: cabal build clc-stackage | ||
|
||
- name: Unit Tests | ||
id: unit | ||
run: cabal test unit | ||
|
||
- name: Print unit failures | ||
if: ${{ failure() && steps.unit.conclusion == 'failure' }} | ||
run: | | ||
cd test/unit/goldens | ||
for f in $(ls); do | ||
echo "$f" | ||
cat "$f" | ||
done | ||
- name: Functional Tests | ||
id: functional | ||
run: cabal test functional | ||
|
||
- name: Print functional failures | ||
if: ${{ failure() && steps.functional.conclusion == 'failure' }} | ||
run: | | ||
cd test/functional/goldens | ||
for f in $(ls); do | ||
echo "$f" | ||
cat "$f" | ||
done |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1,6 @@ | ||
/dist-newstyle | ||
/bin | ||
/dist-newstyle | ||
/generated/cabal.project.local | ||
/generated/dist-newstyle | ||
/generated/generated.cabal | ||
/output |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
module Main (main) where | ||
|
||
import CLC.Stackage.Runner qualified as Runner | ||
import CLC.Stackage.Utils.Logging qualified as Logging | ||
import Data.Text qualified as T | ||
import Data.Time.LocalTime qualified as Local | ||
import System.Console.Terminal.Size qualified as TermSize | ||
import System.IO (hPutStrLn, stderr) | ||
|
||
main :: IO () | ||
main = do | ||
mWidth <- (fmap . fmap) TermSize.width TermSize.size | ||
|
||
case mWidth of | ||
Just w -> Runner.run $ mkLogger w | ||
Nothing -> do | ||
let hLogger = mkLogger 80 | ||
Logging.putTimeInfoStr hLogger False "Failed detecting terminal width" | ||
Runner.run hLogger | ||
where | ||
mkLogger w = | ||
Logging.MkHandle | ||
{ Logging.getLocalTime = Local.zonedTimeToLocalTime <$> Local.getZonedTime, | ||
Logging.logStrErrLn = hPutStrLn stderr . T.unpack, | ||
Logging.logStrLn = putStrLn . T.unpack, | ||
Logging.terminalWidth = w | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,44 +1,24 @@ | ||
index-state: 2024-03-27T00:32:46Z | ||
index-state: 2024-10-11T23:26:13Z | ||
|
||
packages: . | ||
|
||
constraints: | ||
al < 0, | ||
alsa-pcm < 0, | ||
alsa-seq < 0, | ||
ALUT < 0, | ||
btrfs < 0, | ||
fft < 0, | ||
flac < 0, | ||
glpk-headers < 0, | ||
hmatrix-gsl < 0, | ||
hopenssl < 0, | ||
hpqtypes < 0, | ||
hsdns < 0, | ||
hsndfile < 0, | ||
HsOpenSSL < 0, | ||
hw-kafka-client < 0, | ||
jack < 0, | ||
lame < 0, | ||
lapack-ffi < 0, | ||
lmdb < 0, | ||
magic < 0, | ||
mysql < 0, | ||
nfc < 0, | ||
pcre-light < 0, | ||
postgresql-libpq < 0, | ||
primecount < 0, | ||
pthread < 0, | ||
pulse-simple < 0, | ||
rdtsc < 0, | ||
regex-pcre < 0, | ||
re2 < 0, | ||
text-icu < 0, | ||
program-options | ||
ghc-options: | ||
-Wall -Wcompat | ||
-Widentities | ||
-Wincomplete-record-updates | ||
-Wincomplete-uni-patterns | ||
-Wmissing-deriving-strategies | ||
-Wmissing-export-lists | ||
-Wmissing-exported-signatures | ||
-Wmissing-home-modules | ||
-Wmissing-import-lists | ||
-Wpartial-fields | ||
-Wprepositive-qualified-module | ||
-Wredundant-constraints | ||
-Wunused-binds | ||
-Wunused-packages | ||
-Wunused-type-patterns | ||
-Wno-unticked-promoted-constructors | ||
|
||
allow-newer: | ||
aura:bytestring, | ||
aura:time | ||
|
||
constraints: hlint +ghc-lib | ||
constraints: ghc-lib-parser-ex -auto | ||
constraints: stylish-haskell +ghc-lib | ||
optimization: 2 |
Oops, something went wrong.