Commit Graph

190 Commits

Author SHA1 Message Date
Ryan Scott
4afba5f726
CI: Don't download GHC in test jobs (#1669)
Doing so is completely unnecessary, as we never actually need to build any
Haskell code in these jobs (rather, we invoke pre-built executables instead).

Fixes #1668.
2024-05-22 11:25:21 -04:00
Ryan Scott
53e4b0a19a CI: Use Clang64 tools on Windows 2024-05-22 07:28:33 -04:00
Ryan Scott
8847b3d5bb CI: Test GHC 9.4.8, 9.6.2, 9.8.2 2024-05-22 07:28:33 -04:00
Ryan
74612f963d Add comments for ensuring that CI and cryptol-remote-api match versions. 2024-05-15 15:13:29 -06:00
Ryan
03ceddf07d Update python version to 3.12 in CI 2024-05-14 21:20:07 -06:00
Kevin Quick
9e7f6f142d
Adjust CI pages deployment check for forks. 2024-02-23 10:09:03 -08:00
Kevin Quick
6d47ccc888
Disable CI-based github page deployment for forks. 2024-02-23 09:54:10 -08:00
Ryan Scott
8ee771a1da Use matrix.os, not runner.os, to disambiguate binary artifacts 2024-02-14 12:39:28 -05:00
Ryan Scott
4067c3afec CI: Build and test both x86-64 and AArch64 macOS
Fixes #1061.
2024-02-14 12:39:28 -05:00
Ryan Scott
1615d48799 CI: Upgrade to what4-solvers snapshot-20240212 2024-02-12 14:56:05 -05:00
Ryan Scott
3e176cea42 Switch from haskell/actions/setup to haskell-actions/setup
Fixes #1598.
2024-01-04 09:34:13 -05:00
Ryan Scott
55fb062a53 CI: Test GHC 9.6.2 and 9.4.7, drop GHC 8.10.7 2023-08-31 06:27:45 -04:00
Ryan Scott
a5b69e8c94 CI: Always save cache, even on failure 2023-08-31 06:17:16 -04:00
Ryan Scott
77a52e3bb6 CI: Prefer Use 9.2.8 (not 8.10.7) for building Docker images
There are two motivations for doing so:

* `sbv-10.0` and later no longer build against GHC 8.10 (see
  https://github.com/LeventErkok/sbv/issues/655), but we want to use a new `sbv`
  version to come to a resolution to #1548. As such, we need a newer GHC.
* `ghcup` now recommends GHC 9.2.8 for most usage, so it's time we switched
  anyway.
2023-07-12 10:24:49 -04:00
Ryan Scott
71a8f86fb4 CI: Use GHC 9.2.8, 9.4.5 2023-07-12 07:51:28 -04:00
Ryan Scott
5a85fae631 CI: Leave some breadcrumbs about SOLVER_PKG_VERSION and BIN_ZIP_FILE
This will make it easier for future devs to remember what places need to be
updated.
2023-07-11 13:32:49 -04:00
Ryan Scott
693f82f1b1 CI: Bump what4-solvers snapshot to 20230711
This includes the following changes:

* The bindist URLs now include the OS architecture, I have tweaked the parts of
  CI that downloads bindists accordingly.
* This snapshot includes `cvc5-1.0.5`, which has fixed a bug that was
  responsible for #1548. As such, this fixes #1548.
2023-07-11 12:53:15 -04:00
Kevin Quick
b6074756fa
Add debug output for CI doc generation. 2023-06-26 15:31:48 -07:00
Kevin Quick
a28fefd115
Revert template sorting and sort on doc versions generation. 2023-06-23 12:12:12 -07:00
Kevin Quick
9f50f0384a
Add more information regarding the auto-duplication of _templates/versions.html 2023-06-22 14:04:24 -07:00
Kevin Quick
608448ddfa
Update wording and reference to online documentation URL. 2023-06-22 11:23:33 -07:00
Kevin Quick
faa1a6c241
CI docs checkout merge sha not PR branch (may be on a fork). 2023-06-21 16:27:51 -07:00
Kevin Quick
8fefc47247
Update CI docs git clone/checkout process. 2023-06-21 16:05:37 -07:00
Kevin Quick
8ef8ef4a82
Diagnostics output for CI doc builds. 2023-06-20 23:05:34 -07:00
Kevin Quick
1318643cc0
Enable Github CI build of documentation for all tags and PRs. 2023-06-20 22:41:10 -07:00
Bretton
af084f6bc2 CI: Use haskell/actions/setup@v2 2023-06-10 15:34:31 -07:00
Ryan Scott
3080facea3 CI: Consistently use Python 3.11 2023-05-08 16:08:04 -04:00
Ryan Scott
1bae398b38 CI: Upgrade Poetry version
The version we were previously using (1.1.6) is affected by this bug, causing
invocations of Poetry to fail:
https://github.com/ionrock/cachecontrol/issues/292
2023-05-08 16:08:02 -04:00
Ryan Scott
618562b20b CI: Bump what4-solvers snapshot version
The previous version (`snapshot-20220812`) was using CVC5 1.0.1, which is too
old to work properly with `what4`. I have bumped the version to
`snapshot-20221212`, which includes CVC5 1.0.2.
2023-03-06 10:45:24 -05:00
Ryan Scott
c810821d10 Add CVC5 support
This patch:

* Makes the necessary changes on the `cryptol` and `cryptol-remote-api` side
  needed add `cvc5`, `w4-cvc5`, and `sbv-cvc5` solvers. This requires SBV 9.1
  or later to include the changes from LeventErkok/sbv#630, which re-exports
  CVC5-related functionality from all of the places that Cryptol imports from.
* Adds a test case to ensure that basic CVC5 support works.
* Updates the CI and Dockerfile to ensure that CVC5 is included from the
  `what4-solvers` bindists.

Fixes #1503.
2023-03-06 10:45:19 -05:00
Ryan Scott
cda25763ff CI: Test GHC 9.4.4, drop 9.0.2 2023-02-13 07:49:35 -05:00
Ryan Scott
4b89554988
Python: Bump argo-client, mypy versions (#1493)
This patch:

* Bumps the `mypy` lower bounds to avoid incurring a dependency on `typed-ast`,
  which is being EOL'd soon. See python/typed_ast#179.
* Bumps the `argo` lower bounds to bring in the changes from
  GaloisInc/argo#195, which makes corresponding changes on the `argo` side.

Fixes #1491.
2023-01-30 13:59:07 -05:00
Ryan Scott
7e2613afa1
Include one Ubuntu 20.04 configuration (#1447)
PR #1403 accidentally removed our build coverage for an older Ubuntu LTS
configuration. This patch adds in back and ensures that we don't accidentally
run the tests on this configuration.
2022-10-06 13:08:35 -04:00
Ryan Scott
84b29a3721 CI: Install diff, gcc, gmp, make on Windows before running tests
These are required to run some of the FFI tests.
2022-09-24 11:21:08 -04:00
Ryan Scott
3d4492a058
CI: Work around GHC installation issues on Windows (#1430)
This should avoid nasty linker errors as observed in
https://gitlab.haskell.org/ghc/ghc/-/issues/21111 until the upstream tools can
be fixed.
2022-09-08 15:57:13 -04:00
Ryan Scott
46d2e05847
CI: Drop GHC 8.8 (#1414)
This is motivated by a couple of reasons:

* GHC 8.8 on Windows suffers from a bug that can cause building certain code
  to loop forever or even segfault. As far as I can tell, this bug doesn't
  affect GHC 8.10 or later, so dropping 8.8 is a fairly reliable way to avoid
  this problem.
* GHC 8.8 is outside of the three most recent stable GHC releases, so it
  doesn't make as much sense to keep maintaining support for it.
2022-08-25 14:27:03 -04:00
Ryan Scott
d04aa87e72
CI: Don't sign build artifacts on forks (#1409)
The GPG signing step requires access to repository secrets that (apparently)
aren't visible to forks. Let's just not sign build artifacts on forks to avoid
this issue.

This mirrors a corresponding change made to `saw-script`'s CI in
GaloisInc/saw-script@eedcba1126 and
GaloisInc/saw-script@ac082b0dd9.
2022-08-22 11:23:33 -04:00
Iavor S. Diatchki
28277957dc
Merge pull request #1401 from GaloisInc/print-loading-shared-lib
Print message in REPL when loading dynamic library for FFI
2022-08-18 11:12:12 +03:00
Ryan Scott
0d4b555cf0 CI: Upgrade from 9.2.2 to 9.2.4
This is needed to work around https://gitlab.haskell.org/ghc/ghc/-/issues/20592
on macOS.
2022-08-15 08:16:19 -04:00
Ryan Scott
287a7f0f71 CI: Use Ubuntu 22.04, drop 18.04
GitHub Actions has deprecated its Ubuntu 18.04 runners, and they will be
removed by December 1, 2022. Moreover, GitHub Actions now offers Ubuntu 22.04
runners.  It seems like a good time to upgrade our CI accordingly.

Somewhat annoyingly, the `haskell` Docker images that we use in our Dockerfiles
use such an old version of Debian that their version of `glibc` is incompatible
with any of the `what4-solvers` built for Ubuntu 20.04 or 22.04. As a result, I
switched them from the `haskell` Docker image to the `ubuntu` one. This
required some minor tweaks to how dependencies are installed, but nothing too
serious.
2022-08-15 08:16:19 -04:00
Bretton
e8a9edc071 CI: Add macOS case for test-lib outputs 2022-08-12 20:31:17 -07:00
Bretton
b301d66cbc FFI: Revert CI CACHE_VERSION bump 2022-08-10 14:56:09 -07:00
Bretton
8827a5b0ab FFI: Move CI ffi test check to test job 2022-08-05 15:14:36 -07:00
Bretton
5c2a409b36 Merge branch 'master' into ffi 2022-08-05 14:36:59 -07:00
Bretton
6b1210d37c FFI: Revert dynamic linking hacks for linux 2022-08-05 13:54:38 -07:00
Bretton
59f0b30a0c FFI: Print whether FFI is enabled in -v/:v command 2022-08-04 20:39:09 -07:00
Bretton
65cb428010 FFI: Copy libffi to bin 2022-08-04 13:56:17 -07:00
Bretton
3fb609db72 FFI: add ghc libffi for other cryptol executables 2022-08-03 17:45:59 -07:00
Bretton
7f904e0bfa FFI: copy libffi to dist/lib/ and cryptol/../lib 2022-08-03 16:55:51 -07:00
Bretton
8d28f59f26 FFI: Try linking against ghc's libffi at runtime 2022-08-03 14:56:27 -07:00