on 0fe4b25 help sign in
2 files changed+8−25
since splitsnapshots
unifiedsplit
id.cabal+4−14 src/Data/Id.hs+4−11
id.cabal+4−14
@@ -23,12 +23,6 @@ flag store
2323 default: False
2424 manual: False
2525
26−flag uuid-impl
27− description: Include some functions with extra dependencies.
28− Disable to reduce dependencies.
29− default: True
30− manual: False
31−
3226library
3327 exposed-modules: Data.Id
3428 build-depends:
@@ -41,24 +35,20 @@ library
4135 , lens
4236 , path-pieces
4337 , text
44− , uuid-types
45− if flag(uuid-impl)
46− build-depends:
47− , uuid >=1.3.9
48− cpp-options: -DUSE_UUID
38+ , uuid >=1.3.9
4939
50− if !(impl(ghcjs) || arch(javascript) || arch(wasm32))
40+ if !(impl(ghcjs) || arch(javascript))
5141 build-depends:
5242 , openapi3
5343 , QuickCheck
5444
5545 cpp-options: -DBACKEND
5646
57− if (flag(postgres) && !(impl(ghcjs) || arch(javascript) || arch(wasm32)))
47+ if (flag(postgres) && !(impl(ghcjs) || arch(javascript)))
5848 build-depends: postgresql-simple
5949 cpp-options: -DUSE_POSTGRES
6050
61− if (flag(cassava) && !(impl(ghcjs) || arch(javascript) || arch(wasm32)))
51+ if (flag(cassava) && !(impl(ghcjs) || arch(javascript)))
6252 build-depends: cassava
6353 cpp-options: -DUSE_CASSAVA
6454
src/Data/Id.hs+4−11
@@ -4,12 +4,9 @@
44{-# OPTIONS_GHC -Wno-orphans #-}
55
66module Data.Id
7− ( Id, mkId, unId, unsafeIdTagConvert, coerceId, _Id, nilId
7+ ( Id, mkId, unId, randomId, unsafeIdTagConvert, coerceId, _Id, nilId
88 , IntId, mkIntId, unIntId, unsafeIntIdTagConvert, coerceIntId, _IntId
99 , Name, mkName, unName, unsafeNameTagConvert, coerceName, _Name
10−#ifdef USE_UUID
11− , randomId
12−#endif
1310 )
1411 where
1512
@@ -23,17 +20,15 @@ import Data.Data
2320import Data.Hashable (Hashable)
2421import Data.String
2522import Data.Text as T
26−import Data.UUID.Types (UUID)
27−import qualified Data.UUID.Types as UUID
23+import Data.UUID (UUID)
24+import qualified Data.UUID as UUID
25+import qualified Data.UUID.V4 as UUID.V4
2826import GHC.TypeLits
2927import Prelude as P
3028import Text.ParserCombinators.ReadP
3129import Web.HttpApiData
3230import Web.PathPieces (PathPiece(..))
3331
34−#ifdef USE_UUID
35−import qualified Data.UUID.V4 as UUID.V4
36−#endif
3732#ifdef BACKEND
3833import Data.OpenApi
3934import Test.QuickCheck
@@ -76,11 +71,9 @@ mkId :: forall s. UUID -> Id s
7671mkId = coerce
7772{-# INLINE mkId #-}
7873
79−#ifdef USE_UUID
8074randomId :: forall s. IO (Id s)
8175randomId = coerce <$> UUID.V4.nextRandom
8276{-# INLINE randomId #-}
83−#endif
8477
8578instance KnownSymbol s => Show (Id s) where
8679 show (Id v) = "Id-" <> symbolVal (Proxy @s) <> "-" <> P.show v