Script 'mail_helper' called by obssrc
Hello community,

here is the log from the commit of package ghc-profunctors for openSUSE:Factory 
checked in at 2021-01-20 18:24:38
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/ghc-profunctors (Old)
 and      /work/SRC/openSUSE:Factory/.ghc-profunctors.new.28504 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "ghc-profunctors"

Wed Jan 20 18:24:38 2021 rev:18 rq:862328 version:5.6.1

Changes:
--------
--- /work/SRC/openSUSE:Factory/ghc-profunctors/ghc-profunctors.changes  
2020-12-22 11:44:47.249781744 +0100
+++ 
/work/SRC/openSUSE:Factory/.ghc-profunctors.new.28504/ghc-profunctors.changes   
    2021-01-20 18:25:17.767396275 +0100
@@ -1,0 +2,10 @@
+Mon Jan  4 11:06:21 UTC 2021 - [email protected]
+
+- Update profunctors to version 5.6.1.
+  5.6.1 [2020.12.31]
+  ------------------
+  * Add `Functor` instances for `PastroSum`, `CopastroSum`, `Environment`,
+    `FreeMapping`, `Pastro`, `Copastro`, `FreeTraversing`, and `Coyoneda`.
+  * Explicitly mark modules as `Safe`.
+
+-------------------------------------------------------------------

Old:
----
  profunctors-5.6.tar.gz

New:
----
  profunctors-5.6.1.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ ghc-profunctors.spec ++++++
--- /var/tmp/diff_new_pack.NSqxiG/_old  2021-01-20 18:25:19.263397700 +0100
+++ /var/tmp/diff_new_pack.NSqxiG/_new  2021-01-20 18:25:19.263397700 +0100
@@ -1,7 +1,7 @@
 #
 # spec file for package ghc-profunctors
 #
-# Copyright (c) 2020 SUSE LLC
+# Copyright (c) 2021 SUSE LLC
 #
 # All modifications and additions to the file contributed by third parties
 # remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
 
 %global pkg_name profunctors
 Name:           ghc-%{pkg_name}
-Version:        5.6
+Version:        5.6.1
 Release:        0
 Summary:        Profunctors
 License:        BSD-3-Clause

++++++ profunctors-5.6.tar.gz -> profunctors-5.6.1.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/.hlint.yaml 
new/profunctors-5.6.1/.hlint.yaml
--- old/profunctors-5.6/.hlint.yaml     2001-09-09 03:46:40.000000000 +0200
+++ new/profunctors-5.6.1/.hlint.yaml   2001-09-09 03:46:40.000000000 +0200
@@ -11,6 +11,7 @@
     - MultiParamTypeClasses
     - PolyKinds
     - RankNTypes
+    - Safe
     - ScopedTypeVariables
     - Trustworthy
     - TypeFamilies
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/.travis.yml 
new/profunctors-5.6.1/.travis.yml
--- old/profunctors-5.6/.travis.yml     2001-09-09 03:46:40.000000000 +0200
+++ new/profunctors-5.6.1/.travis.yml   1970-01-01 01:00:00.000000000 +0100
@@ -1,162 +0,0 @@
-# This Travis job script has been generated by a script via
-#
-#   haskell-ci '--output=.travis.yml' '--config=cabal.haskell-ci' 
'cabal.project'
-#
-# To regenerate the script (for example after adjusting tested-with) run
-#
-#   haskell-ci regenerate
-#
-# For more information, see https://github.com/haskell-CI/haskell-ci
-#
-# version: 0.10
-#
-version: ~> 1.0
-language: c
-os: linux
-dist: xenial
-git:
-  # whether to recursively clone submodules
-  submodules: false
-notifications:
-  irc:
-    channels:
-      - irc.freenode.org#haskell-lens
-    skip_join: true
-    template:
-      - "\x0313profunctors\x03/\x0306%{branch}\x03 \x0314%{commit}\x03 
%{build_url} %{message}"
-cache:
-  directories:
-    - $HOME/.cabal/packages
-    - $HOME/.cabal/store
-    - $HOME/.hlint
-before_cache:
-  - rm -fv $CABALHOME/packages/hackage.haskell.org/build-reports.log
-  # remove files that are regenerated by 'cabal update'
-  - rm -fv $CABALHOME/packages/hackage.haskell.org/00-index.*
-  - rm -fv $CABALHOME/packages/hackage.haskell.org/*.json
-  - rm -fv $CABALHOME/packages/hackage.haskell.org/01-index.cache
-  - rm -fv $CABALHOME/packages/hackage.haskell.org/01-index.tar
-  - rm -fv $CABALHOME/packages/hackage.haskell.org/01-index.tar.idx
-  - rm -rfv $CABALHOME/packages/head.hackage
-jobs:
-  include:
-    - compiler: ghc-8.10.1
-      addons: {"apt":{"sources":[{"sourceline":"deb 
http://ppa.launchpad.net/hvr/ghc/ubuntu xenial 
main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-8.10.1","cabal-install-3.2"]}}
-      os: linux
-    - compiler: ghc-8.8.3
-      addons: {"apt":{"sources":[{"sourceline":"deb 
http://ppa.launchpad.net/hvr/ghc/ubuntu xenial 
main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-8.8.3","cabal-install-3.2"]}}
-      os: linux
-    - compiler: ghc-8.6.5
-      addons: {"apt":{"sources":[{"sourceline":"deb 
http://ppa.launchpad.net/hvr/ghc/ubuntu xenial 
main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-8.6.5","cabal-install-3.2"]}}
-      os: linux
-    - compiler: ghc-8.4.4
-      addons: {"apt":{"sources":[{"sourceline":"deb 
http://ppa.launchpad.net/hvr/ghc/ubuntu xenial 
main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-8.4.4","cabal-install-3.2"]}}
-      os: linux
-    - compiler: ghc-8.2.2
-      addons: {"apt":{"sources":[{"sourceline":"deb 
http://ppa.launchpad.net/hvr/ghc/ubuntu xenial 
main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-8.2.2","cabal-install-3.2"]}}
-      os: linux
-    - compiler: ghc-8.0.2
-      addons: {"apt":{"sources":[{"sourceline":"deb 
http://ppa.launchpad.net/hvr/ghc/ubuntu xenial 
main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-8.0.2","cabal-install-3.2"]}}
-      os: linux
-    - compiler: ghc-7.10.3
-      addons: {"apt":{"sources":[{"sourceline":"deb 
http://ppa.launchpad.net/hvr/ghc/ubuntu xenial 
main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-7.10.3","cabal-install-3.2"]}}
-      os: linux
-    - compiler: ghc-7.8.4
-      addons: {"apt":{"sources":[{"sourceline":"deb 
http://ppa.launchpad.net/hvr/ghc/ubuntu xenial 
main","key_url":"https://keyserver.ubuntu.com/pks/lookup?op=get&search=0x063dab2bdc0b3f9fcebc378bff3aeacef6f88286"}],"packages":["ghc-7.8.4","cabal-install-3.2"]}}
-      os: linux
-before_install:
-  - HC=$(echo "/opt/$CC/bin/ghc" | sed 's/-/\//')
-  - WITHCOMPILER="-w $HC"
-  - HADDOCK=$(echo "/opt/$CC/bin/haddock" | sed 's/-/\//')
-  - HCPKG="$HC-pkg"
-  - unset CC
-  - CABAL=/opt/ghc/bin/cabal
-  - CABALHOME=$HOME/.cabal
-  - export PATH="$CABALHOME/bin:$PATH"
-  - TOP=$(pwd)
-  - "HCNUMVER=$(${HC} --numeric-version|perl -ne 
'/^(\\d+)\\.(\\d+)\\.(\\d+)(\\.(\\d+))?$/; print(10000 * $1 + 100 * $2 + ($3 == 
0 ? $5 != 1 : $3))')"
-  - echo $HCNUMVER
-  - CABAL="$CABAL -vnormal+nowrap"
-  - set -o pipefail
-  - TEST=--enable-tests
-  - BENCH=--enable-benchmarks
-  - HEADHACKAGE=false
-  - rm -f $CABALHOME/config
-  - |
-    echo "verbose: normal +nowrap +markoutput"          >> $CABALHOME/config
-    echo "remote-build-reporting: anonymous"            >> $CABALHOME/config
-    echo "write-ghc-environment-files: always"          >> $CABALHOME/config
-    echo "remote-repo-cache: $CABALHOME/packages"       >> $CABALHOME/config
-    echo "logs-dir:          $CABALHOME/logs"           >> $CABALHOME/config
-    echo "world-file:        $CABALHOME/world"          >> $CABALHOME/config
-    echo "extra-prog-path:   $CABALHOME/bin"            >> $CABALHOME/config
-    echo "symlink-bindir:    $CABALHOME/bin"            >> $CABALHOME/config
-    echo "installdir:        $CABALHOME/bin"            >> $CABALHOME/config
-    echo "build-summary:     $CABALHOME/logs/build.log" >> $CABALHOME/config
-    echo "store-dir:         $CABALHOME/store"          >> $CABALHOME/config
-    echo "install-dirs user"                            >> $CABALHOME/config
-    echo "  prefix: $CABALHOME"                         >> $CABALHOME/config
-    echo "repository hackage.haskell.org"               >> $CABALHOME/config
-    echo "  url: http://hackage.haskell.org/";           >> $CABALHOME/config
-install:
-  - ${CABAL} --version
-  - echo "$(${HC} --version) [$(${HC} --print-project-git-commit-id 2> 
/dev/null || echo '?')]"
-  - |
-    echo "program-default-options"                >> $CABALHOME/config
-    echo "  ghc-options: $GHCJOBS +RTS -M6G -RTS" >> $CABALHOME/config
-  - cat $CABALHOME/config
-  - rm -fv cabal.project cabal.project.local cabal.project.freeze
-  - travis_retry ${CABAL} v2-update -v
-  - if [ $HCNUMVER -ge 81000 ] ; then HLINTVER=$(cd /tmp && (${CABAL} 
v2-install -v $WITHCOMPILER --dry-run hlint  --constraint='hlint ==2.2.*' |  
perl -ne 'if (/\bhlint-(\d+(\.\d+)*)\b/) { print "$1"; last; }')); echo "HLint 
version $HLINTVER" ; fi
-  - "if [ $HCNUMVER -ge 81000 ] ; then if [ ! -e 
$HOME/.hlint/hlint-$HLINTVER/hlint ]; then echo \"Downloading HLint version 
$HLINTVER\"; mkdir -p $HOME/.hlint; curl --write-out 'Status Code: %{http_code} 
Redirects: %{num_redirects} Total time: %{time_total} Total Dsize: 
%{size_download}\\n' --silent --location --output 
$HOME/.hlint/hlint-$HLINTVER.tar.gz 
\"https://github.com/ndmitchell/hlint/releases/download/v$HLINTVER/hlint-$HLINTVER-x86_64-linux.tar.gz\";;
 tar -xzv -f $HOME/.hlint/hlint-$HLINTVER.tar.gz -C $HOME/.hlint; fi ; fi"
-  - if [ $HCNUMVER -ge 81000 ] ; then mkdir -p $CABALHOME/bin && ln -sf 
"$HOME/.hlint/hlint-$HLINTVER/hlint" $CABALHOME/bin/hlint ; fi
-  - if [ $HCNUMVER -ge 81000 ] ; then hlint --version ; fi
-  # Generate cabal.project
-  - rm -rf cabal.project cabal.project.local cabal.project.freeze
-  - touch cabal.project
-  - |
-    echo "packages: ." >> cabal.project
-  - if [ $HCNUMVER -ge 80200 ] ; then echo 'package profunctors' >> 
cabal.project ; fi
-  - "if [ $HCNUMVER -ge 80200 ] ; then echo '  ghc-options: 
-Werror=missing-methods' >> cabal.project ; fi"
-  - |
-  - "for pkg in $($HCPKG list --simple-output); do echo $pkg | sed 
's/-[^-]*$//' | (grep -vE -- '^(profunctors)$' || true) | sed 's/^/constraints: 
/' | sed 's/$/ installed/' >> cabal.project.local; done"
-  - cat cabal.project || true
-  - cat cabal.project.local || true
-  - if [ -f "./configure.ac" ]; then (cd "." && autoreconf -i); fi
-  - ${CABAL} v2-freeze $WITHCOMPILER ${TEST} ${BENCH}
-  - "cat cabal.project.freeze | sed -E 's/^(constraints: *| *)//' | sed 
's/any.//'"
-  - rm  cabal.project.freeze
-  - travis_wait 40 ${CABAL} v2-build $WITHCOMPILER ${TEST} ${BENCH} --dep -j2 
all
-script:
-  - DISTDIR=$(mktemp -d /tmp/dist-test.XXXX)
-  # Packaging...
-  - ${CABAL} v2-sdist all
-  # Unpacking...
-  - mv dist-newstyle/sdist/*.tar.gz ${DISTDIR}/
-  - cd ${DISTDIR} || false
-  - find . -maxdepth 1 -type f -name '*.tar.gz' -exec tar -xvf '{}' \;
-  - find . -maxdepth 1 -type f -name '*.tar.gz' -exec rm       '{}' \;
-  - PKGDIR_profunctors="$(find . -maxdepth 1 -type d -regex 
'.*/profunctors-[0-9.]*')"
-  # Generate cabal.project
-  - rm -rf cabal.project cabal.project.local cabal.project.freeze
-  - touch cabal.project
-  - |
-    echo "packages: ${PKGDIR_profunctors}" >> cabal.project
-  - if [ $HCNUMVER -ge 80200 ] ; then echo 'package profunctors' >> 
cabal.project ; fi
-  - "if [ $HCNUMVER -ge 80200 ] ; then echo '  ghc-options: 
-Werror=missing-methods' >> cabal.project ; fi"
-  - |
-  - "for pkg in $($HCPKG list --simple-output); do echo $pkg | sed 
's/-[^-]*$//' | (grep -vE -- '^(profunctors)$' || true) | sed 's/^/constraints: 
/' | sed 's/$/ installed/' >> cabal.project.local; done"
-  - cat cabal.project || true
-  - cat cabal.project.local || true
-  # Building with tests and benchmarks...
-  # build & run tests, build benchmarks
-  - ${CABAL} v2-build $WITHCOMPILER ${TEST} ${BENCH} all
-  # HLint..
-  - if [ $HCNUMVER -ge 81000 ] ; then (cd ${PKGDIR_profunctors} && hlint src) 
; fi
-  # cabal check...
-  - (cd ${PKGDIR_profunctors} && ${CABAL} -vnormal check)
-  # haddock...
-  - ${CABAL} v2-haddock $WITHCOMPILER --with-haddock $HADDOCK ${TEST} ${BENCH} 
all
-
-# REGENDATA 
("0.10",["--output=.travis.yml","--config=cabal.haskell-ci","cabal.project"])
-# EOF
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/CHANGELOG.markdown 
new/profunctors-5.6.1/CHANGELOG.markdown
--- old/profunctors-5.6/CHANGELOG.markdown      2001-09-09 03:46:40.000000000 
+0200
+++ new/profunctors-5.6.1/CHANGELOG.markdown    2001-09-09 03:46:40.000000000 
+0200
@@ -1,3 +1,9 @@
+5.6.1 [2020.12.31]
+------------------
+* Add `Functor` instances for `PastroSum`, `CopastroSum`, `Environment`,
+  `FreeMapping`, `Pastro`, `Copastro`, `FreeTraversing`, and `Coyoneda`.
+* Explicitly mark modules as `Safe`.
+
 5.6 [2020.10.01]
 ----------------
 * Enable the `PolyKinds` extension. The following datatypes now have
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/README.markdown 
new/profunctors-5.6.1/README.markdown
--- old/profunctors-5.6/README.markdown 2001-09-09 03:46:40.000000000 +0200
+++ new/profunctors-5.6.1/README.markdown       2001-09-09 03:46:40.000000000 
+0200
@@ -1,7 +1,7 @@
 Profunctors
 ===========
 
-[![Hackage](https://img.shields.io/hackage/v/profunctors.svg)](https://hackage.haskell.org/package/profunctors)
 [![Build 
Status](https://secure.travis-ci.org/ekmett/profunctors.png?branch=master)](http://travis-ci.org/ekmett/profunctors)
+[![Hackage](https://img.shields.io/hackage/v/profunctors.svg)](https://hackage.haskell.org/package/profunctors)
 [![Build 
Status](https://github.com/ekmett/profunctors/workflows/Haskell-CI/badge.svg)](https://github.com/ekmett/profunctors/actions?query=workflow%3AHaskell-CI)
 
 Profunctors for Haskell.
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/profunctors.cabal 
new/profunctors-5.6.1/profunctors.cabal
--- old/profunctors-5.6/profunctors.cabal       2001-09-09 03:46:40.000000000 
+0200
+++ new/profunctors-5.6.1/profunctors.cabal     2001-09-09 03:46:40.000000000 
+0200
@@ -1,6 +1,6 @@
 name:          profunctors
 category:      Control, Categories
-version:       5.6
+version:       5.6.1
 license:       BSD3
 cabal-version: >= 1.10
 license-file:  LICENSE
@@ -25,7 +25,6 @@
   .ghci
   .gitignore
   .hlint.yaml
-  .travis.yml
   .vim.custom
   README.markdown
   CHANGELOG.markdown
@@ -36,17 +35,17 @@
 
 library
   build-depends:
-    base                >= 4.7   && < 5,
-    base-orphans        >= 0.4   && < 0.9,
-    bifunctors          >= 5.2   && < 6,
-    comonad             >= 4     && < 6,
-    contravariant       >= 1     && < 2,
-    distributive        >= 0.4.4 && < 1,
-    tagged              >= 0.4.4 && < 1,
-    transformers        >= 0.2   && < 0.6
+    base                >= 4.7     && < 5,
+    base-orphans        >= 0.8.4   && < 0.9,
+    bifunctors          >= 5.5.9   && < 6,
+    comonad             >= 5.0.8   && < 6,
+    contravariant       >= 1.5.3   && < 2,
+    distributive        >= 0.5.2   && < 1,
+    tagged              >= 0.8.6.1 && < 1,
+    transformers        >= 0.3     && < 0.6
 
   if !impl(ghc >= 8.0)
-    build-depends: semigroups >= 0.11 && < 0.20
+    build-depends: semigroups >= 0.18.5 && < 0.20
 
   exposed-modules:
     Data.Profunctor
@@ -74,6 +73,11 @@
   if impl(ghc >= 8.6)
     ghc-options: -Wno-star-is-type
 
+  if impl(ghc >= 9.0)
+    -- these flags may abort compilation with GHC-8.10
+    -- https://gitlab.haskell.org/ghc/ghc/-/merge_requests/3295
+    ghc-options: -Winferred-safe-imports -Wmissing-safe-haskell-mode
+
   hs-source-dirs:  src
 
   default-language: Haskell2010
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/src/Data/Profunctor/Adjunction.hs 
new/profunctors-5.6.1/src/Data/Profunctor/Adjunction.hs
--- old/profunctors-5.6/src/Data/Profunctor/Adjunction.hs       2001-09-09 
03:46:40.000000000 +0200
+++ new/profunctors-5.6.1/src/Data/Profunctor/Adjunction.hs     2001-09-09 
03:46:40.000000000 +0200
@@ -1,6 +1,7 @@
 {-# LANGUAGE TypeOperators #-}
 {-# LANGUAGE FunctionalDependencies #-}
 {-# LANGUAGE RankNTypes #-}
+{-# LANGUAGE Safe #-}
 -----------------------------------------------------------------------------
 -- |
 -- Copyright   :  (C) 2015 Edward Kmett
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/src/Data/Profunctor/Choice.hs 
new/profunctors-5.6.1/src/Data/Profunctor/Choice.hs
--- old/profunctors-5.6/src/Data/Profunctor/Choice.hs   2001-09-09 
03:46:40.000000000 +0200
+++ new/profunctors-5.6.1/src/Data/Profunctor/Choice.hs 2001-09-09 
03:46:40.000000000 +0200
@@ -3,6 +3,7 @@
 {-# LANGUAGE RankNTypes #-}
 {-# LANGUAGE TypeOperators #-}
 {-# LANGUAGE MultiParamTypeClasses #-}
+{-# LANGUAGE Safe #-}
 -----------------------------------------------------------------------------
 -- |
 -- Copyright   :  (C) 2014-2015 Edward Kmett
@@ -254,6 +255,9 @@
 data PastroSum p a b where
   PastroSum :: (Either y z -> b) -> p x y -> (a -> Either x z) -> PastroSum p 
a b
 
+instance Functor (PastroSum p a) where
+  fmap f (PastroSum l m r) = PastroSum (f . l) m r
+
 instance Profunctor (PastroSum p) where
   dimap f g (PastroSum l m r) = PastroSum (g . l) m (r . f)
   lmap f (PastroSum l m r) = PastroSum l m (r . f)
@@ -424,6 +428,9 @@
 -- 'CopastroSum' freely constructs costrength with respect to 'Either' (aka 
'Choice')
 newtype CopastroSum p a b = CopastroSum { runCopastroSum :: forall r. Cochoice 
r => (forall x y. p x y -> r x y) -> r a b }
 
+instance Functor (CopastroSum p a) where
+  fmap f (CopastroSum h) = CopastroSum $ \ n -> rmap f (h n)
+
 instance Profunctor (CopastroSum p) where
   dimap f g (CopastroSum h) = CopastroSum $ \ n -> dimap f g (h n)
   lmap f (CopastroSum h) = CopastroSum $ \ n -> lmap f (h n)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/src/Data/Profunctor/Closed.hs 
new/profunctors-5.6.1/src/Data/Profunctor/Closed.hs
--- old/profunctors-5.6/src/Data/Profunctor/Closed.hs   2001-09-09 
03:46:40.000000000 +0200
+++ new/profunctors-5.6.1/src/Data/Profunctor/Closed.hs 2001-09-09 
03:46:40.000000000 +0200
@@ -195,6 +195,9 @@
 data Environment p a b where
   Environment :: ((z -> y) -> b) -> p x y -> (a -> z -> x) -> Environment p a b
 
+instance Functor (Environment p a) where
+  fmap f (Environment l m r) = Environment (f . l) m r
+
 instance Profunctor (Environment p) where
   dimap f g (Environment l m r) = Environment (g . l) m (r . f)
   lmap f (Environment l m r) = Environment l m (r . f)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/src/Data/Profunctor/Composition.hs 
new/profunctors-5.6.1/src/Data/Profunctor/Composition.hs
--- old/profunctors-5.6/src/Data/Profunctor/Composition.hs      2001-09-09 
03:46:40.000000000 +0200
+++ new/profunctors-5.6.1/src/Data/Profunctor/Composition.hs    2001-09-09 
03:46:40.000000000 +0200
@@ -5,6 +5,7 @@
 {-# LANGUAGE TypeFamilies #-}
 {-# LANGUAGE TypeOperators #-}
 {-# LANGUAGE UndecidableInstances #-}
+{-# LANGUAGE Safe #-}
 -----------------------------------------------------------------------------
 -- |
 -- Module      :  Data.Profunctor.Composition
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/src/Data/Profunctor/Mapping.hs 
new/profunctors-5.6.1/src/Data/Profunctor/Mapping.hs
--- old/profunctors-5.6/src/Data/Profunctor/Mapping.hs  2001-09-09 
03:46:40.000000000 +0200
+++ new/profunctors-5.6.1/src/Data/Profunctor/Mapping.hs        2001-09-09 
03:46:40.000000000 +0200
@@ -2,6 +2,7 @@
 {-# LANGUAGE GADTs #-}
 {-# LANGUAGE RankNTypes #-}
 {-# LANGUAGE DeriveFunctor #-}
+{-# LANGUAGE Safe #-}
 -----------------------------------------------------------------------------
 -- |
 -- Copyright   :  (C) 2015-2018 Edward Kmett
@@ -141,6 +142,9 @@
 data FreeMapping p a b where
   FreeMapping :: Functor f => (f y -> b) -> p x y -> (a -> f x) -> FreeMapping 
p a b
 
+instance Functor (FreeMapping p a) where
+  fmap f (FreeMapping l m r) = FreeMapping (f . l) m r
+
 instance Profunctor (FreeMapping p) where
   lmap f (FreeMapping l m r) = FreeMapping l m (r . f)
   rmap g (FreeMapping l m r) = FreeMapping (g . l) m r
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/src/Data/Profunctor/Monad.hs 
new/profunctors-5.6.1/src/Data/Profunctor/Monad.hs
--- old/profunctors-5.6/src/Data/Profunctor/Monad.hs    2001-09-09 
03:46:40.000000000 +0200
+++ new/profunctors-5.6.1/src/Data/Profunctor/Monad.hs  2001-09-09 
03:46:40.000000000 +0200
@@ -2,6 +2,7 @@
 {-# LANGUAGE PolyKinds #-}
 {-# LANGUAGE RankNTypes #-}
 {-# LANGUAGE TypeOperators #-}
+{-# LANGUAGE Safe #-}
 -----------------------------------------------------------------------------
 -- |
 -- Copyright   :  (C) 2014-2015 Edward Kmett
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/src/Data/Profunctor/Ran.hs 
new/profunctors-5.6.1/src/Data/Profunctor/Ran.hs
--- old/profunctors-5.6/src/Data/Profunctor/Ran.hs      2001-09-09 
03:46:40.000000000 +0200
+++ new/profunctors-5.6.1/src/Data/Profunctor/Ran.hs    2001-09-09 
03:46:40.000000000 +0200
@@ -2,6 +2,7 @@
 {-# LANGUAGE RankNTypes #-}
 {-# LANGUAGE TypeFamilies #-}
 {-# LANGUAGE TypeOperators #-}
+{-# LANGUAGE Safe #-}
 -----------------------------------------------------------------------------
 -- |
 -- Copyright   :  (C) 2013-2015 Edward Kmett and Dan Doel
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/src/Data/Profunctor/Rep.hs 
new/profunctors-5.6.1/src/Data/Profunctor/Rep.hs
--- old/profunctors-5.6/src/Data/Profunctor/Rep.hs      2001-09-09 
03:46:40.000000000 +0200
+++ new/profunctors-5.6.1/src/Data/Profunctor/Rep.hs    2001-09-09 
03:46:40.000000000 +0200
@@ -7,6 +7,7 @@
 {-# LANGUAGE TypeFamilies #-}
 {-# LANGUAGE TypeOperators #-}
 {-# LANGUAGE UndecidableInstances #-}
+{-# LANGUAGE Safe #-}
 -----------------------------------------------------------------------------
 -- |
 -- Module      :  Data.Profunctor.Rep
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/src/Data/Profunctor/Strong.hs 
new/profunctors-5.6.1/src/Data/Profunctor/Strong.hs
--- old/profunctors-5.6/src/Data/Profunctor/Strong.hs   2001-09-09 
03:46:40.000000000 +0200
+++ new/profunctors-5.6.1/src/Data/Profunctor/Strong.hs 2001-09-09 
03:46:40.000000000 +0200
@@ -3,6 +3,7 @@
 {-# LANGUAGE RankNTypes #-}
 {-# LANGUAGE TypeOperators #-}
 {-# LANGUAGE MultiParamTypeClasses #-}
+{-# LANGUAGE Safe #-}
 
 -----------------------------------------------------------------------------
 -- |
@@ -272,6 +273,9 @@
 data Pastro p a b where
   Pastro :: ((y, z) -> b) -> p x y -> (a -> (x, z)) -> Pastro p a b
 
+instance Functor (Pastro p a) where
+  fmap f (Pastro l m r) = Pastro (f . l) m r
+
 instance Profunctor (Pastro p) where
   dimap f g (Pastro l m r) = Pastro (g . l) m (r . f)
   lmap f (Pastro l m r) = Pastro l m (r . f)
@@ -444,6 +448,9 @@
 -- Copastro freely constructs costrength
 newtype Copastro p a b = Copastro { runCopastro :: forall r. Costrong r => 
(forall x y. p x y -> r x y) -> r a b }
 
+instance Functor (Copastro p a) where
+  fmap f (Copastro h) = Copastro $ \ n -> rmap f (h n)
+
 instance Profunctor (Copastro p) where
   dimap f g (Copastro h) = Copastro $ \ n -> dimap f g (h n)
   lmap f (Copastro h) = Copastro $ \ n -> lmap f (h n)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/src/Data/Profunctor/Traversing.hs 
new/profunctors-5.6.1/src/Data/Profunctor/Traversing.hs
--- old/profunctors-5.6/src/Data/Profunctor/Traversing.hs       2001-09-09 
03:46:40.000000000 +0200
+++ new/profunctors-5.6.1/src/Data/Profunctor/Traversing.hs     2001-09-09 
03:46:40.000000000 +0200
@@ -2,6 +2,7 @@
 {-# LANGUAGE GADTs #-}
 {-# LANGUAGE RankNTypes #-}
 {-# LANGUAGE DeriveFunctor #-}
+{-# LANGUAGE Safe #-}
 module Data.Profunctor.Traversing
   ( Traversing(..)
   , CofreeTraversing(..)
@@ -168,6 +169,9 @@
 data FreeTraversing p a b where
   FreeTraversing :: Traversable f => (f y -> b) -> p x y -> (a -> f x) -> 
FreeTraversing p a b
 
+instance Functor (FreeTraversing p a) where
+  fmap f (FreeTraversing l m r) = FreeTraversing (f . l) m r
+
 instance Profunctor (FreeTraversing p) where
   lmap f (FreeTraversing l m r) = FreeTraversing l m (r . f)
   rmap g (FreeTraversing l m r) = FreeTraversing (g . l) m r
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/src/Data/Profunctor/Yoneda.hs 
new/profunctors-5.6.1/src/Data/Profunctor/Yoneda.hs
--- old/profunctors-5.6/src/Data/Profunctor/Yoneda.hs   2001-09-09 
03:46:40.000000000 +0200
+++ new/profunctors-5.6.1/src/Data/Profunctor/Yoneda.hs 2001-09-09 
03:46:40.000000000 +0200
@@ -155,6 +155,9 @@
 joinCoyoneda :: Coyoneda (Coyoneda p) a b -> Coyoneda p a b
 joinCoyoneda (Coyoneda l r p) = dimap l r p
 
+instance Functor (Coyoneda p a) where
+  fmap f (Coyoneda l r' p) = Coyoneda l (f . r') p
+
 instance Profunctor (Coyoneda p) where
   dimap l r (Coyoneda l' r' p) = Coyoneda (l' . l) (r . r') p
   {-# INLINE dimap #-}
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/profunctors-5.6/src/Data/Profunctor.hs 
new/profunctors-5.6.1/src/Data/Profunctor.hs
--- old/profunctors-5.6/src/Data/Profunctor.hs  2001-09-09 03:46:40.000000000 
+0200
+++ new/profunctors-5.6.1/src/Data/Profunctor.hs        2001-09-09 
03:46:40.000000000 +0200
@@ -1,3 +1,4 @@
+{-# LANGUAGE Safe #-}
 -----------------------------------------------------------------------------
 -- |
 -- Copyright   :  (C) 2011-2015 Edward Kmett,

Reply via email to