|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
diff -ur stack-2.9.3.1/src/Path/Extra.hs stack-2.9.3.1.new/src/Path/Extra.hs
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
--- stack-2.9.3.1/src/Path/Extra.hs 2023-06-22 18:40:54.000000000 +0800
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
+++ stack-2.9.3.1.new/src/Path/Extra.hs 2023-08-08 13:55:22.550467487 +0800
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
@@ -15,6 +15,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
, pathToLazyByteString
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
, pathToText
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
, tryGetModificationTime
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ ,forgivingResolveFile
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ ,forgivingResolveFile'
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
) where
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
import Data.Time ( UTCTime )
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
@@ -27,6 +29,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
import qualified Data.ByteString.Lazy.Char8 as BSL
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
import qualified Data.Text as T
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
import qualified Data.Text.Encoding as T
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+import qualified System.Directory as D
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
import qualified System.FilePath as FP
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
-- | Convert to FilePath but don't add a trailing slash.
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
@@ -121,3 +124,30 @@
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
tryGetModificationTime :: MonadIO m => Path Abs File -> m (Either () UTCTime)
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
tryGetModificationTime = liftIO . tryJust (guard . isDoesNotExistError) . getModificationTime
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+-- | 'Path.IO.resolveFile' (@path-io@ package) throws 'InvalidAbsFile' (@path@
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+-- package) if the file does not exist; this function yields 'Nothing'.
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+forgivingResolveFile ::
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ MonadIO m
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ => Path Abs Dir
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ -- ^ Base directory
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ -> FilePath
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ -- ^ Path to resolve
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ -> m (Maybe (Path Abs File))
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+forgivingResolveFile b p = liftIO $
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ D.canonicalizePath (toFilePath b FP. p) >>= \cp ->
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ catch
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ (Just <$> parseAbsFile cp)
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ ( \e -> case e of
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ InvalidAbsFile _ -> pure Nothing
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ _ -> throwIO e
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ )
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+-- | 'Path.IO.resolveFile'' (@path-io@ package) throws 'InvalidAbsFile' (@path@
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+-- package) if the file does not exist; this function yields 'Nothing'.
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+forgivingResolveFile' ::
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ MonadIO m
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ => FilePath
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ -- ^ Path to resolve
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ -> m (Maybe (Path Abs File))
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+forgivingResolveFile' p = getCurrentDir >>= flip forgivingResolveFile p
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
diff -ur stack-2.9.3.1/src/Stack/Build/Execute.hs stack-2.9.3.1.new/src/Stack/Build/Execute.hs
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
--- stack-2.9.3.1/src/Stack/Build/Execute.hs 2023-06-22 18:40:54.000000000 +0800
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
+++ stack-2.9.3.1.new/src/Stack/Build/Execute.hs 2023-08-08 13:57:36.831258806 +0800
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
@@ -66,6 +66,10 @@
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
import Path
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
import Path.CheckInstall
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
import Path.Extra ( toFilePathNoTrailingSep, rejectMissingFile )
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+import Path.Extra
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ ( forgivingResolveFile, rejectMissingFile
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ , toFilePathNoTrailingSep
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ )
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
import Path.IO
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
hiding ( findExecutable, makeAbsolute, withSystemTempDir )
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
import RIO.Process
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
@@ -548,7 +552,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
case loc of
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
Snap -> snapBin
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
Local -> localBin
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
- mfp <- liftIO $ forgivingAbsence (resolveFile bindir $ T.unpack name ++ ext)
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ mfp <- liftIO $ forgivingResolveFile bindir (T.unpack name ++ ext)
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
>>= rejectMissingFile
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
case mfp of
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
Nothing -> do
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
@@ -2195,7 +2199,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
mabs <-
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
if isValidSuffix y
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
then liftIO $ liftM (fmap ((T.takeWhile isSpace x <>) . T.pack . toFilePath)) $
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
- forgivingAbsence (resolveFile pkgDir (T.unpack $ T.dropWhile isSpace x)) `catch`
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ forgivingResolveFile pkgDir (T.unpack $ T.dropWhile isSpace x) `catch`
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
\(_ :: PathException) -> pure Nothing
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
else pure Nothing
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
case mabs of
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
diff -ur stack-2.9.3.1/src/Stack/ComponentFile.hs stack-2.9.3.1.new/src/Stack/ComponentFile.hs
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
--- stack-2.9.3.1/src/Stack/ComponentFile.hs 2023-06-22 18:40:54.000000000 +0800
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
+++ stack-2.9.3.1.new/src/Stack/ComponentFile.hs 2023-08-08 14:04:52.914859026 +0800
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
@@ -283,8 +283,8 @@
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
Iface.unList . Iface.dmods . Iface.deps
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
resolveFileDependency file = do
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
resolved <-
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
- liftIO (forgivingAbsence (resolveFile dir file)) >>=
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
- rejectMissingFile
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
+ liftIO (forgivingResolveFile dir file) >>=
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
+ rejectMissingFile
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
when (isNothing resolved) $
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
prettyWarnL
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
[ flow "Dependent file listed in:"
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
diff -ur stack-2.9.3.1/src/Stack/Ghci.hs stack-2.9.3.1.new/src/Stack/Ghci.hs
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
--- stack-2.9.3.1/src/Stack/Ghci.hs 2023-06-22 18:40:54.000000000 +0800
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
+++ stack-2.9.3.1.new/src/Stack/Ghci.hs 2023-08-08 13:58:43.393651047 +0800
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
@@ -29,7 +29,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
import qualified Data.Text.Lazy.Encoding as TLE
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
import qualified Distribution.PackageDescription as C
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
import Path
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
-import Path.Extra ( toFilePathNoTrailingSep )
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+import Path.Extra (forgivingResolveFile', toFilePathNoTrailingSep)
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
import Path.IO hiding ( withSystemTempDir )
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
import RIO.Process
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
( HasProcessContext, exec, proc, readProcess_
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
@@ -225,7 +225,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
then do
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
fileTargets <- forM fileTargetsRaw $ \fp0 -> do
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
let fp = T.unpack fp0
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
- mpath <- liftIO $ forgivingAbsence (resolveFile' fp)
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
+ mpath <- liftIO $ forgivingResolveFile' fp
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
case mpath of
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
Nothing -> throwM (MissingFileTarget fp)
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
Just path -> pure path
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
diff -ur stack-2.9.3.1/src/Stack/PackageFile.hs stack-2.9.3.1.new/src/Stack/PackageFile.hs
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
--- stack-2.9.3.1/src/Stack/PackageFile.hs 2023-06-22 18:40:54.000000000 +0800
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
+++ stack-2.9.3.1.new/src/Stack/PackageFile.hs 2023-08-08 14:06:21.163396729 +0800
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
@@ -34,7 +34,7 @@
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
-> RIO GetPackageFileContext (Maybe (Path Abs File))
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
resolveFileOrWarn = resolveOrWarn "File" f
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
where
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
- f p x = liftIO (forgivingAbsence (resolveFile p x)) >>= rejectMissingFile
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
+ f p x = liftIO (forgivingResolveFile p x) >>= rejectMissingFile
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
86537fd |
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
-- | Get all files referenced by the package.
|
|
![](https://seccdn.libravatar.org/avatar/ade620fcd0c270130799ce2518991baee38b812dd3c709cdc81983ec1c5bbdc0?s=16&d=retro) |
36bd7e2 |
packageDescModulesAndFiles
|