Skip to content

Commit 0c987a7

Browse files
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.
2 parents ccc9250 + cdbcdac commit 0c987a7

22 files changed

Lines changed: 71 additions & 44 deletions

File tree

copilot-bluespec/CHANGELOG

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
2026-03-07
2+
* Version bump (4.7). (#714)
3+
14
2026-01-07
25
* Version bump (4.6.1). (#705)
36
* Disable test suite via newly added manual cabal flag. (#673)

copilot-bluespec/copilot-bluespec.cabal

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
cabal-version : >= 1.10
22
name : copilot-bluespec
3-
version : 4.6.1
3+
version : 4.7
44
synopsis : A compiler for Copilot targeting FPGAs.
55
description :
66
This package is a back-end from Copilot to FPGAs in Bluespec.
@@ -51,8 +51,8 @@ library
5151
, ieee754 >= 0.8.0 && < 0.9
5252
, pretty >= 1.1.2 && < 1.2
5353

54-
, copilot-core >= 4.6.1 && < 4.7
55-
, language-bluespec >= 0.1 && < 0.2
54+
, copilot-core >= 4.7 && < 4.8
55+
, language-bluespec >= 0.1 && < 0.2
5656

5757
exposed-modules : Copilot.Compile.Bluespec
5858

copilot-c99/CHANGELOG

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
2026-02-16
1+
2026-03-07
2+
* Version bump (4.7). (#714)
23
* Raise error when compiling empty arrays or structs. (#695)
34

45
2026-01-07

copilot-c99/copilot-c99.cabal

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
cabal-version : >= 1.10
22
name : copilot-c99
3-
version : 4.6.1
3+
version : 4.7
44
synopsis : A compiler for Copilot targeting C99.
55
description :
66
This package is a back-end from Copilot to C.
@@ -45,7 +45,7 @@ library
4545
, mtl >= 2.2 && < 2.4
4646
, pretty >= 1.1 && < 1.2
4747

48-
, copilot-core >= 4.6.1 && < 4.7
48+
, copilot-core >= 4.7 && < 4.8
4949
, language-c99 >= 0.2.0 && < 0.3
5050
, language-c99-simple >= 0.3 && < 0.4
5151

copilot-core/CHANGELOG

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
2026-03-07
2+
* Version bump (4.7). (#714)
3+
14
2026-01-07
25
* Version bump (4.6.1). (#705)
36

copilot-core/copilot-core.cabal

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
cabal-version: >=1.10
22
name: copilot-core
3-
version: 4.6.1
3+
version: 4.7
44
synopsis: An intermediate representation for Copilot.
55
description:
66
Intermediate representation for Copilot.

copilot-interpreter/CHANGELOG

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
2026-03-07
2+
* Version bump (4.7). (#714)
3+
14
2026-01-07
25
* Version bump (4.6.1). (#705)
36

copilot-interpreter/copilot-interpreter.cabal

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
cabal-version: >=1.10
22
name: copilot-interpreter
3-
version: 4.6.1
3+
version: 4.7
44
synopsis: Interpreter for Copilot.
55
description:
66
Interpreter for Copilot.
@@ -44,7 +44,7 @@ library
4444
base >= 4.9 && < 5,
4545
pretty >= 1.0 && < 1.2,
4646

47-
copilot-core >= 4.6.1 && < 4.7
47+
copilot-core >= 4.7 && < 4.8
4848

4949
exposed-modules:
5050

copilot-language/CHANGELOG

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
2026-03-07
2+
* Version bump (4.7). (#714)
3+
14
2026-01-07
25
* Version bump (4.6.1). (#705)
36
* Relax version constraint on containers. (#603)

copilot-language/copilot-language.cabal

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
cabal-version: >=1.10
22
name: copilot-language
3-
version: 4.6.1
3+
version: 4.7
44
synopsis: A Haskell-embedded DSL for monitoring hard real-time
55
distributed systems.
66
description:
@@ -42,9 +42,9 @@ library
4242
, data-reify >= 0.6 && < 0.7
4343
, mtl >= 2.0 && < 3
4444

45-
, copilot-core >= 4.6.1 && < 4.7
46-
, copilot-interpreter >= 4.6.1 && < 4.7
47-
, copilot-theorem >= 4.6.1 && < 4.7
45+
, copilot-core >= 4.7 && < 4.8
46+
, copilot-interpreter >= 4.7 && < 4.8
47+
, copilot-theorem >= 4.7 && < 4.8
4848

4949
exposed-modules: Copilot.Language
5050
, Copilot.Language.Operators.BitWise

0 commit comments

Comments
 (0)