packages feed

extrapolate 0.4.4 → 0.4.6

raw patch · 8 files changed

+167/−122 lines, 8 filesPVP: major bump suggested

API removals or changes: PVP suggests a major version bump

API changes (from Hackage documentation)

- Test.Extrapolate: class Typeable a => Express a
+ Test.Extrapolate: class (Show a, Typeable a) => Express a

Files

+ .github/workflows/build.yml view
@@ -0,0 +1,128 @@+# Builds and tests this Haskell project on "GitHub Actions"+#+# 2021  Rudy Matela+#+# some docs: https://github.com/haskell/actions/tree/main/setup+name: build+on: [push]+jobs:+  build-and-test:+    runs-on: ubuntu-latest+    steps:++      - name: Cache ~/.cabal/packages+        uses: actions/cache@v2+        with:+          path: ~/.cabal/packages+          key:          v1-${{ runner.os }}-cabal-packages-${{ hashFiles('hello.cabal') }}+          restore-keys: v1-${{ runner.os }}-cabal-packages-++      - name: Cache ~/.cabal and ~/.ghc+        uses: actions/cache@v2+        with:+          path: |+            ~/.cabal+            !~/.cabal/packages+            ~/.ghc+          key:          v1-${{ runner.os }}-cabal-ghc-latest-${{ hashFiles('hello.cabal') }}+          restore-keys: v1-${{ runner.os }}-cabal-ghc-latest-++      - run: du -hd3 ~/.cabal ~/.ghc || true++      - run: haddock --version || sudo apt-get install ghc-haddock+      - run: ghc     --version+      - run: cabal   --version+      - run: haddock --version+      - run: ghc-pkg list++      - name: Check out repository+        uses: actions/checkout@v2++      - run: cabal update+      - run: make install-dependencies++      - run: make+      - run: make test+      - run: make haddock+      - run: make test-sdist+      - run: make test-via-cabal+++  test-with-ghc:+    strategy:+      matrix:+        ghc:+          - '9.0'+          - '8.10'+          - '8.8'+          - '8.6'+          - '8.4'+          - '8.2'+          - '8.0'+          - '7.10'+          - '7.8'+    runs-on: ubuntu-latest+    needs: build-and-test+    container: haskell:${{ matrix.ghc }}+    steps:+      - name: Cache ~/.cabal/packages+        uses: actions/cache@v2+        with:+          path: ~/.cabal/packages+          key:          v1-${{ runner.os }}-cabal-packages-${{ hashFiles('hello.cabal') }}+          restore-keys: v1-${{ runner.os }}-cabal-packages-++      - name: Cache ~/.cabal and ~/.ghc+        uses: actions/cache@v2+        with:+          path: |+            ~/.cabal+            !~/.cabal/packages+            ~/.ghc+          key:          v1-${{ runner.os }}-cabal-ghc-${{ matrix.ghc }}-${{ hashFiles('hello.cabal') }}+          restore-keys: v1-${{ runner.os }}-cabal-ghc-${{ matrix.ghc }}-++      - run: du -hd3 ~/.cabal ~/.ghc || true++      - run: make --version || rm /etc/apt/sources.list.d/*.list # faster update+      - run: make --version || apt-get update+      - run: make --version || apt-get install make++      - run: ghc     --version+      - run: cabal   --version+      - run: haddock --version+      - run: ghc-pkg list++      - name: Check out repository+        uses: actions/checkout@v2++      - run: cabal update+      - run: make install-dependencies++      - run: make+      - run: make test+      - run: make haddock+      - run: make test-sdist+      - run: make test-via-cabal++  test-with-stack:+    runs-on: ubuntu-latest+    needs: build-and-test+    steps:+      - name: Setup Haskell's GHC and Cabal as required by current Stackage LTS+        uses: haskell/actions/setup@v1+        with: # lts-17.9+          ghc-version: '8.10.4'+          cabal-version: '3.2'++      - uses: actions/cache@v2+        with:+          path: ~/.stack+          key:          v1-${{ runner.os }}-stack-${{ hashFiles('stack.yaml') }}+          restore-keys: v1-${{ runner.os }}-stack-++      - run: stack --version++      - name: Check out repository+        uses: actions/checkout@v2+      - run: make test-via-stack
− .travis.yml
@@ -1,90 +0,0 @@-# .travis.yml file for Extrapolate-#-# Copyright:   (c) 2017-2020 Rudy Matela-# License:     3-Clause BSD  (see the file LICENSE)-# Maintainer:  Rudy Matela <rudy@matela.com.br>--language: c  # not really--notifications:-  email:-    on_failure: change--sudo: false--cache:-  directories:-  - $HOME/.ghc-  - $HOME/.cabal-  - $HOME/.stack--before_install:-- export PATH=/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH-- ghc --version-- cabal --version-- haddock --version-- du -hd3 ~/.cabal ~/.ghc || true-- du -hd4 ~/.stack || true-- rm -f ~/.cabal/config && cabal update-# Download and unpack the stack executable-# "Once Travis whitelists the stack.dev files," simply include stack in the-# addons section. -- https://docs.haskellstack.org/en/stable/travis_ci/-- mkdir -p ~/.local/bin-- export PATH=$HOME/.local/bin:$PATH-- travis_retry curl -L https://www.stackage.org/stack/linux-x86_64 | tar xz --wildcards --strip-components=1 -C ~/.local/bin '*/stack'-- stack config set system-ghc --global true-- stack --version-- cabal install leancheck express speculate || cabal v1-install leancheck express speculate--script:-- make && make test-- make haddock-- make test-sdist-- cabal test --ghc-option=-O0-- stack --resolver $STACKVER --no-terminal --skip-ghc-check test --ghc-options=-O0--matrix:-  allow_failures:-  - ghc: 'head'-  include:-  - ghc: 'head'-    env:                   GHCVER=head         CABALVER=head   STACKVER=nightly-2020-03-28-    addons: {apt: {packages: [ghc-head,   cabal-install-head], sources: hvr-ghc}}-  - ghc: '8.10'-    env:                   GHCVER=8.10.1       CABALVER=3.2    STACKVER=nightly-2020-03-28-    addons: {apt: {packages: [ghc-8.10.1, cabal-install-3.2],  sources: hvr-ghc}}-  - ghc: '8.8'-    env:                   GHCVER=8.8.3        CABALVER=3.0    STACKVER=lts-15.6-    addons: {apt: {packages: [ghc-8.8.3,  cabal-install-3.0],  sources: hvr-ghc}}-  - ghc: '8.6'-    env:                   GHCVER=8.6.5        CABALVER=2.4    STACKVER=lts-14.27-    addons: {apt: {packages: [ghc-8.6.5,  cabal-install-2.4],  sources: hvr-ghc}}-  - ghc: '8.4'-    env:                   GHCVER=8.4.4        CABALVER=2.2    STACKVER=lts-12.26-    addons: {apt: {packages: [ghc-8.4.4,  cabal-install-2.2],  sources: hvr-ghc}}-  - ghc: '8.2'-    env:                   GHCVER=8.2.2        CABALVER=2.0    STACKVER=lts-11.22-    addons: {apt: {packages: [ghc-8.2.2,  cabal-install-2.0],  sources: hvr-ghc}}-  - ghc: '8.0'-    env:                   GHCVER=8.0.2        CABALVER=1.24   STACKVER=lts-9.21-    addons: {apt: {packages: [ghc-8.0.2,  cabal-install-1.24], sources: hvr-ghc}}-  - ghc: '7.10'-    env:                   GHCVER=7.10.3       CABALVER=1.22   STACKVER=lts-6.35-    addons: {apt: {packages: [ghc-7.10.3, cabal-install-1.22], sources: hvr-ghc}}-  # we only support stack with GHC >= 7.10-  - ghc: '7.8'-    env:                   GHCVER=7.8.4        CABALVER=1.18-    addons: {apt: {packages: [ghc-7.8.4,  cabal-install-1.18], sources: hvr-ghc}}-    before_install:-    - export PATH=/opt/ghc/$GHCVER/bin:/opt/cabal/$CABALVER/bin:$PATH-    - ghc --version-    - cabal --version-    - haddock --version-    - rm -f ~/.cabal/config && cabal update-    - cabal install Cabal==1.18.*-    - cabal install leancheck express speculate-    script:-    - make && make test-    - make haddock HADDOCKFLAGS=-    - make test-sdist-    - cabal test
Makefile view
@@ -36,11 +36,11 @@   $(GHCEXTRAFLAGS) \   $(shell grep -q "Arch Linux" /etc/lsb-release && echo -dynamic) #  -Wall -Wno-name-shadowing -Wno-orphans -Wno-unused-matches-HADDOCKFLAGS = --no-print-missing-docs \+HADDOCKFLAGS = \   $(shell grep -q "Arch Linux" /etc/lsb-release && echo --optghc=-dynamic) LIST_ALL_HSS = find src test mk eg/*.hs bench/*.hs -name "*.hs"-LIB_DEPS = base template-haskell leancheck express speculate-+LIB_DEPS = base template-haskell $(INSTALL_DEPS)+INSTALL_DEPS = leancheck express speculate all: mk/toplibs  all-all: mk/All.hs@@ -68,6 +68,14 @@  test-sdist: 	./test/sdist++test-via-cabal:+	cabal configure --enable-tests --enable-benchmarks --ghc-options="$(GHCFLAGS) -O0"+	cabal build+	cabal test test++test-via-stack:+	stack test extrapolate:test:test --ghc-options="$(GHCFLAGS) -O0" --system-ghc --no-install-ghc --no-terminal  .PHONY: bench bench: $(patsubst %,%.bench,$(EG))
README.md view
@@ -154,8 +154,8 @@  [extrapolate-logo]: https://github.com/rudymatela/extrapolate/raw/master/doc/extrapolate.svg?sanitize=true -[build-status]:    https://travis-ci.org/rudymatela/extrapolate.svg?branch=master-[build-log]:       https://travis-ci.org/rudymatela/extrapolate+[build-log]:    https://github.com/rudymatela/extrapolate/actions/workflows/build.yml+[build-status]: https://github.com/rudymatela/extrapolate/actions/workflows/build.yml/badge.svg [hackage-version]: https://img.shields.io/hackage/v/extrapolate.svg [stackage-lts-badge]:              https://stackage.org/package/extrapolate/badge/lts [stackage-nightly-badge]:          https://stackage.org/package/extrapolate/badge/nightly
eg/parser.hs view
@@ -70,17 +70,16 @@          | Or Exp Exp   deriving (Show, Read, Typeable, Generic, Eq, Ord) -deriveListable ''Lang---deriveListable ''Var-deriveListable ''Mod-deriveListable ''Func-deriveListable ''Stmt+instance Listable Var where+  tiers = cons1 Var `suchThat` (\(Var s) -> all isAlphaNum s && not (null s))+ deriveListable ''Exp+deriveListable ''Stmt+deriveListable ''Func+deriveListable ''Mod+deriveListable ''Lang  ----------------------------------------------------------------------------------instance Listable Var where-  tiers = cons1 Var `suchThat` (\(Var s) -> all isAlphaNum s && not (null s))  {- instance Listable Lang where
extrapolate.cabal view
@@ -1,5 +1,5 @@ name:                extrapolate-version:             0.4.4+version:             0.4.6 synopsis:            generalize counter-examples of test properties description:   Extrapolate is a tool able to provide generalized counter-examples of test@@ -24,7 +24,7 @@                , TODO.md                , doc/extrapolate.svg extra-source-files: .gitignore-                  , .travis.yml+                  , .github/workflows/build.yml                   , Makefile                   , bench/versions                   , bench/diff.hs@@ -68,7 +68,8 @@                   , test/model/bench/*.out                   , test/model/eg/*.out                   , test/sdist-tested-with: GHC==8.10+tested-with: GHC==9.0+           , GHC==8.10            , GHC==8.8            , GHC==8.6            , GHC==8.4@@ -84,7 +85,7 @@ source-repository this   type:            git   location:        https://github.com/rudymatela/extrapolate-  tag:             v0.4.4+  tag:             v0.4.6  library   exposed-modules: Test.Extrapolate
mk/haskell.mk view
@@ -21,6 +21,7 @@ GHC ?= ghc GHCCMD = $(GHC) -i$(GHCIMPORTDIRS) $(GHCFLAGS) HADDOCK ?= haddock+CABAL_INSTALL = $(shell cabal --version | grep -q "version [0-2]\." && echo 'cabal install' || echo 'cabal v1-install')  # Hugs Parameters HUGSIMPORTDIRS ?= "/usr/lib/hugs/packages/*"@@ -46,19 +47,13 @@  LIB_DEPS ?= base ALL_DEPS ?= $(LIB_DEPS)+INSTALL_DEPS ?=  PKGNAME = $(shell cat *.cabal | grep "^name:"    | sed -e "s/name: *//")-HADDOCK_VERSION = $(shell $(HADDOCK) --version | grep version | sed -e 's/.*version //;s/,.*//')-HADDOCK_MAJOR = $(shell echo $(HADDOCK_VERSION) | sed -e 's/\..*//')-HADDOCK_MINOR = $(shell echo $(HADDOCK_VERSION) | sed -e 's/[0-9]*\.\([0-9]*\).[0-9]*/\1/')-HADDOCK_PKG_NAME = $(shell [ $(HADDOCK_MAJOR) -gt 2 ] \-                        || [ $(HADDOCK_MAJOR) -eq 2 -a $(HADDOCK_MINOR) -ge 20 ] \-                        && echo "--package-name=$(PKGNAME)")-HADDOCK_HLNK_SRC = $(shell [ $(HADDOCK_MAJOR) -gt 2 ] \-                        || [ $(HADDOCK_MAJOR) -eq 2 -a $(HADDOCK_MINOR) -ge 17 ] \-                        && echo "--hyperlinked-source") +HADDOCK_HAS = haddock --help | grep -q -- + # Implicit rules %.hi %.o: %.hs 	$(GHCCMD) $< && touch $@@@ -94,6 +89,9 @@ depend: 	find $(ALL_HSS) | ./mk/ghcdeps -i$(GHCIMPORTDIRS) $(GHCFLAGS) > $(DEPMK) +install-dependencies:+	$(CABAL_INSTALL) $(INSTALL_DEPS)+ # haddock rules haddock: doc/index.html @@ -110,8 +108,9 @@ 	./mk/haddock-i $(LIB_DEPS) | xargs \ 	$(HADDOCK) --html -odoc $(LIB_HSS) \ 	  --title=$(PKGNAME) \-	  $(HADDOCK_PKG_NAME) \-	  $(HADDOCK_HLNK_SRC) \+	  $(shell $(HADDOCK_HAS) --package-name          && echo "--package-name=$(PKGNAME)" ) \+	  $(shell $(HADDOCK_HAS) --hyperlinked-source    && echo "--hyperlinked-source"      ) \+	  $(shell $(HADDOCK_HAS) --no-print-missing-docs && echo --no-print-missing-docs     ) \ 	  $(HADDOCKFLAGS)  clean-cabal:
stack.yaml view
@@ -1,9 +1,9 @@-resolver: lts-15.6 # or ghc-8.8.3+resolver: lts-17.9 # or ghc-8.10.4  packages: - .  extra-deps:-- leancheck-0.9.4-- speculate-0.4.6-- express-0.1.6+- leancheck-0.9.10+- speculate-0.4.8+- express-0.1.14