Skip to content

Commit

Permalink
Merge branch 'release-4.1'. Close #561.
Browse files Browse the repository at this point in the history
**Description**

Version 4.1 of Copilot is ready and 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 following docker image installs copilot enforcing the new version
  via compiler constraints. It prints the message "Success" at the end
  if all completes correctly, and shows an error message otherwise.

```Dockerfile
FROM ubuntu:focal

ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get update

RUN apt-get install --yes libz-dev pkg-config
RUN apt-get install --yes git

RUN apt-get install --yes wget
RUN mkdir -p $HOME/.ghcup/bin
RUN wget https://downloads.haskell.org/~ghcup/0.1.17.7/x86_64-linux-ghcup-0.1.17.7 -O $HOME/.ghcup/bin/ghcup

RUN chmod a+x $HOME/.ghcup/bin/ghcup
ENV PATH=$PATH:/root/.ghcup/bin/
ENV PATH=$PATH:/root/.cabal/bin/
RUN apt-get install --yes curl
RUN apt-get install --yes gcc g++ make libgmp3-dev
RUN ghcup install ghc 9.8.2
RUN ghcup install cabal 3.4
RUN ghcup set ghc 9.8.2
RUN cabal update

SHELL ["/bin/bash", "-c"]
CMD git clone $REPO \
    && cd $NAME \
    && git checkout $COMMIT \
    && cabal install --lib copilot**/ \
         --constraint="copilot==4.1" \
         --constraint="copilot-c99==4.1" \
         --constraint="copilot-core==4.1" \
         --constraint="copilot-prettyprinter==4.1" \
         --constraint="copilot-interpreter==4.1" \
         --constraint="copilot-language==4.1" \
         --constraint="copilot-libraries==4.1" \
         --constraint="copilot-theorem==4.1" \
    && 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-561
```

**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.
  • Loading branch information
ivanperez-keera committed Nov 8, 2024
2 parents 0c6acff + 22aec9c commit 633c7b9
Show file tree
Hide file tree
Showing 16 changed files with 41 additions and 29 deletions.
3 changes: 2 additions & 1 deletion copilot-c99/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
2024-10-19
2024-11-07
* Version bump (4.1). (#561)
* Standardize changelog format. (#550)

2024-09-07
Expand Down
4 changes: 2 additions & 2 deletions copilot-c99/copilot-c99.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version : >= 1.10
name : copilot-c99
version : 4.0
version : 4.1
synopsis : A compiler for Copilot targeting C99.
description :
This package is a back-end from Copilot to C.
Expand Down Expand Up @@ -45,7 +45,7 @@ library
, mtl >= 2.2 && < 2.4
, pretty >= 1.1 && < 1.2

, copilot-core >= 4.0 && < 4.1
, copilot-core >= 4.1 && < 4.2
, language-c99 >= 0.2.0 && < 0.3
, language-c99-simple >= 0.3 && < 0.4

Expand Down
3 changes: 2 additions & 1 deletion copilot-core/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
2024-10-28
2024-11-07
* Version bump (4.1). (#561)
* Add Haddocks for updateField. (#525)
* Standardize changelog format. (#550)
* Deprecate Copilot.Core.Type.UType.uTypeType. (#484)
Expand Down
2 changes: 1 addition & 1 deletion copilot-core/copilot-core.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version: >=1.10
name: copilot-core
version: 4.0
version: 4.1
synopsis: An intermediate representation for Copilot.
description:
Intermediate representation for Copilot.
Expand Down
3 changes: 3 additions & 0 deletions copilot-interpreter/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
2024-11-07
* Version bump (4.1). (#561)

2024-09-07
* Version bump (4.0). (#532)
* Add support for array updates. (#36)
Expand Down
4 changes: 2 additions & 2 deletions copilot-interpreter/copilot-interpreter.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version: >=1.10
name: copilot-interpreter
version: 4.0
version: 4.1
synopsis: Interpreter for Copilot.
description:
Interpreter for Copilot.
Expand Down Expand Up @@ -44,7 +44,7 @@ library
base >= 4.9 && < 5,
pretty >= 1.0 && < 1.2,

copilot-core >= 4.0 && < 4.1
copilot-core >= 4.1 && < 4.2

exposed-modules:

Expand Down
3 changes: 2 additions & 1 deletion copilot-language/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
2024-10-19
2024-11-07
* Version bump (4.1). (#561)
* Reject duplicate externs in properties and theorems. (#536)
* Standardize changelog format. (#550)

Expand Down
8 changes: 4 additions & 4 deletions copilot-language/copilot-language.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version: >=1.10
name: copilot-language
version: 4.0
version: 4.1
synopsis: A Haskell-embedded DSL for monitoring hard real-time
distributed systems.
description:
Expand Down Expand Up @@ -42,9 +42,9 @@ library
, data-reify >= 0.6 && < 0.7
, mtl >= 2.0 && < 3

, copilot-core >= 4.0 && < 4.1
, copilot-interpreter >= 4.0 && < 4.1
, copilot-theorem >= 4.0 && < 4.1
, copilot-core >= 4.1 && < 4.2
, copilot-interpreter >= 4.1 && < 4.2
, copilot-theorem >= 4.1 && < 4.2

exposed-modules: Copilot.Language
, Copilot.Language.Operators.BitWise
Expand Down
3 changes: 2 additions & 1 deletion copilot-libraries/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
2024-10-19
2024-11-07
* Version bump (4.1). (#561)
* Standardize changelog format. (#550)

2024-09-07
Expand Down
4 changes: 2 additions & 2 deletions copilot-libraries/copilot-libraries.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version: >=1.10
name: copilot-libraries
version: 4.0
version: 4.1
synopsis: Libraries for the Copilot language.
description:
Libraries for the Copilot language.
Expand Down Expand Up @@ -41,7 +41,7 @@ library
, containers >= 0.4 && < 0.7
, mtl >= 2.0 && < 2.4
, parsec >= 2.0 && < 3.2
, copilot-language >= 4.0 && < 4.1
, copilot-language >= 4.1 && < 4.2

exposed-modules:
Copilot.Library.Libraries
Expand Down
3 changes: 3 additions & 0 deletions copilot-prettyprinter/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
2024-11-07
* Version bump (4.1). (#561)

2024-09-07
* Version bump (4.0). (#532)
* Add support for pretty-printing struct update expressions. (#526)
Expand Down
4 changes: 2 additions & 2 deletions copilot-prettyprinter/copilot-prettyprinter.cabal
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
cabal-version: >=1.10
name: copilot-prettyprinter
version: 4.0
version: 4.1
synopsis: A prettyprinter of Copilot Specifications.
description:
A prettyprinter of Copilot specifications.
Expand Down Expand Up @@ -45,7 +45,7 @@ library
base >= 4.9 && < 5,
pretty >= 1.0 && < 1.2,

copilot-core >= 4.0 && < 4.1
copilot-core >= 4.1 && < 4.2

exposed-modules:

Expand Down
3 changes: 2 additions & 1 deletion copilot-theorem/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
2024-10-19
2024-11-07
* Version bump (4.1). (#561)
* Standardize changelog format. (#550)

2024-09-07
Expand Down
6 changes: 3 additions & 3 deletions copilot-theorem/copilot-theorem.cabal
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ description:
<https://copilot-language.github.io>.


version : 4.0
version : 4.1
license : BSD3
license-file : LICENSE
maintainer : Ivan Perez <[email protected]>
Expand Down Expand Up @@ -63,8 +63,8 @@ library
, xml >= 1.3 && < 1.4
, what4 >= 1.3 && < 1.7

, copilot-core >= 4.0 && < 4.1
, copilot-prettyprinter >= 4.0 && < 4.1
, copilot-core >= 4.1 && < 4.2
, copilot-prettyprinter >= 4.1 && < 4.2

exposed-modules : Copilot.Theorem
, Copilot.Theorem.Prove
Expand Down
3 changes: 2 additions & 1 deletion copilot/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
2024-10-22
2024-11-07
* Version bump (4.1). (#561)
* Update contribution guidelines. (#476)
* Update README with missing publications. (#544)
* Make the what4-propositional example's comments match results. (#535)
Expand Down
14 changes: 7 additions & 7 deletions copilot/copilot.cabal
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: copilot
version: 4.0
version: 4.1
cabal-version: >= 1.10
license: BSD3
license-file: LICENSE
Expand Down Expand Up @@ -52,12 +52,12 @@ library
, directory >= 1.3 && < 1.4
, filepath >= 1.4 && < 1.5

, copilot-core >= 4.0 && < 4.1
, copilot-theorem >= 4.0 && < 4.1
, copilot-language >= 4.0 && < 4.1
, copilot-libraries >= 4.0 && < 4.1
, copilot-c99 >= 4.0 && < 4.1
, copilot-prettyprinter >= 4.0 && < 4.1
, copilot-core >= 4.1 && < 4.2
, copilot-theorem >= 4.1 && < 4.2
, copilot-language >= 4.1 && < 4.2
, copilot-libraries >= 4.1 && < 4.2
, copilot-c99 >= 4.1 && < 4.2
, copilot-prettyprinter >= 4.1 && < 4.2


exposed-modules: Language.Copilot, Language.Copilot.Main
Expand Down

0 comments on commit 633c7b9

Please sign in to comment.