1
0

osc copypac from project:devel:languages:haskell:ghc-9.4.x package:ghc-reflection revision:6, using keep-link

OBS-URL: https://build.opensuse.org/package/show/devel:languages:haskell/ghc-reflection?expand=0&rev=34
This commit is contained in:
Peter Simons 2023-03-30 08:26:47 +00:00 committed by Git OBS Bridge
parent 81e9b3d067
commit fe6edfb59b
5 changed files with 49 additions and 134 deletions

View File

@ -1,3 +1,12 @@
-------------------------------------------------------------------
Tue Feb 28 12:10:22 UTC 2023 - Peter Simons <psimons@suse.com>
- Update reflection to version 2.1.7.
# 2.1.7 [2023.02.28]
* When building with `base-4.18` (GHC 9.6) or later, implement `reifyNat` and
`reifySymbol` using the API provided by `GHC.TypeLits` instead of resorting
to `unsafeCoerce`.
-------------------------------------------------------------------
Tue Feb 15 08:02:33 UTC 2022 - Peter Simons <psimons@suse.com>

View File

@ -1,7 +1,7 @@
#
# spec file for package ghc-reflection
#
# Copyright (c) 2022 SUSE LLC
# Copyright (c) 2023 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -17,23 +17,29 @@
%global pkg_name reflection
%global pkgver %{pkg_name}-%{version}
%bcond_with tests
Name: ghc-%{pkg_name}
Version: 2.1.6
Version: 2.1.7
Release: 0
Summary: Reifies arbitrary terms into types that can be reflected back into terms
License: BSD-3-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-prof
BuildRequires: ghc-rpm-macros
BuildRequires: ghc-template-haskell-devel
BuildRequires: ghc-template-haskell-prof
ExcludeArch: %{ix86}
%if %{with tests}
BuildRequires: ghc-QuickCheck-devel
BuildRequires: ghc-QuickCheck-prof
BuildRequires: ghc-containers-devel
BuildRequires: ghc-containers-prof
BuildRequires: ghc-hspec-devel
BuildRequires: ghc-hspec-prof
%endif
%description
@ -47,11 +53,17 @@ That package is an implementation of the ideas presented in the paper
Shan (<http://okmij.org/ftp/Haskell/tr-15-04.pdf original paper>).
However, the API has been streamlined to improve performance.
Austin Seipp's tutorial
There are a handful of tutorials on how to use this library:
* Austin Seipp's tutorial
<https://www.schoolofhaskell.com/user/thoughtpolice/using-reflection Reflecting
values to types and back> provides a summary of the approach taken by this
library, along with more motivating examples.
* Arnaud Spiwack's tutorial
<https://www.tweag.io/posts/2017-12-21-reflection-tutorial.html All about
reflection> explains how to use this library.
%package devel
Summary: Haskell %{pkg_name} library development files
Requires: %{name} = %{version}-%{release}
@ -62,9 +74,24 @@ Requires(postun): ghc-compiler = %{ghc_version}
%description devel
This package provides the Haskell %{pkg_name} library development files.
%package -n ghc-%{pkg_name}-doc
Summary: Haskell %{pkg_name} library documentation
Requires: ghc-filesystem
BuildArch: noarch
%description -n ghc-%{pkg_name}-doc
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
find . -type f -exec chmod -x {} +
%build
@ -88,4 +115,9 @@ find . -type f -exec chmod -x {} +
%files devel -f %{name}-devel.files
%doc CHANGELOG.markdown README.markdown examples
%files -n ghc-%{pkg_name}-doc -f ghc-%{pkg_name}-doc.files
%license LICENSE
%files -n ghc-%{pkg_name}-prof -f ghc-%{pkg_name}-prof.files
%changelog

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:bf3e14917ebb329a53701a3cce0afe670f20037a0148dbfa5cbfa574ed6ba6cd
size 19976

3
reflection-2.1.7.tar.gz Normal file
View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6cbb18a8b02871533bb8b641dc6f76813a097d94404e5808bb5d52b0f0e415fd
size 17823

View File

@ -1,126 +0,0 @@
name: reflection
version: 2.1.6
x-revision: 1
license: BSD3
license-file: LICENSE
author: Edward A. Kmett, Elliott Hird, Oleg Kiselyov and Chung-chieh Shan
maintainer: Edward A. Kmett <ekmett@gmail.com>
stability: experimental
homepage: http://github.com/ekmett/reflection
bug-reports: http://github.com/ekmett/reflection/issues
category: Data, Reflection, Dependent Types
synopsis: Reifies arbitrary terms into types that can be reflected back into terms
copyright: 2009-2013 Edward A. Kmett,
2012 Elliott Hird,
2004 Oleg Kiselyov and Chung-chieh Shan
build-type: Simple
cabal-version: >= 1.10
description:
This package addresses the /configuration problem/ which is
propagating configurations that are available at run-time, allowing
multiple configurations to coexist without resorting to mutable
global variables or 'System.IO.Unsafe.unsafePerformIO'.
.
That package is an implementation of the ideas presented in the
paper \"Functional Pearl: Implicit Configurations\" by Oleg Kiselyov
and Chung-chieh Shan (<http://okmij.org/ftp/Haskell/tr-15-04.pdf original paper>).
However, the API has been streamlined to improve performance.
.
Austin Seipp's tutorial <https://www.schoolofhaskell.com/user/thoughtpolice/using-reflection Reflecting values to types and back> provides a summary of the
approach taken by this library, along with more motivating examples.
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.3
, GHC == 8.10.1
extra-source-files:
examples/reflection-examples.cabal
examples/LICENSE
examples/*.hs
CHANGELOG.markdown
README.markdown
slow/Data/Reflection.hs
fast/Data/Reflection.hs
.travis.yml
flag slow
description:
If you enable this flag, we use a more portable much much slower implementation. Moreover, the 'Given' API is broken, so this is currently an unsupported configuration. If you feel the need to turn on this flag for any reason, please email the maintainer!
default: False
manual: False
flag template-haskell
description:
You can disable the use of the `template-haskell` package using `-f-template-haskell`.
.
Disabling this is an unsupported configuration, but it may be useful for accelerating builds in sandboxes for expert users.
default: True
manual: True
source-repository head
type: git
location: git://github.com/ekmett/reflection.git
library
ghc-options: -Wall
if impl(ghc >= 7.2)
default-extensions: Trustworthy
build-depends:
base >= 2 && < 5
if impl(ghc < 7.8)
build-depends:
tagged >= 0.4.4 && < 1
if !impl(ghc >= 8.0)
build-depends:
semigroups >= 0.11 && < 0.21
default-language: Haskell98
if flag(template-haskell) && impl(ghc)
if !impl(ghc >= 8.0)
other-extensions: TemplateHaskell
-- else
-- other-extensions: TemplateHaskellQuotes -- Hackage doesn't know this extension yet
build-depends: template-haskell
if !flag(slow) && (impl(ghc) || impl(hugs))
hs-source-dirs: fast
else
other-extensions: ScopedTypeVariables, FlexibleInstances
hs-source-dirs: slow
other-extensions:
MultiParamTypeClasses,
FunctionalDependencies,
Rank2Types,
CPP
exposed-modules: Data.Reflection
test-suite spec
type: exitcode-stdio-1.0
hs-source-dirs: tests
main-is: Spec.hs
other-modules: ReifyNatSpec
T47Spec
ghc-options: -Wall
default-language: Haskell98
build-tool-depends: hspec-discover:hspec-discover >= 1.8
build-depends:
base >= 2 && < 5,
containers >= 0.1 && < 0.7,
hspec >= 2 && < 3,
QuickCheck >= 2 && < 3,
reflection