From 8cf2e348999c6f8cf2bb2583b4f5f083fba5170c Mon Sep 17 00:00:00 2001
From: Tom McLaughlin <tom@codedown.io>
Date: Tue, 23 Jan 2024 06:17:41 -0800
Subject: [PATCH] Add instance Alternative (Either String) since transformers
 dropped it

---
 lib/DockerEngine/Core.hs | 7 ++++++-
 stack.yaml               | 2 +-
 stack.yaml.lock          | 8 ++++----
 3 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/lib/DockerEngine/Core.hs b/lib/DockerEngine/Core.hs
index 55c59f9..91bfa1e 100644
--- a/lib/DockerEngine/Core.hs
+++ b/lib/DockerEngine/Core.hs
@@ -53,7 +53,7 @@ import qualified Data.Text.Encoding as T
 import qualified Data.Time as TI
 import qualified Data.Time.Format.Internal as TI
 import qualified Data.Time.ISO8601 as TI
-import qualified GHC.Base as P (Alternative)
+import qualified GHC.Base as P (Alternative, empty)
 import qualified Lens.Micro as L
 import qualified Network.HTTP.Client.MultipartFormData as NH
 import qualified Network.HTTP.Types as NH
@@ -447,6 +447,11 @@ instance P.Show DateTime where
 instance MimeRender MimeMultipartFormData DateTime where
   mimeRender _ = mimeRenderDefaultMultipartFormData
 
+instance Alternative (P.Either String) where
+    empty        = P.Left ""
+    P.Left _ <|> n = n
+    m      <|> _ = m
+
 -- | @_parseISO8601@
 _readDateTime :: (TI.ParseTime t, Monad m, Alternative m, P.MonadFail m) => String -> m t
 _readDateTime =
diff --git a/stack.yaml b/stack.yaml
index 4302cb1..c99d1f8 100644
--- a/stack.yaml
+++ b/stack.yaml
@@ -1,4 +1,4 @@
-resolver: lts-21.10
+resolver: lts-22.6
 
 nix:
   packages:
diff --git a/stack.yaml.lock b/stack.yaml.lock
index 6aef9c2..1b74b0a 100644
--- a/stack.yaml.lock
+++ b/stack.yaml.lock
@@ -6,7 +6,7 @@
 packages: []
 snapshots:
 - completed:
-    sha256: 1fc72fa74175fa3937b04c648229d601074183539a6f3d5cd49e99561873d79f
-    size: 640039
-    url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/21/10.yaml
-  original: lts-21.10
+    sha256: 1b4c2669e26fa828451830ed4725e4d406acc25a1fa24fcc039465dd13d7a575
+    size: 714100
+    url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/22/6.yaml
+  original: lts-22.6