无法在Data.Time.Format中找到defaultTimeLocale

时间:2015-06-21 11:57:42

标签: haskell cabal

根据Hackage上的docData.Time.Format曝光defaultTimeLocal。 但是,当我尝试使用它时,它不会退出。

当我查看代码时,它似乎也没有公开(如果我从源代码生成文档,我就不会看到这个defaultTimeLocale)。是因为它需要使用一些标志进行编译,或者hackage上的黑线鳕是错误的。

我在哪里可以获得TimeLocale的实例?

更新

我在OSX上使用time版本1.5.0.1。 以下代码

import Data.Time.Format (defaultTimeLocale)

错误

Module ‘Data.Time.Format’ does not export ‘defaultTimeLocale’

更新

实际上我使用的是版本1.4.2,但没有安装defaultTimeLocale。 我升级到1.5.0.1 ...

更新

我删除了我的沙箱,重建了一切。它现在正在工作。

2 个答案:

答案 0 :(得分:3)

出于某种原因,cabal没有使用我认为它的版本(1.5),但是(1.4)可能来自haskell平台。 Uprading修复了问题。

答案 1 :(得分:1)

对于其他想要使用向后兼容的time依赖项编写库的人来说,您可以使用CPP编译指示和#if来检查时间库的最低版本:< / p>

{-# Language CPP #-}
#if MIN_VERSION_time(1,5,0)
import Data.Time.Format (defaultTimeLocale)
#else
import System.Locale (defaultTimeLocale)
#endif