osc copypac from project:devel:languages:haskell:ghc-8.10.x package:ghc-psqueues revision:10, using keep-link
OBS-URL: https://build.opensuse.org/package/show/devel:languages:haskell/ghc-psqueues?expand=0&rev=11
This commit is contained in:
parent
e11dffa1e5
commit
32c6e4cfe4
@ -1,3 +1,13 @@
|
||||
-------------------------------------------------------------------
|
||||
Sat Nov 6 20:32:59 UTC 2021 - psimons@suse.com
|
||||
|
||||
- Update psqueues to version 0.2.7.3.
|
||||
# CHANGELOG
|
||||
|
||||
- 0.2.7.3 (2021-11-05)
|
||||
* Relax hashable, tasty and QuickCheck upper bounds
|
||||
* Bump Cabal-version to 1.10
|
||||
|
||||
-------------------------------------------------------------------
|
||||
Thu Dec 17 12:20:00 UTC 2020 - Ondřej Súkup <mimi.vx@gmail.com>
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
#
|
||||
# spec file for package ghc-psqueues
|
||||
#
|
||||
# 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
|
||||
@ -19,13 +19,12 @@
|
||||
%global pkg_name psqueues
|
||||
%bcond_with tests
|
||||
Name: ghc-%{pkg_name}
|
||||
Version: 0.2.7.2
|
||||
Version: 0.2.7.3
|
||||
Release: 0
|
||||
Summary: Pure priority search queues
|
||||
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-deepseq-devel
|
||||
BuildRequires: ghc-hashable-devel
|
||||
@ -93,7 +92,6 @@ This package provides the Haskell %{pkg_name} library development files.
|
||||
|
||||
%prep
|
||||
%autosetup -n %{pkg_name}-%{version}
|
||||
cp -p %{SOURCE1} %{pkg_name}.cabal
|
||||
|
||||
%build
|
||||
%ghc_lib_build
|
||||
|
@ -1,3 +0,0 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:26263b555d943f9b18bbebda6a090848fdba3c1b403a9b7c848f6bac99e893f9
|
||||
size 27455
|
3
psqueues-0.2.7.3.tar.gz
Normal file
3
psqueues-0.2.7.3.tar.gz
Normal file
@ -0,0 +1,3 @@
|
||||
version https://git-lfs.github.com/spec/v1
|
||||
oid sha256:d09750ba3578d905b54d0b3a60a7b468910a60b3165e5de98bf6f4efae3ebfb2
|
||||
size 27328
|
158
psqueues.cabal
158
psqueues.cabal
@ -1,158 +0,0 @@
|
||||
Name: psqueues
|
||||
Version: 0.2.7.2
|
||||
x-revision: 1
|
||||
License: BSD3
|
||||
License-file: LICENSE
|
||||
Maintainer: Jasper Van der Jeugt <jaspervdj@gmail.com>
|
||||
Bug-reports: https://github.com/jaspervdj/psqueues/issues
|
||||
Synopsis: Pure priority search queues
|
||||
Category: Data Structures
|
||||
Build-type: Simple
|
||||
Cabal-version: >=1.8
|
||||
|
||||
Description:
|
||||
The psqueues package provides
|
||||
<http://en.wikipedia.org/wiki/Priority_queue Priority Search Queues> in
|
||||
three different flavors.
|
||||
.
|
||||
* @OrdPSQ k p v@, which uses the @Ord k@ instance to provide fast insertion,
|
||||
deletion and lookup. This implementation is based on Ralf Hinze's
|
||||
<http://citeseer.ist.psu.edu/hinze01simple.html A Simple Implementation Technique for Priority Search Queues>.
|
||||
Hence, it is similar to the
|
||||
<http://hackage.haskell.org/package/PSQueue PSQueue> library, although it is
|
||||
considerably faster and provides a slightly different API.
|
||||
.
|
||||
* @IntPSQ p v@ is a far more efficient implementation. It fixes the key type
|
||||
to @Int@ and uses a <http://en.wikipedia.org/wiki/Radix_tree radix tree>
|
||||
(like @IntMap@) with an additional min-heap property.
|
||||
.
|
||||
* @HashPSQ k p v@ is a fairly straightforward extension of @IntPSQ@: it
|
||||
simply uses the keys' hashes as indices in the @IntPSQ@. If there are any
|
||||
hash collisions, it uses an @OrdPSQ@ to resolve those. The performance of
|
||||
this implementation is comparable to that of @IntPSQ@, but it is more widely
|
||||
applicable since the keys are not restricted to @Int@, but rather to any
|
||||
@Hashable@ datatype.
|
||||
.
|
||||
Each of the three implementations provides the same API, so they can be used
|
||||
interchangeably. The benchmarks show how they perform relative to one
|
||||
another, and also compared to the other Priority Search Queue
|
||||
implementations on Hackage:
|
||||
<http://hackage.haskell.org/package/PSQueue PSQueue>
|
||||
and
|
||||
<http://hackage.haskell.org/package/fingertree-psqueue fingertree-psqueue>.
|
||||
.
|
||||
<<http://i.imgur.com/KmbDKR6.png>>
|
||||
.
|
||||
<<http://i.imgur.com/ClT181D.png>>
|
||||
.
|
||||
Typical applications of Priority Search Queues include:
|
||||
.
|
||||
* Caches, and more specifically LRU Caches;
|
||||
.
|
||||
* Schedulers;
|
||||
.
|
||||
* Pathfinding algorithms, such as Dijkstra's and A*.
|
||||
|
||||
Extra-source-files:
|
||||
CHANGELOG
|
||||
|
||||
Source-repository head
|
||||
type: git
|
||||
location: http://github.com/jaspervdj/psqueues.git
|
||||
|
||||
Library
|
||||
Ghc-options: -O2 -Wall
|
||||
Hs-source-dirs: src
|
||||
other-extensions: CPP, Safe, Trustworthy
|
||||
|
||||
Build-depends:
|
||||
base >= 4.2 && < 5
|
||||
, deepseq >= 1.2 && < 1.5
|
||||
, hashable >= 1.1.2.3 && < 1.4
|
||||
|
||||
if impl(ghc>=6.10)
|
||||
Build-depends: ghc-prim
|
||||
|
||||
Exposed-modules:
|
||||
Data.HashPSQ
|
||||
Data.IntPSQ
|
||||
Data.OrdPSQ
|
||||
Other-modules:
|
||||
Data.BitUtil
|
||||
Data.HashPSQ.Internal
|
||||
Data.IntPSQ.Internal
|
||||
Data.OrdPSQ.Internal
|
||||
|
||||
Benchmark psqueues-benchmarks
|
||||
Type: exitcode-stdio-1.0
|
||||
Hs-source-dirs: src benchmarks
|
||||
Main-is: Main.hs
|
||||
Ghc-options: -Wall
|
||||
|
||||
Other-modules:
|
||||
BenchmarkTypes
|
||||
Data.BitUtil
|
||||
Data.FingerTree.PSQueue.Benchmark
|
||||
Data.HashPSQ
|
||||
Data.HashPSQ.Benchmark
|
||||
Data.HashPSQ.Internal
|
||||
Data.IntPSQ
|
||||
Data.IntPSQ.Benchmark
|
||||
Data.IntPSQ.Internal
|
||||
Data.OrdPSQ
|
||||
Data.OrdPSQ.Benchmark
|
||||
Data.OrdPSQ.Internal
|
||||
Data.PSQueue.Benchmark
|
||||
|
||||
Build-depends:
|
||||
containers >= 0.5
|
||||
, unordered-containers >= 0.2.4
|
||||
, criterion >= 0.8
|
||||
, mtl >= 2.1
|
||||
, fingertree-psqueue >= 0.3
|
||||
, PSQueue >= 1.1
|
||||
, random >= 1.0
|
||||
|
||||
, base
|
||||
, deepseq
|
||||
, ghc-prim
|
||||
, hashable
|
||||
, psqueues
|
||||
|
||||
Test-suite psqueues-tests
|
||||
Cpp-options: -DTESTING -DSTRICT
|
||||
Ghc-options: -Wall
|
||||
Hs-source-dirs: src tests
|
||||
Main-is: Main.hs
|
||||
Type: exitcode-stdio-1.0
|
||||
|
||||
Other-modules:
|
||||
Data.BitUtil
|
||||
Data.HashPSQ
|
||||
Data.HashPSQ.Internal
|
||||
Data.HashPSQ.Tests
|
||||
Data.IntPSQ
|
||||
Data.IntPSQ.Internal
|
||||
Data.IntPSQ.Tests
|
||||
Data.OrdPSQ
|
||||
Data.OrdPSQ.Internal
|
||||
Data.OrdPSQ.Tests
|
||||
Data.PSQ.Class
|
||||
Data.PSQ.Class.Gen
|
||||
Data.PSQ.Class.Tests
|
||||
Data.PSQ.Class.Util
|
||||
|
||||
Build-depends:
|
||||
HUnit >= 1.2 && < 1.7
|
||||
, QuickCheck >= 2.7 && < 2.14
|
||||
, tasty >= 1.2 && < 1.3
|
||||
, tasty-hunit >= 0.9 && < 0.11
|
||||
, tasty-quickcheck >= 0.8 && < 0.11
|
||||
|
||||
, base
|
||||
, array
|
||||
, deepseq
|
||||
, ghc-prim
|
||||
, hashable
|
||||
, psqueues
|
||||
, tagged
|
Loading…
x
Reference in New Issue
Block a user