Skip to content

Commit

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

Version 4.2 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.2" \
         --constraint="copilot-c99==4.2" \
         --constraint="copilot-core==4.2" \
         --constraint="copilot-prettyprinter==4.2" \
         --constraint="copilot-interpreter==4.2" \
         --constraint="copilot-language==4.2" \
         --constraint="copilot-libraries==4.2" \
         --constraint="copilot-theorem==4.2" \
    && 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-577
```

**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 Jan 8, 2025
2 parents 6cf3581 + e2f3f03 commit 71dd870
Show file tree
Hide file tree
Showing 16 changed files with 40 additions and 30 deletions.
3 changes: 2 additions & 1 deletion copilot-c99/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
2025-01-02
2025-01-07
* Version bump (4.2). (#577)
* Remove uses of Copilot.Core.Expr.UExpr.uExprType. (#565)
* Allow using same trigger name in multiple declarations. (#296)
* Bump upper version constraint on filepath. (#570)
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.1
version : 4.2
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.1 && < 4.2
, copilot-core >= 4.2 && < 4.3
, 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 @@
2025-01-06
2025-01-07
* Version bump (4.2). (#577)
* Deprecate fields of Copilot.Core.Expr.UExpr. (#565)
* Increase test coverage. (#555)
* Define generic implementations of Struct and Typed methods. (#564)
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.1
version: 4.2
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 @@
2025-01-07
* Version bump (4.2). (#577)

2024-11-07
* Version bump (4.1). (#561)

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.1
version: 4.2
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.1 && < 4.2
copilot-core >= 4.2 && < 4.3

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 @@
2025-01-02
2025-01-07
* Version bump (4.2). (#577)
* Bump upper version constraint on containers. (#570)

2024-11-07
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.1
version: 4.2
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.1 && < 4.2
, copilot-interpreter >= 4.1 && < 4.2
, copilot-theorem >= 4.1 && < 4.2
, copilot-core >= 4.2 && < 4.3
, copilot-interpreter >= 4.2 && < 4.3
, copilot-theorem >= 4.2 && < 4.3

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 @@
2025-01-02
2025-01-07
* Version bump (4.2). (#577)
* Bump upper version constraint on containers. (#570)

2024-11-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.1
version: 4.2
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.8
, mtl >= 2.0 && < 2.4
, parsec >= 2.0 && < 3.2
, copilot-language >= 4.1 && < 4.2
, copilot-language >= 4.2 && < 4.3

exposed-modules:
Copilot.Library.Libraries
Expand Down
3 changes: 2 additions & 1 deletion copilot-prettyprinter/CHANGELOG
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
2024-11-15
2025-01-07
* Version bump (4.2). (#577)
* Remove uses of Copilot.Core.Expr.UExpr.uExprExpr. (#565)

2024-11-07
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.1
version: 4.2
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.1 && < 4.2
copilot-core >= 4.2 && < 4.3

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 @@
2025-01-02
2025-01-07
* Version bump (4.2). (#577)
* Remove uses of Copilot.Core.Expr.UExpr.uExprType,uExprExpr. (#565)
* Bump upper constraint on containers, data-default. (#570)

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.1
version : 4.2
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.1 && < 4.2
, copilot-prettyprinter >= 4.1 && < 4.2
, copilot-core >= 4.2 && < 4.3
, copilot-prettyprinter >= 4.2 && < 4.3

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 @@
2025-01-06
2025-01-07
* Version bump (4.2). (#577)
* Bump upper version constraint on filepath. (#570)
* Update struct examples to use generic method implementations. (#564)

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.1
version: 4.2
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.6

, 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
, copilot-core >= 4.2 && < 4.3
, copilot-theorem >= 4.2 && < 4.3
, copilot-language >= 4.2 && < 4.3
, copilot-libraries >= 4.2 && < 4.3
, copilot-c99 >= 4.2 && < 4.3
, copilot-prettyprinter >= 4.2 && < 4.3


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

0 comments on commit 71dd870

Please sign in to comment.