Skip to content

Commit de98e67

Browse files
committed
0.96.0.0 Revision 2
- bump base and bytestring - haskell-ci for github actions (up to GHC 8.10.3) - changelog for this and the previous revision - source-repository this
1 parent 3437c73 commit de98e67

File tree

3 files changed

+215
-12
lines changed

3 files changed

+215
-12
lines changed

.github/workflows/haskell-ci.yml

Lines changed: 185 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,185 @@
1+
# This GitHub workflow config has been generated by a script via
2+
#
3+
# haskell-ci 'github' 'regex-posix.cabal'
4+
#
5+
# To regenerate the script (for example after adjusting tested-with) run
6+
#
7+
# haskell-ci regenerate
8+
#
9+
# For more information, see https://github.com/haskell-CI/haskell-ci
10+
#
11+
# version: 0.11.20210214
12+
#
13+
# REGENDATA ("0.11.20210214",["github","regex-posix.cabal"])
14+
#
15+
name: Haskell-CI
16+
on:
17+
- push
18+
- pull_request
19+
jobs:
20+
linux:
21+
name: Haskell-CI - Linux - GHC ${{ matrix.ghc }}
22+
runs-on: ubuntu-18.04
23+
container:
24+
image: buildpack-deps:bionic
25+
continue-on-error: ${{ matrix.allow-failure }}
26+
strategy:
27+
matrix:
28+
include:
29+
- ghc: 8.10.3
30+
allow-failure: false
31+
- ghc: 8.8.4
32+
allow-failure: false
33+
- ghc: 8.6.5
34+
allow-failure: false
35+
- ghc: 8.4.4
36+
allow-failure: false
37+
- ghc: 8.2.2
38+
allow-failure: false
39+
- ghc: 8.0.2
40+
allow-failure: false
41+
- ghc: 7.10.3
42+
allow-failure: false
43+
- ghc: 7.8.4
44+
allow-failure: false
45+
- ghc: 7.6.3
46+
allow-failure: false
47+
- ghc: 7.4.2
48+
allow-failure: false
49+
- ghc: 7.2.2
50+
allow-failure: false
51+
- ghc: 7.0.4
52+
allow-failure: false
53+
fail-fast: false
54+
steps:
55+
- name: apt
56+
run: |
57+
apt-get update
58+
apt-get install -y --no-install-recommends gnupg ca-certificates dirmngr curl git software-properties-common
59+
apt-add-repository -y 'ppa:hvr/ghc'
60+
apt-get update
61+
apt-get install -y ghc-$GHC_VERSION cabal-install-3.2
62+
env:
63+
GHC_VERSION: ${{ matrix.ghc }}
64+
- name: Set PATH and environment variables
65+
run: |
66+
echo "$HOME/.cabal/bin" >> $GITHUB_PATH
67+
echo "LANG=C.UTF-8" >> $GITHUB_ENV
68+
echo "CABAL_DIR=$HOME/.cabal" >> $GITHUB_ENV
69+
echo "CABAL_CONFIG=$HOME/.cabal/config" >> $GITHUB_ENV
70+
HC=/opt/ghc/$GHC_VERSION/bin/ghc
71+
echo "HC=$HC" >> $GITHUB_ENV
72+
echo "HCPKG=/opt/ghc/$GHC_VERSION/bin/ghc-pkg" >> $GITHUB_ENV
73+
echo "HADDOCK=/opt/ghc/$GHC_VERSION/bin/haddock" >> $GITHUB_ENV
74+
echo "CABAL=/opt/cabal/3.2/bin/cabal -vnormal+nowrap" >> $GITHUB_ENV
75+
HCNUMVER=$(${HC} --numeric-version|perl -ne '/^(\d+)\.(\d+)\.(\d+)(\.(\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 0 ? $5 != 1 : $3))')
76+
echo "HCNUMVER=$HCNUMVER" >> $GITHUB_ENV
77+
echo "ARG_TESTS=--enable-tests" >> $GITHUB_ENV
78+
echo "ARG_BENCH=--enable-benchmarks" >> $GITHUB_ENV
79+
echo "HEADHACKAGE=false" >> $GITHUB_ENV
80+
echo "ARG_COMPILER=--ghc --with-compiler=/opt/ghc/$GHC_VERSION/bin/ghc" >> $GITHUB_ENV
81+
echo "GHCJSARITH=0" >> $GITHUB_ENV
82+
env:
83+
GHC_VERSION: ${{ matrix.ghc }}
84+
- name: env
85+
run: |
86+
env
87+
- name: write cabal config
88+
run: |
89+
mkdir -p $CABAL_DIR
90+
cat >> $CABAL_CONFIG <<EOF
91+
remote-build-reporting: anonymous
92+
write-ghc-environment-files: never
93+
remote-repo-cache: $CABAL_DIR/packages
94+
logs-dir: $CABAL_DIR/logs
95+
world-file: $CABAL_DIR/world
96+
extra-prog-path: $CABAL_DIR/bin
97+
symlink-bindir: $CABAL_DIR/bin
98+
installdir: $CABAL_DIR/bin
99+
build-summary: $CABAL_DIR/logs/build.log
100+
store-dir: $CABAL_DIR/store
101+
install-dirs user
102+
prefix: $CABAL_DIR
103+
repository hackage.haskell.org
104+
url: http://hackage.haskell.org/
105+
EOF
106+
cat $CABAL_CONFIG
107+
- name: versions
108+
run: |
109+
$HC --version || true
110+
$HC --print-project-git-commit-id || true
111+
$CABAL --version || true
112+
- name: update cabal index
113+
run: |
114+
$CABAL v2-update -v
115+
- name: install cabal-plan
116+
run: |
117+
mkdir -p $HOME/.cabal/bin
118+
curl -sL https://github.com/haskell-hvr/cabal-plan/releases/download/v0.6.2.0/cabal-plan-0.6.2.0-x86_64-linux.xz > cabal-plan.xz
119+
echo 'de73600b1836d3f55e32d80385acc055fd97f60eaa0ab68a755302685f5d81bc cabal-plan.xz' | sha256sum -c -
120+
xz -d < cabal-plan.xz > $HOME/.cabal/bin/cabal-plan
121+
rm -f cabal-plan.xz
122+
chmod a+x $HOME/.cabal/bin/cabal-plan
123+
cabal-plan --version
124+
- name: checkout
125+
uses: actions/checkout@v2
126+
with:
127+
path: source
128+
- name: initial cabal.project for sdist
129+
run: |
130+
touch cabal.project
131+
echo "packages: $GITHUB_WORKSPACE/source/." >> cabal.project
132+
cat cabal.project
133+
- name: sdist
134+
run: |
135+
mkdir -p sdist
136+
$CABAL sdist all --output-dir $GITHUB_WORKSPACE/sdist
137+
- name: unpack
138+
run: |
139+
mkdir -p unpacked
140+
find sdist -maxdepth 1 -type f -name '*.tar.gz' -exec tar -C $GITHUB_WORKSPACE/unpacked -xzvf {} \;
141+
- name: generate cabal.project
142+
run: |
143+
PKGDIR_regex_posix="$(find "$GITHUB_WORKSPACE/unpacked" -maxdepth 1 -type d -regex '.*/regex-posix-[0-9.]*')"
144+
echo "PKGDIR_regex_posix=${PKGDIR_regex_posix}" >> $GITHUB_ENV
145+
touch cabal.project
146+
touch cabal.project.local
147+
echo "packages: ${PKGDIR_regex_posix}" >> cabal.project
148+
if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo "package regex-posix" >> cabal.project ; fi
149+
if [ $((HCNUMVER >= 80200)) -ne 0 ] ; then echo " ghc-options: -Werror=missing-methods" >> cabal.project ; fi
150+
cat >> cabal.project <<EOF
151+
EOF
152+
$HCPKG list --simple-output --names-only | perl -ne 'for (split /\s+/) { print "constraints: $_ installed\n" unless /^(regex-posix)$/; }' >> cabal.project.local
153+
cat cabal.project
154+
cat cabal.project.local
155+
- name: dump install plan
156+
run: |
157+
$CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH --dry-run all
158+
cabal-plan
159+
- name: cache
160+
uses: actions/cache@v2
161+
with:
162+
key: ${{ runner.os }}-${{ matrix.ghc }}-${{ github.sha }}
163+
path: ~/.cabal/store
164+
restore-keys: ${{ runner.os }}-${{ matrix.ghc }}-
165+
- name: install dependencies
166+
run: |
167+
$CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks --dependencies-only -j2 all
168+
$CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH --dependencies-only -j2 all
169+
- name: build w/o tests
170+
run: |
171+
$CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks all
172+
- name: build
173+
run: |
174+
$CABAL v2-build $ARG_COMPILER $ARG_TESTS $ARG_BENCH all --write-ghc-environment-files=always
175+
- name: cabal check
176+
run: |
177+
cd ${PKGDIR_regex_posix} || false
178+
${CABAL} -vnormal check
179+
- name: haddock
180+
run: |
181+
$CABAL v2-haddock $ARG_COMPILER --with-haddock $HADDOCK $ARG_TESTS $ARG_BENCH all
182+
- name: unconstrained build
183+
run: |
184+
rm -f cabal.project.local
185+
$CABAL v2-build $ARG_COMPILER --disable-tests --disable-benchmarks all

ChangeLog.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
See also http://pvp.haskell.org/faq
22

3+
## 0.96.0.0 Revision 2
4+
5+
- Compatibility with `base-4.15` (GHC 9.0)
6+
7+
## 0.96.0.0 Revision 1
8+
9+
- Compatibility with `base-4.14` (GHC 8.10)
10+
311
## 0.96.0.0
412

513
- Update to `regex-base-0.94.0.0` API

regex-posix.cabal

Lines changed: 22 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
cabal-version: 1.12
22
name: regex-posix
33
version: 0.96.0.0
4+
x-revision: 2
45

56
build-type: Simple
67
license: BSD3
@@ -23,23 +24,32 @@ extra-source-files:
2324
cbits/myfree.h
2425

2526
tested-with:
26-
GHC ==7.0.2
27-
|| ==7.2.2
28-
|| ==7.4.2
29-
|| ==7.6.3
30-
|| ==7.8.4
31-
|| ==7.10.3
32-
|| ==8.0.2
33-
|| ==8.2.2
34-
|| ==8.4.4
35-
|| ==8.6.5
36-
|| ==8.8.3
37-
|| ==8.10.1
27+
-- Haskell CI:
28+
GHC == 7.0.4
29+
GHC == 7.2.2
30+
GHC == 7.4.2
31+
GHC == 7.6.3
32+
GHC == 7.8.4
33+
GHC == 7.10.3
34+
GHC == 8.0.2
35+
GHC == 8.2.2
36+
GHC == 8.4.4
37+
GHC == 8.6.5
38+
GHC == 8.8.4
39+
GHC == 8.10.3
40+
-- manually (AA, 2021-02-17):
41+
-- GHC == 8.10.4
42+
-- GHC == 9.0.1
3843

3944
source-repository head
4045
type: git
4146
location: https://github.com/hvr/regex-posix.git
4247

48+
source-repository this
49+
type: git
50+
location: https://github.com/hvr/regex-base.git
51+
tag: v0.96.0.0-r2
52+
4353
flag _regex-posix-clib
4454
manual: False
4555
default: False

0 commit comments

Comments
 (0)