removed the old Android app
Running git-annex linux builds in termux seems to work well enough that the only reason to keep the Android app would be to support Android 4-5, which the old Android app supported, and which I don't know if the termux method works on (although I see no reason why it would not). According to [1], Android 4-5 remains on around 29% of devices, down from 51% one year ago. [1] https://www.statista.com/statistics/271774/share-of-android-platforms-on-mobile-devices-with-android-os/ This is a rather large commit, but mostly very straightfoward removal of android ifdefs and patches and associated cruft. Also, removed support for building with very old ghc < 8.0.1, and with yesod < 1.4.3, and without concurrent-output, which were only being used by the cross build. Some documentation specific to the Android app (screenshots etc) needs to be updated still. This commit was sponsored by Brett Eisenberg on Patreon.
This commit is contained in:
parent
aaa841e60a
commit
38d691a10f
124 changed files with 81 additions and 12472 deletions
|
@ -14,7 +14,6 @@ import Types
|
|||
import Types.Messages
|
||||
import qualified Annex
|
||||
|
||||
#ifdef WITH_CONCURRENTOUTPUT
|
||||
import Common
|
||||
import qualified System.Console.Concurrent as Console
|
||||
import qualified System.Console.Regions as Regions
|
||||
|
@ -23,7 +22,6 @@ import qualified Data.Text as T
|
|||
#ifndef mingw32_HOST_OS
|
||||
import GHC.IO.Encoding
|
||||
#endif
|
||||
#endif
|
||||
|
||||
{- Outputs a message in a concurrency safe way.
|
||||
-
|
||||
|
@ -33,15 +31,10 @@ import GHC.IO.Encoding
|
|||
- instead.
|
||||
-}
|
||||
concurrentMessage :: MessageState -> Bool -> String -> Annex () -> Annex ()
|
||||
#ifdef WITH_CONCURRENTOUTPUT
|
||||
concurrentMessage s iserror msg fallback
|
||||
| concurrentOutputEnabled s =
|
||||
go =<< consoleRegion <$> Annex.getState Annex.output
|
||||
#else
|
||||
concurrentMessage _s _iserror _msg fallback
|
||||
#endif
|
||||
| otherwise = fallback
|
||||
#ifdef WITH_CONCURRENTOUTPUT
|
||||
where
|
||||
go Nothing
|
||||
| iserror = liftIO $ Console.errorConcurrent msg
|
||||
|
@ -58,7 +51,6 @@ concurrentMessage _s _iserror _msg fallback
|
|||
rl <- takeTMVar Regions.regionList
|
||||
putTMVar Regions.regionList
|
||||
(if r `elem` rl then rl else r:rl)
|
||||
#endif
|
||||
|
||||
{- Runs an action in its own dedicated region of the console.
|
||||
-
|
||||
|
@ -70,7 +62,6 @@ concurrentMessage _s _iserror _msg fallback
|
|||
- complete.
|
||||
-}
|
||||
inOwnConsoleRegion :: MessageState -> Annex a -> Annex a
|
||||
#ifdef WITH_CONCURRENTOUTPUT
|
||||
inOwnConsoleRegion s a
|
||||
| concurrentOutputEnabled s = do
|
||||
r <- mkregion
|
||||
|
@ -85,11 +76,7 @@ inOwnConsoleRegion s a
|
|||
Right ret -> do
|
||||
rmregion r
|
||||
return ret
|
||||
#else
|
||||
inOwnConsoleRegion _s a
|
||||
#endif
|
||||
| otherwise = a
|
||||
#ifdef WITH_CONCURRENTOUTPUT
|
||||
where
|
||||
-- The region is allocated here, but not displayed until
|
||||
-- a message is added to it. This avoids unnecessary screen
|
||||
|
@ -108,10 +95,8 @@ inOwnConsoleRegion _s a
|
|||
unless (T.null t) $
|
||||
Console.bufferOutputSTM h t
|
||||
Regions.closeConsoleRegion r
|
||||
#endif
|
||||
|
||||
{- The progress region is displayed inline with the current console region. -}
|
||||
#ifdef WITH_CONCURRENTOUTPUT
|
||||
withProgressRegion :: (Regions.ConsoleRegion -> Annex a) -> Annex a
|
||||
withProgressRegion a = do
|
||||
parent <- consoleRegion <$> Annex.getState Annex.output
|
||||
|
@ -119,14 +104,12 @@ withProgressRegion a = do
|
|||
|
||||
instance Regions.LiftRegion Annex where
|
||||
liftRegion = liftIO . atomically
|
||||
#endif
|
||||
|
||||
{- The concurrent-output library uses Text, which bypasses the normal use
|
||||
- of the fileSystemEncoding to roundtrip invalid characters, when in a
|
||||
- non-unicode locale. Work around that problem by avoiding using
|
||||
- concurrent output when not in a unicode locale. -}
|
||||
concurrentOutputSupported :: IO Bool
|
||||
#ifdef WITH_CONCURRENTOUTPUT
|
||||
#ifndef mingw32_HOST_OS
|
||||
concurrentOutputSupported = do
|
||||
enc <- getLocaleEncoding
|
||||
|
@ -134,9 +117,6 @@ concurrentOutputSupported = do
|
|||
#else
|
||||
concurrentOutputSupported = return True -- Windows is always unicode
|
||||
#endif
|
||||
#else
|
||||
concurrentOutputSupported = return False
|
||||
#endif
|
||||
|
||||
{- Hide any currently displayed console regions while running the action,
|
||||
- so that the action can use the console itself.
|
||||
|
@ -144,7 +124,6 @@ concurrentOutputSupported = return False
|
|||
- the regions will not be hidden, but the action still runs, garbling the
|
||||
- display. -}
|
||||
hideRegionsWhile :: Annex a -> Annex a
|
||||
#ifdef WITH_CONCURRENTOUTPUT
|
||||
#if MIN_VERSION_concurrent_output(1,9,0)
|
||||
hideRegionsWhile a = bracketIO setup cleanup go
|
||||
where
|
||||
|
@ -156,6 +135,3 @@ hideRegionsWhile a = bracketIO setup cleanup go
|
|||
#else
|
||||
hideRegionsWhile = id
|
||||
#endif
|
||||
#else
|
||||
hideRegionsWhile = id
|
||||
#endif
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue