Hello community, here is the log from the commit of package ghc-log-domain for openSUSE:Factory checked in at 2017-07-05 23:59:04 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-log-domain (Old) and /work/SRC/openSUSE:Factory/.ghc-log-domain.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-log-domain" Wed Jul 5 23:59:04 2017 rev:2 rq:506810 version:0.11.1 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-log-domain/ghc-log-domain.changes 2017-04-11 12:45:24.744481313 +0200 +++ /work/SRC/openSUSE:Factory/.ghc-log-domain.new/ghc-log-domain.changes 2017-07-05 23:59:05.734677855 +0200 @@ -1,0 +2,5 @@ +Mon Jun 19 21:01:52 UTC 2017 - [email protected] + +- Update to version 0.11.1. + +------------------------------------------------------------------- Old: ---- log-domain-0.11.tar.gz New: ---- log-domain-0.11.1.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-log-domain.spec ++++++ --- /var/tmp/diff_new_pack.7XTx3z/_old 2017-07-05 23:59:06.390585457 +0200 +++ /var/tmp/diff_new_pack.7XTx3z/_new 2017-07-05 23:59:06.394584893 +0200 @@ -19,7 +19,7 @@ %global pkg_name log-domain %bcond_with tests Name: ghc-%{pkg_name} -Version: 0.11 +Version: 0.11.1 Release: 0 Summary: Log-domain arithmetic License: BSD-2-Clause @@ -29,6 +29,7 @@ BuildRequires: ghc-Cabal-devel BuildRequires: ghc-binary-devel BuildRequires: ghc-bytes-devel +BuildRequires: ghc-cabal-doctest-devel BuildRequires: ghc-cereal-devel BuildRequires: ghc-comonad-devel BuildRequires: ghc-deepseq-devel @@ -41,9 +42,7 @@ BuildRequires: ghc-vector-devel BuildRoot: %{_tmppath}/%{name}-%{version}-build %if %{with tests} -BuildRequires: ghc-directory-devel BuildRequires: ghc-doctest-devel -BuildRequires: ghc-filepath-devel BuildRequires: ghc-generic-deriving-devel BuildRequires: ghc-simple-reflect-devel %endif ++++++ log-domain-0.11.tar.gz -> log-domain-0.11.1.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/log-domain-0.11/.gitignore new/log-domain-0.11.1/.gitignore --- old/log-domain-0.11/.gitignore 2017-01-26 03:49:55.000000000 +0100 +++ new/log-domain-0.11.1/.gitignore 2017-06-15 20:25:29.000000000 +0200 @@ -1,6 +1,7 @@ .cabal-sandbox cabal.sandbox.config dist +dist-newstyle docs wiki TAGS diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/log-domain-0.11/.travis.yml new/log-domain-0.11.1/.travis.yml --- old/log-domain-0.11/.travis.yml 2017-01-26 03:49:55.000000000 +0100 +++ new/log-domain-0.11.1/.travis.yml 2017-06-15 20:25:29.000000000 +0200 @@ -13,15 +13,15 @@ matrix: include: - - env: CABALVER=1.18 GHCVER=7.4.2 + - env: CABALVER=1.24 GHCVER=7.4.2 compiler: ": #GHC 7.4.2" - addons: {apt: {packages: [cabal-install-1.18,ghc-7.4.2,hlint], sources: [hvr-ghc]}} - - env: CABALVER=1.18 GHCVER=7.6.3 + addons: {apt: {packages: [cabal-install-1.24,ghc-7.4.2,hlint], sources: [hvr-ghc]}} + - env: CABALVER=1.24 GHCVER=7.6.3 compiler: ": #GHC 7.6.3" - addons: {apt: {packages: [cabal-install-1.18,ghc-7.6.3,hlint], sources: [hvr-ghc]}} - - env: CABALVER=1.18 GHCVER=7.8.4 + addons: {apt: {packages: [cabal-install-1.24,ghc-7.6.3,hlint], sources: [hvr-ghc]}} + - env: CABALVER=1.24 GHCVER=7.8.4 compiler: ": #GHC 7.8.4" - addons: {apt: {packages: [cabal-install-1.18,ghc-7.8.4,hlint], sources: [hvr-ghc]}} + addons: {apt: {packages: [cabal-install-1.24,ghc-7.8.4,hlint], sources: [hvr-ghc]}} - env: CABALVER=1.24 GHCVER=7.10.3 compiler: ": #GHC 7.10.3" addons: {apt: {packages: [cabal-install-1.24,ghc-7.10.3,hlint], sources: [hvr-ghc]}} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/log-domain-0.11/CHANGELOG.markdown new/log-domain-0.11.1/CHANGELOG.markdown --- old/log-domain-0.11/CHANGELOG.markdown 2017-01-26 03:49:55.000000000 +0100 +++ new/log-domain-0.11.1/CHANGELOG.markdown 2017-06-15 20:25:29.000000000 +0200 @@ -1,3 +1,9 @@ +0.11.1 +------ +* Revamp `Setup.hs` to use `cabal-doctest`. This makes it build + with `Cabal-2.0`, and makes the `doctest`s work with `cabal new-build` and + sandboxes. + 0.11 ---- * Replace use of `Hashable1` from `hashable-extras` in favor of `Hashable` from diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/log-domain-0.11/Setup.lhs new/log-domain-0.11.1/Setup.lhs --- old/log-domain-0.11/Setup.lhs 2017-01-26 03:49:55.000000000 +0100 +++ new/log-domain-0.11.1/Setup.lhs 2017-06-15 20:25:29.000000000 +0200 @@ -1,59 +1,34 @@ -#!/usr/bin/runhaskell \begin{code} +{-# LANGUAGE CPP #-} {-# OPTIONS_GHC -Wall #-} module Main (main) where -import Data.List ( nub ) -import Data.Version ( showVersion ) -import Distribution.Package ( PackageName(PackageName), Package, PackageId, InstalledPackageId, packageVersion, packageName ) -import Distribution.PackageDescription ( PackageDescription(), TestSuite(..) ) -import Distribution.Simple ( defaultMainWithHooks, UserHooks(..), simpleUserHooks ) -import Distribution.Simple.Utils ( rewriteFile, createDirectoryIfMissingVerbose, copyFiles ) -import Distribution.Simple.BuildPaths ( autogenModulesDir ) -import Distribution.Simple.Setup ( BuildFlags(buildVerbosity), Flag(..), fromFlag, HaddockFlags(haddockDistPref)) -import Distribution.Simple.LocalBuildInfo ( withLibLBI, withTestLBI, LocalBuildInfo(), ComponentLocalBuildInfo(componentPackageDeps) ) -import Distribution.Text ( display ) -import Distribution.Verbosity ( Verbosity, normal ) -import System.FilePath ( (</>) ) +#ifndef MIN_VERSION_cabal_doctest +#define MIN_VERSION_cabal_doctest(x,y,z) 0 +#endif + +#if MIN_VERSION_cabal_doctest(1,0,0) + +import Distribution.Extra.Doctest ( defaultMainWithDoctests ) +main :: IO () +main = defaultMainWithDoctests "doctests" + +#else + +#ifdef MIN_VERSION_Cabal +-- If the macro is defined, we have new cabal-install, +-- but for some reason we don't have cabal-doctest in package-db +-- +-- Probably we are running cabal sdist, when otherwise using new-build +-- workflow +import Warning () +#endif + +import Distribution.Simple main :: IO () -main = defaultMainWithHooks simpleUserHooks - { buildHook = \pkg lbi hooks flags -> do - generateBuildModule (fromFlag (buildVerbosity flags)) pkg lbi - buildHook simpleUserHooks pkg lbi hooks flags - , postHaddock = \args flags pkg lbi -> do - copyFiles normal (haddockOutputDir flags pkg) [] - postHaddock simpleUserHooks args flags pkg lbi - } - -haddockOutputDir :: Package p => HaddockFlags -> p -> FilePath -haddockOutputDir flags pkg = destDir where - baseDir = case haddockDistPref flags of - NoFlag -> "." - Flag x -> x - destDir = baseDir </> "doc" </> "html" </> display (packageName pkg) - -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" - , "" - , "autogen_dir :: String" - , "autogen_dir = " ++ show dir - , "" - , "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) +main = defaultMain -testDeps :: ComponentLocalBuildInfo -> ComponentLocalBuildInfo -> [(InstalledPackageId, PackageId)] -testDeps xs ys = nub $ componentPackageDeps xs ++ componentPackageDeps ys +#endif \end{code} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/log-domain-0.11/Warning.hs new/log-domain-0.11.1/Warning.hs --- old/log-domain-0.11/Warning.hs 1970-01-01 01:00:00.000000000 +0100 +++ new/log-domain-0.11.1/Warning.hs 2017-06-15 20:25:29.000000000 +0200 @@ -0,0 +1,5 @@ +module Warning + {-# WARNING ["You are configuring this package without cabal-doctest installed.", + "The doctests test-suite will not work as a result.", + "To fix this, install cabal-doctest before configuring."] #-} + () where diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/log-domain-0.11/log-domain.cabal new/log-domain-0.11.1/log-domain.cabal --- old/log-domain-0.11/log-domain.cabal 2017-01-26 03:49:55.000000000 +0100 +++ new/log-domain-0.11.1/log-domain.cabal 2017-06-15 20:25:29.000000000 +0200 @@ -1,6 +1,6 @@ name: log-domain category: Numeric -version: 0.11 +version: 0.11.1 license: BSD3 cabal-version: >= 1.8 license-file: LICENSE @@ -26,10 +26,17 @@ README.markdown CHANGELOG.markdown HLint.hs + Warning.hs source-repository head type: git - location: git://github.com/analytics/log-domain.git + location: https://github.com/analytics/log-domain + +custom-setup + setup-depends: + base >= 4 && < 5, + Cabal, + cabal-doctest >= 1 && < 1.1 -- You can disable the doctests test suite with -f-test-doctests flag test-doctests @@ -78,9 +85,7 @@ else build-depends: base, - directory >= 1.0, - doctest >= 0.9.1, - filepath, + doctest >= 0.11.1 && < 0.12, generic-deriving, semigroups >= 0.9, simple-reflect >= 0.3.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/log-domain-0.11/tests/doctests.hs new/log-domain-0.11.1/tests/doctests.hs --- old/log-domain-0.11/tests/doctests.hs 1970-01-01 01:00:00.000000000 +0100 +++ new/log-domain-0.11.1/tests/doctests.hs 2017-06-15 20:25:29.000000000 +0200 @@ -0,0 +1,25 @@ +----------------------------------------------------------------------------- +-- | +-- Module : Main (doctests) +-- Copyright : (C) 2012-14 Edward Kmett +-- License : BSD-style (see the file LICENSE) +-- Maintainer : Edward Kmett <[email protected]> +-- Stability : provisional +-- Portability : portable +-- +-- This module provides doctests for a project based on the actual versions +-- of the packages it was built with. It requires a corresponding Setup.lhs +-- to be added to the project +----------------------------------------------------------------------------- +module Main where + +import Build_doctests (flags, pkgs, module_sources) +import Data.Foldable (traverse_) +import Test.DocTest + +main :: IO () +main = do + traverse_ putStrLn args + doctest args + where + args = flags ++ pkgs ++ module_sources diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/log-domain-0.11/tests/doctests.hsc new/log-domain-0.11.1/tests/doctests.hsc --- old/log-domain-0.11/tests/doctests.hsc 2017-01-26 03:49:55.000000000 +0100 +++ new/log-domain-0.11.1/tests/doctests.hsc 1970-01-01 01:00:00.000000000 +0100 @@ -1,73 +0,0 @@ -{-# LANGUAGE CPP #-} -{-# LANGUAGE ForeignFunctionInterface #-} ------------------------------------------------------------------------------ --- | --- Module : Main (doctests) --- Copyright : (C) 2012-13 Edward Kmett --- License : BSD-style (see the file LICENSE) --- Maintainer : Edward Kmett <[email protected]> --- Stability : provisional --- Portability : portable --- --- This module provides doctests for a project based on the actual versions --- of the packages it was built with. It requires a corresponding Setup.lhs --- to be added to the project ------------------------------------------------------------------------------ -module Main where - -import Build_doctests (autogen_dir, deps) -import Control.Applicative -import Control.Monad -import Data.List -import System.Directory -import System.FilePath -import Test.DocTest - -##if defined(mingw32_HOST_OS) -##if defined(i386_HOST_ARCH) -##define USE_CP -import Control.Applicative -import Control.Exception -import Foreign.C.Types -foreign import stdcall "windows.h SetConsoleCP" c_SetConsoleCP :: CUInt -> IO Bool -foreign import stdcall "windows.h GetConsoleCP" c_GetConsoleCP :: IO CUInt -##elif defined(x86_64_HOST_ARCH) -##define USE_CP -import Control.Applicative -import Control.Exception -import Foreign.C.Types -foreign import ccall "windows.h SetConsoleCP" c_SetConsoleCP :: CUInt -> IO Bool -foreign import ccall "windows.h GetConsoleCP" c_GetConsoleCP :: IO CUInt -##endif -##endif - --- | Run in a modified codepage where we can print UTF-8 values on Windows. -withUnicode :: IO a -> IO a -##ifdef USE_CP -withUnicode m = do - cp <- c_GetConsoleCP - (c_SetConsoleCP 65001 >> m) `finally` c_SetConsoleCP cp -##else -withUnicode m = m -##endif - -main :: IO () -main = withUnicode $ getSources >>= \sources -> doctest $ - "-isrc" - : ("-i" ++ autogen_dir) - : "-optP-include" - : ("-optP" ++ autogen_dir ++ "/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
