Skip to content

Commit

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

Version 3.20 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==3.20" \
         --constraint="copilot-c99==3.20" \
         --constraint="copilot-core==3.20" \
         --constraint="copilot-prettyprinter==3.20" \
         --constraint="copilot-interpreter==3.20" \
         --constraint="copilot-language==3.20" \
         --constraint="copilot-libraries==3.20" \
         --constraint="copilot-theorem==3.20" \
    && 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-522
```

**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 Jul 8, 2024
2 parents 7c1049a + 76bbefe commit 6034e6d
Show file tree
Hide file tree
Showing 16 changed files with 53 additions and 41 deletions.
1 change: 1 addition & 0 deletions copilot-c99/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
2024-07-07
* Version bump (3.20). (#522)
* Add support for struct field updates. (#520)

2024-05-07
Expand Down
8 changes: 4 additions & 4 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 : 3.19.1
version : 3.20
synopsis : A compiler for Copilot targeting C99.
description :
This package is a back-end from Copilot to C.
Expand Down Expand Up @@ -45,9 +45,9 @@ library
, mtl >= 2.2 && < 2.4
, pretty >= 1.1 && < 1.2

, copilot-core >= 3.19.1 && < 3.20
, language-c99 >= 0.2.0 && < 0.3
, language-c99-simple >= 0.3 && < 0.4
, copilot-core >= 3.20 && < 3.21
, language-c99 >= 0.2.0 && < 0.3
, language-c99-simple >= 0.3 && < 0.4

exposed-modules : Copilot.Compile.C99

Expand Down
1 change: 1 addition & 0 deletions copilot-core/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
2024-07-07
* Version bump (3.20). (#522)
* Update Op2, Struct to support struct field updates. (#520)

2024-05-07
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: 3.19.1
version: 3.20
synopsis: An intermediate representation for Copilot.
description:
Intermediate representation for Copilot.
Expand Down
1 change: 1 addition & 0 deletions copilot-interpreter/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
2024-07-07
* Version bump (3.20). (#522)
* Add support for struct field updates. (#520)

2024-05-07
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: 3.19.1
version: 3.20
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 >= 3.19.1 && < 3.20
copilot-core >= 3.20 && < 3.21

exposed-modules:

Expand Down
1 change: 1 addition & 0 deletions copilot-language/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
2024-07-07
* Version bump (3.20). (#522)
* Remove deprecated function Copilot.Language.Spec.forall. (#518)
* Add support for struct field updates. (#520)

Expand Down
18 changes: 9 additions & 9 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: 3.19.1
version: 3.20
synopsis: A Haskell-embedded DSL for monitoring hard real-time
distributed systems.
description:
Expand Down Expand Up @@ -35,16 +35,16 @@ source-repository head
library
default-language: Haskell2010
hs-source-dirs: src
build-depends: base >= 4.9 && < 5
build-depends: base >= 4.9 && < 5

, array >= 0.5 && < 0.6
, containers >= 0.4 && < 0.7
, data-reify >= 0.6 && < 0.7
, mtl >= 2.0 && < 3
, array >= 0.5 && < 0.6
, containers >= 0.4 && < 0.7
, data-reify >= 0.6 && < 0.7
, mtl >= 2.0 && < 3

, copilot-core >= 3.19.1 && < 3.20
, copilot-interpreter >= 3.19.1 && < 3.20
, copilot-theorem >= 3.19.1 && < 3.20
, copilot-core >= 3.20 && < 3.21
, copilot-interpreter >= 3.20 && < 3.21
, copilot-theorem >= 3.20 && < 3.21

exposed-modules: Copilot.Language
, Copilot.Language.Operators.BitWise
Expand Down
3 changes: 3 additions & 0 deletions copilot-libraries/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
2024-07-07
* Version bump (3.20). (#522)

2024-05-07
* Version bump (3.19.1). (#512)

Expand Down
12 changes: 6 additions & 6 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: 3.19.1
version: 3.20
synopsis: Libraries for the Copilot language.
description:
Libraries for the Copilot language.
Expand Down Expand Up @@ -36,12 +36,12 @@ library

hs-source-dirs: src

build-depends: base >= 4.9 && < 5
build-depends: base >= 4.9 && < 5

, containers >= 0.4 && < 0.7
, mtl >= 2.0 && < 2.4
, parsec >= 2.0 && < 3.2
, copilot-language >= 3.19.1 && < 3.20
, containers >= 0.4 && < 0.7
, mtl >= 2.0 && < 2.4
, parsec >= 2.0 && < 3.2
, copilot-language >= 3.20 && < 3.21

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-07-07
* Version bump (3.20). (#522)

2024-05-07
* Version bump (3.19.1). (#512)

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: 3.19.1
version: 3.20
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 >= 3.19.1 && < 3.20
copilot-core >= 3.20 && < 3.21

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-07-06
2024-07-07
* Version bump (3.20). (#522)
* What4 upper-bound dependency version bump. (#514)

2024-05-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 : 3.19.1
version : 3.20
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 >= 3.19.1 && < 3.20
, copilot-prettyprinter >= 3.19.1 && < 3.20
, copilot-core >= 3.20 && < 3.21
, copilot-prettyprinter >= 3.20 && < 3.21

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-07-06
2024-07-07
* Version bump (3.20). (#522)
* Update README to reflect support for GHC 9.8. (#518)

2024-05-07
Expand Down
24 changes: 12 additions & 12 deletions copilot/copilot.cabal
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
name: copilot
version: 3.19.1
version: 3.20
cabal-version: >= 1.10
license: BSD3
license-file: LICENSE
Expand Down Expand Up @@ -47,17 +47,17 @@ library
-Wall
-fno-warn-orphans
build-depends:
base >= 4.9 && < 5
, optparse-applicative >= 0.14 && < 0.19
, directory >= 1.3 && < 1.4
, filepath >= 1.4 && < 1.5

, copilot-core >= 3.19.1 && < 3.20
, copilot-theorem >= 3.19.1 && < 3.20
, copilot-language >= 3.19.1 && < 3.20
, copilot-libraries >= 3.19.1 && < 3.20
, copilot-c99 >= 3.19.1 && < 3.20
, copilot-prettyprinter >= 3.19.1 && < 3.20
base >= 4.9 && < 5
, optparse-applicative >= 0.14 && < 0.19
, directory >= 1.3 && < 1.4
, filepath >= 1.4 && < 1.5

, copilot-core >= 3.20 && < 3.21
, copilot-theorem >= 3.20 && < 3.21
, copilot-language >= 3.20 && < 3.21
, copilot-libraries >= 3.20 && < 3.21
, copilot-c99 >= 3.20 && < 3.21
, copilot-prettyprinter >= 3.20 && < 3.21


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

0 comments on commit 6034e6d

Please sign in to comment.