packages feed

papa-base-implement 0.3.0 → 0.3.1

raw patch · 7 files changed

+99/−191 lines, 7 filesdep −QuickCheckdep −directorydep −doctestdep ~basedep ~papa-base-exportsetup-changed

Dependencies removed: QuickCheck, directory, doctest, filepath, template-haskell

Dependency ranges changed: base, papa-base-export

Files

+ LICENCE view
@@ -0,0 +1,77 @@+CSIRO Open Source Software License Agreement (variation of the BSD / MIT+License)++Copyright (c) 2016, Commonwealth Scientific and Industrial Research Organisation+(CSIRO) ABN 41 687 119 230.++All rights reserved. CSIRO is willing to grant you a license to this+aemo-webservice on the following terms, except where otherwise indicated for+third party material.++Redistribution and use of this software in source and binary forms, with or+without modification, are permitted provided that the following conditions are+met:++* Redistributions of source code must retain the above copyright notice, this+  list of conditions and the following disclaimer.++* Redistributions in binary form must reproduce the above copyright notice, this+  list of conditions and the following disclaimer in the documentation and/or+  other materials provided with the distribution.++* Neither the name of CSIRO nor the names of its contributors may be used to+  endorse or promote products derived from this software without specific prior+  written permission of CSIRO.++EXCEPT AS EXPRESSLY STATED IN THIS AGREEMENT AND TO THE FULL EXTENT PERMITTED BY+APPLICABLE LAW, THE SOFTWARE IS PROVIDED "AS-IS". CSIRO MAKES NO+REPRESENTATIONS, WARRANTIES OR CONDITIONS OF ANY KIND, EXPRESS OR IMPLIED,+INCLUDING BUT NOT LIMITED TO ANY REPRESENTATIONS, WARRANTIES OR CONDITIONS+REGARDING THE CONTENTS OR ACCURACY OF THE SOFTWARE, OR OF TITLE,+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, THE ABSENCE+OF LATENT OR OTHER DEFECTS, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT+DISCOVERABLE.++TO THE FULL EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL CSIRO BE+LIABLE ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, IN AN ACTION FOR+BREACH OF CONTRACT, NEGLIGENCE OR OTHERWISE) FOR ANY CLAIM, LOSS, DAMAGES OR+OTHER LIABILITY HOWSOEVER INCURRED.  WITHOUT LIMITING THE SCOPE OF THE PREVIOUS+SENTENCE THE EXCLUSION OF LIABILITY SHALL INCLUDE: LOSS OF PRODUCTION OR+OPERATION TIME, LOSS, DAMAGE OR CORRUPTION OF DATA OR RECORDS; OR LOSS OF+ANTICIPATED SAVINGS, OPPORTUNITY, REVENUE, PROFIT OR GOODWILL, OR OTHER ECONOMIC+LOSS; OR ANY SPECIAL, INCIDENTAL, INDIRECT, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY+DAMAGES, ARISING OUT OF OR IN CONNECTION WITH THIS AGREEMENT, ACCESS OF THE+SOFTWARE OR ANY OTHER DEALINGS WITH THE SOFTWARE, EVEN IF CSIRO HAS BEEN ADVISED+OF THE POSSIBILITY OF SUCH CLAIM, LOSS, DAMAGES OR OTHER LIABILITY.++APPLICABLE LEGISLATION SUCH AS THE AUSTRALIAN CONSUMER LAW MAY APPLY+REPRESENTATIONS, WARRANTIES, OR CONDITIONS, OR IMPOSES OBLIGATIONS OR LIABILITY+ON CSIRO THAT CANNOT BE EXCLUDED, RESTRICTED OR MODIFIED TO THE FULL EXTENT SET+OUT IN THE EXPRESS TERMS OF THIS CLAUSE ABOVE "CONSUMER GUARANTEES".  TO THE+EXTENT THAT SUCH CONSUMER GUARANTEES CONTINUE TO APPLY, THEN TO THE FULL EXTENT+PERMITTED BY THE APPLICABLE LEGISLATION, THE LIABILITY OF CSIRO UNDER THE+RELEVANT CONSUMER GUARANTEE IS LIMITED (WHERE PERMITTED AT CSIRO'S OPTION) TO+ONE OF FOLLOWING REMEDIES OR SUBSTANTIALLY EQUIVALENT REMEDIES:++(a)               THE REPLACEMENT OF THE SOFTWARE, THE SUPPLY OF EQUIVALENT+                  SOFTWARE, OR SUPPLYING RELEVANT SERVICES AGAIN;+(b)               THE REPAIR OF THE SOFTWARE;+(c)               THE PAYMENT OF THE COST OF REPLACING THE+                  SOFTWARE, OF ACQUIRING EQUIVALENT SOFTWARE, HAVING THE+                  RELEVANT SERVICES SUPPLIED AGAIN, OR HAVING THE SOFTWARE+                  REPAIRED.++IN THIS CLAUSE, CSIRO INCLUDES ANY THIRD PARTY AUTHOR OR OWNER OF ANY PART OF+THE SOFTWARE OR MATERIAL DISTRIBUTED WITH IT.  CSIRO MAY ENFORCE ANY RIGHTS ON+BEHALF OF THE RELEVANT THIRD PARTY.++Third Party Components++The following third party components are distributed with the Software.  You+agree to comply with the license terms for these components as part of accessing+the Software.  Other third party software may also be identified in separate+files distributed with the Software.++___________________________________________________________________++___________________________________________________________________
− LICENSE
@@ -1,77 +0,0 @@-CSIRO Open Source Software License Agreement (variation of the BSD / MIT-License)--Copyright (c) 2016, Commonwealth Scientific and Industrial Research Organisation-(CSIRO) ABN 41 687 119 230.--All rights reserved. CSIRO is willing to grant you a license to this-aemo-webservice on the following terms, except where otherwise indicated for-third party material.--Redistribution and use of this software in source and binary forms, with or-without modification, are permitted provided that the following conditions are-met:--* Redistributions of source code must retain the above copyright notice, this-  list of conditions and the following disclaimer.--* Redistributions in binary form must reproduce the above copyright notice, this-  list of conditions and the following disclaimer in the documentation and/or-  other materials provided with the distribution.--* Neither the name of CSIRO nor the names of its contributors may be used to-  endorse or promote products derived from this software without specific prior-  written permission of CSIRO.--EXCEPT AS EXPRESSLY STATED IN THIS AGREEMENT AND TO THE FULL EXTENT PERMITTED BY-APPLICABLE LAW, THE SOFTWARE IS PROVIDED "AS-IS". CSIRO MAKES NO-REPRESENTATIONS, WARRANTIES OR CONDITIONS OF ANY KIND, EXPRESS OR IMPLIED,-INCLUDING BUT NOT LIMITED TO ANY REPRESENTATIONS, WARRANTIES OR CONDITIONS-REGARDING THE CONTENTS OR ACCURACY OF THE SOFTWARE, OR OF TITLE,-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, THE ABSENCE-OF LATENT OR OTHER DEFECTS, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT-DISCOVERABLE.--TO THE FULL EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL CSIRO BE-LIABLE ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, IN AN ACTION FOR-BREACH OF CONTRACT, NEGLIGENCE OR OTHERWISE) FOR ANY CLAIM, LOSS, DAMAGES OR-OTHER LIABILITY HOWSOEVER INCURRED.  WITHOUT LIMITING THE SCOPE OF THE PREVIOUS-SENTENCE THE EXCLUSION OF LIABILITY SHALL INCLUDE: LOSS OF PRODUCTION OR-OPERATION TIME, LOSS, DAMAGE OR CORRUPTION OF DATA OR RECORDS; OR LOSS OF-ANTICIPATED SAVINGS, OPPORTUNITY, REVENUE, PROFIT OR GOODWILL, OR OTHER ECONOMIC-LOSS; OR ANY SPECIAL, INCIDENTAL, INDIRECT, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY-DAMAGES, ARISING OUT OF OR IN CONNECTION WITH THIS AGREEMENT, ACCESS OF THE-SOFTWARE OR ANY OTHER DEALINGS WITH THE SOFTWARE, EVEN IF CSIRO HAS BEEN ADVISED-OF THE POSSIBILITY OF SUCH CLAIM, LOSS, DAMAGES OR OTHER LIABILITY.--APPLICABLE LEGISLATION SUCH AS THE AUSTRALIAN CONSUMER LAW MAY APPLY-REPRESENTATIONS, WARRANTIES, OR CONDITIONS, OR IMPOSES OBLIGATIONS OR LIABILITY-ON CSIRO THAT CANNOT BE EXCLUDED, RESTRICTED OR MODIFIED TO THE FULL EXTENT SET-OUT IN THE EXPRESS TERMS OF THIS CLAUSE ABOVE "CONSUMER GUARANTEES".  TO THE-EXTENT THAT SUCH CONSUMER GUARANTEES CONTINUE TO APPLY, THEN TO THE FULL EXTENT-PERMITTED BY THE APPLICABLE LEGISLATION, THE LIABILITY OF CSIRO UNDER THE-RELEVANT CONSUMER GUARANTEE IS LIMITED (WHERE PERMITTED AT CSIRO'S OPTION) TO-ONE OF FOLLOWING REMEDIES OR SUBSTANTIALLY EQUIVALENT REMEDIES:--(a)               THE REPLACEMENT OF THE SOFTWARE, THE SUPPLY OF EQUIVALENT-                  SOFTWARE, OR SUPPLYING RELEVANT SERVICES AGAIN;-(b)               THE REPAIR OF THE SOFTWARE;-(c)               THE PAYMENT OF THE COST OF REPLACING THE-                  SOFTWARE, OF ACQUIRING EQUIVALENT SOFTWARE, HAVING THE-                  RELEVANT SERVICES SUPPLIED AGAIN, OR HAVING THE SOFTWARE-                  REPAIRED.--IN THIS CLAUSE, CSIRO INCLUDES ANY THIRD PARTY AUTHOR OR OWNER OF ANY PART OF-THE SOFTWARE OR MATERIAL DISTRIBUTED WITH IT.  CSIRO MAY ENFORCE ANY RIGHTS ON-BEHALF OF THE RELEVANT THIRD PARTY.--Third Party Components--The following third party components are distributed with the Software.  You-agree to comply with the license terms for these components as part of accessing-the Software.  Other third party software may also be identified in separate-files distributed with the Software.--___________________________________________________________________--___________________________________________________________________
+ Setup.hs view
@@ -0,0 +1,2 @@+import Distribution.Simple+main = defaultMain
− Setup.lhs
@@ -1,44 +0,0 @@-#!/usr/bin/env runhaskell-\begin{code}-{-# OPTIONS_GHC -Wall #-}-module Main (main) where--import Data.List ( nub )-import Data.Version ( showVersion )-import Distribution.Package ( PackageName(PackageName), PackageId, InstalledPackageId, packageVersion, packageName )-import Distribution.PackageDescription ( PackageDescription(), TestSuite(..) )-import Distribution.Simple ( defaultMainWithHooks, UserHooks(..), simpleUserHooks )-import Distribution.Simple.Utils ( rewriteFile, createDirectoryIfMissingVerbose )-import Distribution.Simple.BuildPaths ( autogenModulesDir )-import Distribution.Simple.Setup ( BuildFlags(buildVerbosity), fromFlag )-import Distribution.Simple.LocalBuildInfo ( withLibLBI, withTestLBI, LocalBuildInfo(), ComponentLocalBuildInfo(componentPackageDeps) )-import Distribution.Verbosity ( Verbosity )-import System.FilePath ( (</>) )--main :: IO ()-main = defaultMainWithHooks simpleUserHooks-  { buildHook = \pkg lbi hooks flags -> do-     generateBuildModule (fromFlag (buildVerbosity flags)) pkg lbi-     buildHook simpleUserHooks pkg lbi hooks flags-  }--generateBuildModule :: Verbosity -> PackageDescription -> LocalBuildInfo -> IO ()-generateBuildModule verbosity pkg lbi = do-  let dir = autogenModulesDir lbi-  createDirectoryIfMissingVerbose verbosity True dir-  withLibLBI pkg lbi $ \_ libcfg -> do-    withTestLBI pkg lbi $ \suite suitecfg -> do-      rewriteFile (dir </> "Build_" ++ testName suite ++ ".hs") $ unlines-        [ "module Build_" ++ testName suite ++ " where"-        , "deps :: [String]"-        , "deps = " ++ (show $ formatdeps (testDeps libcfg suitecfg))-        ]-  where-    formatdeps = map (formatone . snd)-    formatone p = case packageName p of-      PackageName n -> n ++ "-" ++ showVersion (packageVersion p)--testDeps :: ComponentLocalBuildInfo -> ComponentLocalBuildInfo -> [(InstalledPackageId, PackageId)]-testDeps xs ys = nub $ componentPackageDeps xs ++ componentPackageDeps ys--\end{code}
papa-base-implement.cabal view
@@ -1,7 +1,7 @@ name:               papa-base-implement-version:            0.3.0+version:            0.3.1 license:            BSD3-license-file:       LICENSE+license-file:       LICENCE author:             Queensland Functional Programming Lab <oᴉ˙ldɟb@llǝʞsɐɥ> maintainer:         Queensland Functional Programming Lab <oᴉ˙ldɟb@llǝʞsɐɥ> copyright:          Copyright (c) 2017, Commonwealth Scientific and Industrial Research Organisation (CSIRO) ABN 41 687 119 230.@@ -14,7 +14,7 @@ homepage:           https://github.com/qfpl/papa bug-reports:        https://github.com/qfpl/papa/issues cabal-version:      >= 1.10-build-type:         Custom+build-type:         Simple extra-source-files: changelog.md  source-repository   head@@ -31,7 +31,7 @@   build-depends:                     base >= 4.8 && < 5                   , semigroups >= 0.18-                  , papa-base-export >= 0.3.0 && < 1+                  , papa-base-export >= 0.3.1 && < 1                      ghc-options:                     -Wall@@ -52,28 +52,3 @@                     Papa.Base.Implement.Data.List                     Papa.Base.Implement.Data.Monoid                     Papa.Base.Implement.Data.Traversable-                    -test-suite doctests-  type:-                    exitcode-stdio-1.0--  main-is:-                    doctests.hs--  default-language:-                    Haskell2010--  build-depends:-                    base < 5 && >= 3-                    , doctest >= 0.9.7-                    , filepath >= 1.3-                    , directory >= 1.1-                    , QuickCheck >= 2.0-                    , template-haskell >= 2.8--  ghc-options:-                    -Wall-                    -threaded--  hs-source-dirs:-                    test
src/Papa/Base/Implement.hs view
@@ -1,14 +1,21 @@ {-# LANGUAGE NoImplicitPrelude #-}  module Papa.Base.Implement(-  module P+    module Papa.Base.Implement.Control.Applicative,+    module Papa.Base.Implement.Control.Monad,+    module Papa.Base.Implement.Data.Foldable,+    module Papa.Base.Implement.Data.Functor,+    module Papa.Base.Implement.Data.Function,+    module Papa.Base.Implement.Data.List,+    module Papa.Base.Implement.Data.Monoid,+    module Papa.Base.Implement.Data.Traversable ) where -import Papa.Base.Implement.Control.Applicative as P-import Papa.Base.Implement.Control.Monad as P-import Papa.Base.Implement.Data.Foldable as P-import Papa.Base.Implement.Data.Functor as P-import Papa.Base.Implement.Data.Function as P-import Papa.Base.Implement.Data.List as P-import Papa.Base.Implement.Data.Monoid as P-import Papa.Base.Implement.Data.Traversable as P+import Papa.Base.Implement.Control.Applicative+import Papa.Base.Implement.Control.Monad+import Papa.Base.Implement.Data.Foldable+import Papa.Base.Implement.Data.Functor+import Papa.Base.Implement.Data.Function+import Papa.Base.Implement.Data.List+import Papa.Base.Implement.Data.Monoid+import Papa.Base.Implement.Data.Traversable
− test/doctests.hs
@@ -1,32 +0,0 @@-module Main where--import Build_doctests (deps)-import Control.Applicative-import Control.Monad-import Data.List-import System.Directory-import System.FilePath-import Test.DocTest--main ::-  IO ()-main =-  getSources >>= \sources -> doctest $-      "-isrc"-    : "-idist/build/autogen"-    : "-optP-include"-    : "-optPdist/build/autogen/cabal_macros.h"-    : "-hide-all-packages"-    : map ("-package="++) deps ++ sources--getSources :: IO [FilePath]-getSources = filter (isSuffixOf ".hs") <$> go "src"-  where-    go dir = do-      (dirs, files) <- getFilesAndDirectories dir-      (files ++) . concat <$> mapM go dirs--getFilesAndDirectories :: FilePath -> IO ([FilePath], [FilePath])-getFilesAndDirectories dir = do-  c <- map (dir </>) . filter (`notElem` ["..", "."]) <$> getDirectoryContents dir-  (,) <$> filterM doesDirectoryExist c <*> filterM doesFileExist c