Commit 0c987a7
committed
Merge branch 'release-4.7'. Close #714.
**Description**
Version 4.7 of Copilot should be closed and published on Hackage.
**Type**
- Management: release and publication.
**Additional context**
None.
**Requester**
- Ivan Perez.
**Method to check presence of bug**
Not applicable (not a bug).
**Expected result**
- Cabal files indicate new version number, constraints are adjusted as
needed, commit is tagged with version number, and packages are
published on hackage.
The solution proposed addresses the necessary modification to cabal
packages. The following docker image installs all Copilot libraries
enforcing the new version via compiler constraints. Packages not
currently listed under the cabal.project file are also included. It
prints the message "Success" at the end if all completes correctly, and
shows an error message otherwise.
```
FROM ubuntu:noble
ENV DEBIAN_FRONTEND=noninteractive
SHELL ["/bin/bash", "-c"]
RUN apt-get update
RUN apt-get install --yes \
build-essential \
curl \
git \
libffi-dev \
libgmp3-dev \
libncurses-dev \
libz-dev \
pkg-config \
wget
RUN mkdir -p $HOME/.ghcup/bin
RUN curl --proto '=https' --tlsv1.2 -sSf https://get-ghcup.haskell.org | BOOTSTRAP_HASKELL_MINIMAL=1 BOOTSTRAP_HASKELL_NONINTERACTIVE=1 sh
ENV PATH=$PATH:/root/.ghcup/bin/
RUN ghcup install ghc 9.8
RUN ghcup install cabal 3.16
RUN ghcup set ghc 9.8.4
RUN cabal update
ENV PATH=$PATH:/root/.cabal/bin/
CMD git clone $REPO \
&& cd $NAME \
&& git checkout $COMMIT \
&& echo " copilot-verifier/copilot-verifier.cabal" >> cabal.project \
&& echo " copilot-visualizer/copilot-visualizer.cabal" >> cabal.project \
&& cabal install \
--package-env . \
--lib \
--constraint="copilot==4.7" \
--constraint="copilot-bluespec==4.7" \
--constraint="copilot-c99==4.7" \
--constraint="copilot-core==4.7" \
--constraint="copilot-prettyprinter==4.7" \
--constraint="copilot-interpreter==4.7" \
--constraint="copilot-language==4.7" \
--constraint="copilot-libraries==4.7" \
--constraint="copilot-theorem==4.7" \
--constraint="copilot-verifier==4.7" \
--constraint="copilot-visualizer==4.7" \
copilot**/ \
&& echo "Success"
```
Command (substitute variables based on new path after merge):
```
$ docker run -e "REPO=https://github.com/Copilot-Language/copilot" -e "NAME=copilot" -e "COMMIT=<HASH>" -it copilot-verify-714
```
**Solution implemented**
- Cabal files indicate new version number, constraints are adjusted as
needed, commit is tagged with version number, and packages are
published on hackage.
**Further notes**
None.22 files changed
Lines changed: 71 additions & 44 deletions
File tree
- copilot-bluespec
- copilot-c99
- copilot-core
- copilot-interpreter
- copilot-language
- copilot-libraries
- copilot-prettyprinter
- copilot-theorem
- copilot-verifier
- copilot-visualizer
- copilot
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
1 | 4 | | |
2 | 5 | | |
3 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
51 | 51 | | |
52 | 52 | | |
53 | 53 | | |
54 | | - | |
55 | | - | |
| 54 | + | |
| 55 | + | |
56 | 56 | | |
57 | 57 | | |
58 | 58 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
| 2 | + | |
2 | 3 | | |
3 | 4 | | |
4 | 5 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
48 | | - | |
| 48 | + | |
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
1 | 4 | | |
2 | 5 | | |
3 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
1 | 4 | | |
2 | 5 | | |
3 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
44 | 44 | | |
45 | 45 | | |
46 | 46 | | |
47 | | - | |
| 47 | + | |
48 | 48 | | |
49 | 49 | | |
50 | 50 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
1 | 4 | | |
2 | 5 | | |
3 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
42 | 42 | | |
43 | 43 | | |
44 | 44 | | |
45 | | - | |
46 | | - | |
47 | | - | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
48 | 48 | | |
49 | 49 | | |
50 | 50 | | |
| |||
0 commit comments