summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCoprDistGit <infra@openeuler.org>2023-10-30 08:48:54 +0000
committerCoprDistGit <infra@openeuler.org>2023-10-30 08:48:54 +0000
commite80cdd7caa63c8b9f59b527563bbe38965cf29ef (patch)
tree597a3407adfb0f5b6df4632ce2dbab48d1b8b355
parent8c5c9555bbcb18951157f13757dcdb503193559e (diff)
automatic import of ghc-semigroupoidsopeneuler23.09
-rw-r--r--.gitignore1
-rw-r--r--ghc-semigroupoids.spec136
-rwxr-xr-xsemigroupoids.cabal216
-rw-r--r--sources1
4 files changed, 354 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..4b8c8e9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/semigroupoids-5.3.7.tar.gz
diff --git a/ghc-semigroupoids.spec b/ghc-semigroupoids.spec
new file mode 100644
index 0000000..16af724
--- /dev/null
+++ b/ghc-semigroupoids.spec
@@ -0,0 +1,136 @@
+%global pkg_name semigroupoids
+%global pkgver %{pkg_name}-%{version}
+
+Name: ghc-%{pkg_name}
+Version: 5.3.7
+Release: 1
+Summary: Semigroupoids: Category sans id
+License: BSD-2-Clause
+URL: https://hackage.haskell.org/package/%{pkg_name}
+Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz
+Source1: https://hackage.haskell.org/package/%{pkg_name}-%{version}/revision/1.cabal#/%{pkg_name}.cabal
+BuildRequires: ghc-Cabal-devel
+BuildRequires: ghc-base-devel
+BuildRequires: ghc-base-orphans-devel
+BuildRequires: ghc-base-orphans-prof
+BuildRequires: ghc-base-prof
+BuildRequires: ghc-bifunctors-devel
+BuildRequires: ghc-bifunctors-prof
+BuildRequires: ghc-comonad-devel
+BuildRequires: ghc-comonad-prof
+BuildRequires: ghc-containers-devel
+BuildRequires: ghc-containers-prof
+BuildRequires: ghc-contravariant-devel
+BuildRequires: ghc-contravariant-prof
+BuildRequires: ghc-distributive-devel
+BuildRequires: ghc-distributive-prof
+BuildRequires: ghc-hashable-devel
+BuildRequires: ghc-hashable-prof
+BuildRequires: ghc-rpm-macros
+BuildRequires: ghc-tagged-devel
+BuildRequires: ghc-tagged-prof
+BuildRequires: ghc-template-haskell-devel
+BuildRequires: ghc-template-haskell-prof
+BuildRequires: ghc-transformers-compat-devel
+BuildRequires: ghc-transformers-compat-prof
+BuildRequires: ghc-transformers-devel
+BuildRequires: ghc-transformers-prof
+BuildRequires: ghc-unordered-containers-devel
+BuildRequires: ghc-unordered-containers-prof
+ExcludeArch: %{ix86}
+
+%description
+Provides a wide array of (semi)groupoids and operations for working with them.
+
+A 'Semigroupoid' is a 'Category' without the requirement of identity arrows for
+every object in the category.
+
+A 'Category' is any 'Semigroupoid' for which the Yoneda lemma holds.
+
+When working with comonads you often have the '<*>' portion of an
+'Applicative', but not the 'pure'. This was captured in Uustalu and Vene's
+"Essence of Dataflow Programming" in the form of the 'ComonadZip' class in the
+days before 'Applicative'. Apply provides a weaker invariant, but for the
+comonads used for data flow programming (found in the streams package), this
+invariant is preserved. Applicative function composition forms a semigroupoid.
+
+Similarly many structures are nearly a comonad, but not quite, for instance
+lists provide a reasonable 'extend' operation in the form of 'tails', but do
+not always contain a value.
+
+We describe the relationships between the type classes defined in this package
+and those from `base` (and some from `contravariant`) in the diagram below.
+Thick-bordered nodes correspond to type classes defined in this package;
+thin-bordered ones correspond to type classes from elsewhere. Solid edges
+indicate a subclass relationship that actually exists; dashed edges indicate a
+subclass relationship that /should/ exist, but currently doesn't.
+
+<<https://raw.githubusercontent.com/ekmett/semigroupoids/master/img/classes.svg
+Relationships among type classes from this package and others>>
+
+Apply, Bind, and Extend (not shown) give rise the Static, Kleisli and Cokleisli
+semigroupoids respectively.
+
+This lets us remove many of the restrictions from various monad transformers as
+in many cases the binding operation or '<*>' operation does not require them.
+
+Finally, to work with these weaker structures it is beneficial to have
+containers that can provide stronger guarantees about their contents, so
+versions of 'Traversable' and 'Foldable' that can be folded with just a
+'Semigroup' are added.
+
+%package devel
+Summary: Haskell %{pkg_name} library development files
+Requires: %{name} = %{version}-%{release}
+Requires: ghc-compiler = %{ghc_version}
+Requires(post): ghc-compiler = %{ghc_version}
+Requires(postun): ghc-compiler = %{ghc_version}
+
+%description devel
+This package provides the Haskell %{pkg_name} library development files.
+
+%package -n ghc-%{pkg_name}-help
+Summary: Haskell %{pkg_name} library documentation
+BuildArch: noarch
+
+%description -n ghc-%{pkg_name}-help
+This package provides the Haskell %{pkg_name} library documentation.
+
+%package -n ghc-%{pkg_name}-prof
+Summary: Haskell %{pkg_name} profiling library
+Requires: ghc-%{pkg_name}-devel = %{version}-%{release}
+Supplements: (ghc-%{pkg_name}-devel and ghc-prof)
+
+%description -n ghc-%{pkg_name}-prof
+This package provides the Haskell %{pkg_name} profiling library.
+
+%prep
+%autosetup -n %{pkg_name}-%{version}
+cp -p %{SOURCE1} %{pkg_name}.cabal
+
+%build
+%ghc_lib_build
+
+%install
+%ghc_lib_install
+
+%post devel
+%ghc_pkg_recache
+
+%postun devel
+%ghc_pkg_recache
+
+%files -f %{name}.files
+%license LICENSE
+
+%files devel -f %{name}-devel.files
+%doc CHANGELOG.markdown README.markdown
+
+%files -n ghc-%{pkg_name}-help -f ghc-%{pkg_name}-help.files
+%license LICENSE
+
+%files -n ghc-%{pkg_name}-prof -f ghc-%{pkg_name}-prof.files
+
+%changelog
+* Thu Sep 28 2023 Lin Runze <lrzlin@163.com> 5.3.7-1
+- Initial packaging (Version 5.3.7)
diff --git a/semigroupoids.cabal b/semigroupoids.cabal
new file mode 100755
index 0000000..35c29c6
--- /dev/null
+++ b/semigroupoids.cabal
@@ -0,0 +1,216 @@
+name: semigroupoids
+category: Control, Comonads
+version: 5.3.7
+x-revision: 1
+license: BSD2
+cabal-version: 1.18
+license-file: LICENSE
+author: Edward A. Kmett
+maintainer: Edward A. Kmett <ekmett@gmail.com>
+stability: provisional
+homepage: http://github.com/ekmett/semigroupoids
+bug-reports: http://github.com/ekmett/semigroupoids/issues
+copyright: Copyright (C) 2011-2015 Edward A. Kmett
+tested-with: GHC == 7.0.4
+ , GHC == 7.2.2
+ , GHC == 7.4.2
+ , GHC == 7.6.3
+ , GHC == 7.8.4
+ , GHC == 7.10.3
+ , GHC == 8.0.2
+ , GHC == 8.2.2
+ , GHC == 8.4.4
+ , GHC == 8.6.5
+ , GHC == 8.8.4
+ , GHC == 8.10.4
+ , GHC == 9.0.1
+build-type: Simple
+synopsis: Semigroupoids: Category sans id
+extra-source-files:
+ .gitignore
+ .vim.custom
+ README.markdown
+ CHANGELOG.markdown
+ img/classes.dot
+extra-doc-files:
+ img/classes.svg
+
+description:
+ Provides a wide array of (semi)groupoids and operations for working with them.
+ .
+ A 'Semigroupoid' is a 'Category' without the requirement of identity arrows for every object in the category.
+ .
+ A 'Category' is any 'Semigroupoid' for which the Yoneda lemma holds.
+ .
+ When working with comonads you often have the @\<*\>@ portion of an @Applicative@, but
+ not the @pure@. This was captured in Uustalu and Vene's \"Essence of Dataflow Programming\"
+ in the form of the @ComonadZip@ class in the days before @Applicative@. Apply provides a weaker invariant, but for the comonads used for data flow programming (found in the streams package), this invariant is preserved. Applicative function composition forms a semigroupoid.
+ .
+ Similarly many structures are nearly a comonad, but not quite, for instance lists provide a reasonable 'extend' operation in the form of 'tails', but do not always contain a value.
+ .
+ We describe the relationships between the type classes defined in this package
+ and those from `base` (and some from `contravariant`) in the diagram below.
+ Thick-bordered nodes correspond to type classes defined in this package;
+ thin-bordered ones correspond to type classes from elsewhere. Solid edges
+ indicate a subclass relationship that actually exists; dashed edges indicate a
+ subclass relationship that /should/ exist, but currently doesn't.
+ .
+ <<https://raw.githubusercontent.com/ekmett/semigroupoids/master/img/classes.svg Relationships among type classes from this package and others>>
+ .
+ Apply, Bind, and Extend (not shown) give rise the Static, Kleisli and Cokleisli semigroupoids respectively.
+ .
+ This lets us remove many of the restrictions from various monad transformers
+ as in many cases the binding operation or @\<*\>@ operation does not require them.
+ .
+ Finally, to work with these weaker structures it is beneficial to have containers
+ that can provide stronger guarantees about their contents, so versions of 'Traversable'
+ and 'Foldable' that can be folded with just a 'Semigroup' are added.
+
+source-repository head
+ type: git
+ location: git://github.com/ekmett/semigroupoids.git
+
+flag containers
+ description:
+ You can disable the use of the `containers` package using `-f-containers`.
+ .
+ Disabing this is an unsupported configuration, but it may be useful for accelerating builds in sandboxes for expert users.
+ default: True
+ manual: True
+
+flag contravariant
+ description:
+ You can disable the use of the `contravariant` package using `-f-contravariant`.
+ .
+ Disabling this is an unsupported configuration, but it may be useful for accelerating builds in sandboxes for expert users.
+ .
+ If disabled we will not supply instances of `Contravariant`
+ .
+ default: True
+ manual: True
+
+flag distributive
+ description:
+ You can disable the use of the `distributive` package using `-f-distributive`.
+ .
+ Disabling this is an unsupported configuration, but it may be useful for accelerating builds in sandboxes for expert users.
+ .
+ If disabled we will not supply instances of `Distributive`
+ .
+ default: True
+ manual: True
+
+flag comonad
+ description:
+ You can disable the use of the `comonad` package using `-f-comonad`.
+ .
+ Disabling this is an unsupported configuration, but it may be useful for accelerating builds in sandboxes for expert users.
+ .
+ If disabled we will not supply instances of `Comonad`
+ .
+ default: True
+ manual: True
+
+flag tagged
+ description:
+ You can disable the use of the `tagged` package using `-f-tagged`.
+ .
+ Disabling this is an unsupported configuration, but it may be useful for accelerating builds in sandboxes for expert users.
+ default: True
+ manual: True
+
+flag unordered-containers
+ description:
+ You can disable the use of the `unordered-containers` package (and also its dependency `hashable`) using `-f-unordered-containers`.
+ .
+ Disabling this is an unsupported configuration, but it may be useful for accelerating builds in sandboxes for expert users.
+ default: True
+ manual: True
+
+library
+ build-depends:
+ base >= 4.3 && < 4.18,
+ base-orphans >= 0.8.4 && < 1,
+ bifunctors >= 5.5.9 && < 6,
+ template-haskell >= 0.2.5.0,
+ transformers >= 0.3 && < 0.7,
+ transformers-compat >= 0.5 && < 0.8
+
+ if impl(ghc >= 7.0 && < 7.2)
+ build-depends: generic-deriving >= 1.14 && < 1.15
+
+ if impl(ghc >= 7.2 && < 7.6)
+ build-depends: ghc-prim
+
+ if !impl(ghc >= 7.10)
+ build-depends: void >= 0.4 && < 1
+
+ if !impl(ghc >= 8.0)
+ build-depends: semigroups >= 0.18.5 && < 1
+
+ if flag(containers)
+ build-depends: containers >= 0.3 && < 0.7
+
+ if flag(contravariant)
+ build-depends: contravariant >= 1.5.3 && < 2
+
+ if flag(distributive)
+ build-depends: distributive >= 0.5.2 && < 1
+
+ if flag(comonad)
+ build-depends: comonad >= 5.0.8 && < 6
+
+ if flag(tagged)
+ build-depends: tagged >= 0.8.6.1 && < 1
+
+ if flag(unordered-containers)
+ if impl(ghc >= 7.4)
+ build-depends: hashable >= 1.2.7.0 && < 1.5,
+ unordered-containers >= 0.2.8.0 && < 0.3
+ else
+ build-depends: hashable >= 1.2.5.0 && < 1.5,
+ unordered-containers >= 0.2.8.0 && < 0.3
+
+ hs-source-dirs: src
+
+ exposed-modules:
+ Data.Bifunctor.Apply
+ Data.Functor.Alt
+ Data.Functor.Apply
+ Data.Functor.Bind
+ Data.Functor.Bind.Class
+ Data.Functor.Bind.Trans
+ Data.Functor.Contravariant.Conclude
+ Data.Functor.Contravariant.Decide
+ Data.Functor.Contravariant.Divise
+ Data.Functor.Extend
+ Data.Functor.Plus
+ Data.Groupoid
+ Data.Isomorphism
+ Data.Semigroup.Bifoldable
+ Data.Semigroup.Bitraversable
+ Data.Semigroup.Foldable
+ Data.Semigroup.Foldable.Class
+ Data.Semigroup.Traversable
+ Data.Semigroup.Traversable.Class
+ Data.Semigroupoid
+ Data.Semigroupoid.Categorical
+ Data.Semigroupoid.Dual
+ Data.Semigroupoid.Ob
+ Data.Semigroupoid.Static
+ Data.Traversable.Instances
+ Semigroupoids.Do
+ other-modules:
+ Semigroupoids.Internal
+
+ ghc-options: -Wall -fno-warn-warnings-deprecations
+
+ if impl(ghc >= 7.10)
+ ghc-options: -fno-warn-trustworthy-safe
+
+ 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
+
+ default-language: Haskell2010
diff --git a/sources b/sources
new file mode 100644
index 0000000..6bc329f
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+ad1cb3d716db7bc180dfde60babedb5d semigroupoids-5.3.7.tar.gz