remove i386ancient and need at least debian stable to build

* Removed the i386ancient standalone tarball build for linux, which
  was increasingly unable to support new git-annex features.
* Removed support for building with ghc older than 9.0.2,
  and with older versions of haskell libraries than are in current Debian
  stable.
* stack.yaml: Update to lts-23.2.

Note that i386ancient was targeting linux 2.6.32, which has been EOL for
over 9 years now. Any old system still using such a kernel is certainly highly
insecure. And I suspect i386ancient had its own insecurities due to haskell
libraries and C libraries not having been updated.
This commit is contained in:
Joey Hess 2025-01-01 14:15:55 -04:00
parent 292acd3c28
commit da5e195597
No known key found for this signature in database
GPG key ID: DB12DB0FF05F8F38
24 changed files with 27 additions and 180 deletions

View file

@ -7,7 +7,7 @@
- License: BSD-2-clause
-}
{-# LANGUAGE FlexibleInstances, TypeSynonymInstances, CPP #-}
{-# LANGUAGE FlexibleInstances, TypeSynonymInstances #-}
module Utility.Aeson (
module X,
@ -21,9 +21,7 @@ module Utility.Aeson (
import Data.Aeson as X (decode, eitherDecode, parseJSON, FromJSON, Object, object, Value(..), (.=), (.:), (.:?))
import Data.Aeson hiding (encode)
import qualified Data.Aeson
#if MIN_VERSION_aeson(2,0,0)
import qualified Data.Aeson.Key as AK
#endif
import qualified Data.Text as T
import qualified Data.Text.Encoding as T
import qualified Data.ByteString.Lazy as L
@ -73,13 +71,8 @@ packString s = case T.decodeUtf8' (encodeBS s) of
Right t -> t
Left _ -> T.pack s
#if MIN_VERSION_aeson(2,0,0)
textKey :: T.Text -> AK.Key
textKey = AK.fromText
#else
textKey :: T.Text -> T.Text
textKey = id
#endif
-- | The same as packString . decodeBS, but more efficient in the usual
-- case.