@@ -113,13 +113,12 @@ import Data.Maybe
113113import Data.Monoid ((<>))
114114import Data.Set (Set)
115115import qualified Data.Set as Set
116−import Data.Some (Some)
117−import qualified Data.Some as Some
118−import Data.Some.Universe.Orphans ()
116+import Data.Some (Some(Some))
119117import Data.Text (Text)
120118import qualified Data.Text as T
121−import Data.Text.Encoding
119+import qualified Data.Text.Encoding as T
122120import Data.Universe
121+import Data.Universe.Some
123122import Network.HTTP.Types.URI
124123import qualified Numeric.Lens
125124import Obelisk.Route.TH
@@ -155,7 +154,7 @@ pattern (:/) :: f a -> a -> R f
155154pattern a :/ b = a :=> Identity b
156155
157156mapSome :: (forall a. f a -> g a) -> Some f -> Some g
158−mapSome f (Some.This a) = Some.This $ f a
157+mapSome f (Some a) = Some $ f a
159158
160159hoistR :: (forall x. f x -> g x) -> R f -> R g
161160hoistR f (x :=> Identity y) = f x :/ y
@@ -349,8 +348,8 @@ nothingEncoder = prismEncoder _Nothing
349348
350349someConstEncoder :: (Applicative check, Applicative parse) => Encoder check parse (Some (Const a)) a
351350someConstEncoder = unsafeMkEncoder $ EncoderImpl
352− { _encoderImpl_encode = \(Some.This (Const a)) -> a
353− , _encoderImpl_decode = pure . Some.This . Const
351+ { _encoderImpl_encode = \(Some (Const a)) -> a
352+ , _encoderImpl_decode = pure . Some . Const
354353 }
355354
356355-- | WARNING: This is only safe if the Show and Read instances for 'a' are
@@ -378,7 +377,7 @@ checkEnum1EncoderFunc
378377 -> check (EncoderFunc check' parse p r)
379378checkEnum1EncoderFunc f = do
380379 (encoderImpls :: DMap p (Flip (EncoderImpl parse) r)) <- DMap.fromList <$>
381− traverse (\(Some.This p) -> (p :=>) . Flip <$> unEncoder (f p)) universe
380+ traverse (\(Some p) -> (p :=>) . Flip <$> unEncoder (f p)) universe
382381 pure $ EncoderFunc $ \p -> unsafeMkEncoder . unFlip $
383382 DMap.findWithDefault (error "checkEnum1EncoderFunc: EncoderImpl not found (should be impossible)") p encoderImpls
384383
@@ -433,11 +432,11 @@ chainEncoder cons this rest = Encoder $ do
433432 pure $ EncoderImpl
434433 { _encoderImpl_decode = \v -> do
435434 (here, following) <- _encoderImpl_decode consValid v
436− Some.This r <- _encoderImpl_decode thisValid here
435+ Some r <- _encoderImpl_decode thisValid here
437436 (r :/) <$> _encoderImpl_decode (runIdentity . unEncoder $ rest r) following
438437 , _encoderImpl_encode = \(r :/ s) ->
439438 _encoderImpl_encode consValid
440− ( _encoderImpl_encode thisValid $ Some.This r
439+ ( _encoderImpl_encode thisValid $ Some r
441440 , _encoderImpl_encode (runIdentity . unEncoder $ rest r) s)
442441 }
443442
@@ -504,7 +503,7 @@ enum1Encoder
504503 , Show r
505504 )
506505 => (forall a. p a -> r) -> Encoder check parse (Some p) r
507−enum1Encoder f = enumEncoder $ \(Some.This p) -> f p
506+enum1Encoder f = enumEncoder $ \(Some p) -> f p
508507
509508-- | Encode an enumerable, bounded type. WARNING: Don't use this on types that
510509-- have a large number of values - it will use a lot of memory.
@@ -596,10 +595,10 @@ queryParametersTextEncoder = Encoder $ pure $ EncoderImpl
596595 in (urlDecodeText True k, urlDecodeText True <$> mv)
597596
598597urlEncodeText :: Bool -> Text -> Text
599−urlEncodeText q = decodeUtf8 . urlEncode q . encodeUtf8
598+urlEncodeText q = T.decodeUtf8 . urlEncode q . T.encodeUtf8
600599
601600urlDecodeText :: Bool -> Text -> Text
602−urlDecodeText q = decodeUtf8 . urlDecode q . encodeUtf8
601+urlDecodeText q = T.decodeUtf8 . urlDecode q . T.encodeUtf8
603602
604603listToNonEmptyEncoder :: (Applicative check, Applicative parse, Monoid a, Eq a) => Encoder check parse [a] (NonEmpty a)
605604listToNonEmptyEncoder = Encoder $ pure $ EncoderImpl
@@ -711,9 +710,11 @@ data ObeliskRoute :: (* -> *) -> * -> * where
711710 ObeliskRoute_App :: f a -> ObeliskRoute f a
712711 ObeliskRoute_Resource :: ResourceRoute a -> ObeliskRoute f a
713712
714−instance Universe (Some f) => Universe (Some (ObeliskRoute f)) where
715− universe = fmap (\(Some.This x) -> Some.This (ObeliskRoute_App x)) universe
716− ++ fmap (\(Some.This x) -> Some.This (ObeliskRoute_Resource x)) universe
713+instance UniverseSome f => UniverseSome (ObeliskRoute f) where
714+ universeSome = concat
715+ [ (\(Some x) -> Some (ObeliskRoute_App x)) <$> universe
716+ , (\(Some x) -> Some (ObeliskRoute_Resource x)) <$> universe
717+ ]
717718
718719instance GEq f => GEq (ObeliskRoute f) where
719720 geq (ObeliskRoute_App x) (ObeliskRoute_App y) = geq x y
@@ -801,12 +802,12 @@ indexOnlyRouteEncoder = pathComponentEncoder indexOnlyRouteSegment
801802
802803someSumEncoder :: (Applicative check, Applicative parse) => Encoder check parse (Some (Sum a b)) (Either (Some a) (Some b))
803804someSumEncoder = Encoder $ pure $ EncoderImpl
804− { _encoderImpl_encode = \(Some.This t) -> case t of
805− InL l -> Left $ Some.This l
806− InR r -> Right $ Some.This r
805+ { _encoderImpl_encode = \(Some t) -> case t of
806+ InL l -> Left $ Some l
807+ InR r -> Right $ Some r
807808 , _encoderImpl_decode = pure . \case
808− Left (Some.This l) -> Some.This (InL l)
809− Right (Some.This r) -> Some.This (InR r)
809+ Left (Some l) -> Some (InL l)
810+ Right (Some r) -> Some (InR r)
810811 }
811812
812813data Void1 :: * -> * where {}
@@ -817,7 +818,7 @@ instance Universe (Some Void1) where
817818void1Encoder :: (Applicative check, MonadError Text parse) => Encoder check parse (Some Void1) a
818819void1Encoder = Encoder $ pure $ EncoderImpl
819820 { _encoderImpl_encode = \case
820− Some.This f -> case f of {}
821+ Some f -> case f of {}
821822 , _encoderImpl_decode = \_ -> throwError "void1Encoder: can't decode anything"
822823 }
823824