packages feed

twentyseven-1.0.0: twentyseven.cabal

name:                twentyseven
version:             1.0.0
synopsis:            Rubik's cube solver
description:
  Solve 3×3×3 Rubik's cubes in the fewest possible moves. Or, if you can't
  wait, get /close enough/ with the two-phase solver.
homepage:            https://github.com/lysxia/twentyseven
license:             MIT
license-file:        LICENSE
author:              Li-yao Xia
maintainer:          lysxia@gmail.com
category:            Algorithms
build-type:          Simple
extra-doc-files:     README.md, CHANGELOG.md
cabal-version:       2.0
tested-with:
  GHC == 8.6.5, GHC == 9.12.2

source-repository head
  type:     git
  location: https://github.com/lysxia/twentyseven

library
  exposed-modules:
    Data.Binary.Storable
    Data.Tuple.Extra
    Data.Vector.Generic.Mutable.Loops
    Data.Vector.Storable.Allocated
    Data.MBitVector
    Data.Vector.HalfByte
    Rubik.Cube
    Rubik.Cube.Facelet
    Rubik.Cube.Facelet.Internal
    Rubik.Cube.Coord
    Rubik.Cube.Cubie
    Rubik.Cube.Cubie.Internal
    Rubik.Cube.Moves
    Rubik.Cube.Moves.Internal
    Rubik.Tables.Distances
    Rubik.Tables.Moves
    Rubik.Tables.Internal
    Rubik.Distances
    Rubik.IDA
    Rubik.Misc
    Rubik.Solver
    Rubik.Solver.Optimal
    Rubik.Solver.TwoPhase
    Rubik.Symmetry
  other-modules:
    Data.Tuple.Template
  other-extensions:
    DeriveFunctor
    FlexibleInstances
    FlexibleContexts
    MagicHash
    MultiParamTypeClasses
    RecordWildCards
    ScopedTypeVariables
    TemplateHaskell
    TypeFamilies
    TypeOperators
    ViewPatterns
  build-depends:
    base >=4.8 && <5,
    deepseq < 1.7,
    directory < 1.4,
    filepath < 1.6,
    heap >=1.0 && < 1.1,
    primitive >=0.6 && < 0.10,
    vector >=0.10 && < 0.14,
    containers >=0.5 && < 0.9,
    monad-loops >= 0.4 && < 0.5,
    MonadRandom >= 0.4.2.2 && < 0.7,
    mtl >= 2.1 && < 2.4,
    newtype >= 0.2 && < 0.3,
    ref-fd >=0.4 && < 0.6,
    template-haskell < 2.24
  hs-source-dirs:      src
  default-language:    Haskell2010
  ghc-options:         -fwarn-unused-imports

executable twentyseven
  main-is:             twentyseven.hs
  hs-source-dirs:      exec-src
  other-extensions:
    NamedFieldPuns
    RecordWildCards
  build-depends:
    base >=4.8 && <5,
    optparse-applicative < 0.20,
    time <1.15,
    transformers < 0.7,
    twentyseven
  default-language:    Haskell2010
  ghc-options: -Wall

Test-Suite test-twentyseven
  type: exitcode-stdio-1.0
  hs-source-dirs: test
  main-is: Test.hs
  other-extensions:
    LambdaCase
  build-depends:
    base >=4.8,
    QuickCheck >=2.8,
    tagged >= 0.8.9,
    tasty,
    tasty-quickcheck,
    tasty-hunit,
    split,
    vector,
    twentyseven
  default-language: Haskell2010
  ghc-options: -Wall -Wno-name-shadowing -Wno-missing-signatures -Wno-unused-top-binds