[Git][haskell-team/DHG_packages][master] aeson: Add back and rebase patch for tests on 32-bit
Scott Talbert (@swt2c)
gitlab at salsa.debian.org
Tue Feb 10 15:16:56 GMT 2026
Scott Talbert pushed to branch master at Debian Haskell Group / DHG_packages
Commits:
b1924cbb by Scott Talbert at 2026-02-10T10:00:59-05:00
aeson: Add back and rebase patch for tests on 32-bit
- - - - -
3 changed files:
- p/haskell-aeson/debian/changelog
- + p/haskell-aeson/debian/patches/fix-tests-32bit
- p/haskell-aeson/debian/patches/series
Changes:
=====================================
p/haskell-aeson/debian/changelog
=====================================
@@ -1,3 +1,9 @@
+haskell-aeson (2.2.3.0-2) unstable; urgency=medium
+
+ * Add back and rebase patch for tests on 32-bit (Closes: #1053530)
+
+ -- Scott Talbert <swt at techie.net> Tue, 10 Feb 2026 09:30:32 -0500
+
haskell-aeson (2.2.3.0-1) unstable; urgency=medium
* Build using dh-haskell
=====================================
p/haskell-aeson/debian/patches/fix-tests-32bit
=====================================
@@ -0,0 +1,110 @@
+Description: Fix tests on 32bit systems
+ Revert commit f089cdbf5dc5b0e396dcad7497871297770d08a5.
+Bug: https://github.com/haskell/aeson/issues/1060
+
+Index: b/tests/JSONTestSuite.hs
+===================================================================
+--- a/tests/JSONTestSuite.hs
++++ b/tests/JSONTestSuite.hs
+@@ -24,91 +24,19 @@ import qualified Data.Aeson.Decoding.Tex
+
+
+ jsonTestSuiteTest :: FilePath -> TestTree
+-jsonTestSuiteTest path = case take 2 fileName of
+- "n_" -> negative
+- "y_" -> positive
+- "i_" | fileName `HashSet.member` ignore_accepted -> positive
+- | otherwise -> negative
+- _ | fileName `HashSet.member` transform_rejected -> negative
+- | otherwise -> positive
++jsonTestSuiteTest path = testCase fileName $ do
++ payload <- L.readFile path
++ let result = eitherDecode payload :: Either String Value
++ assertBool (show result) $ case take 2 fileName of
++ "n_" -> isLeft result
++ "y_" -> isRight result
++ "i_" | fileName `HashSet.member` ignore_accepted -> isRight result
++ | otherwise -> isLeft result
++ _ | fileName `HashSet.member` transform_rejected -> isLeft result
++ | otherwise -> isRight result -- test_transform tests have inconsistent names
+ where
+ fileName = takeFileName path
+
+- diff ref new = ["diff", "-u", ref, new]
+-
+- positive = testGroup fileName
+- [ goldenVsStringDiff "decode" diff ("tests" </> "JSONTestSuite" </> "results" </> fileName -<.> "txt") $ do
+- payload <- B.readFile path
+- let result = eitherDecodeStrict payload :: Either String Value
+- assertBool (show result) (isRight result)
+- return (LBS8.pack (show result ++ "\n"))
+-
+- , goldenVsStringDiff "decode via tokens" diff ("tests" </> "JSONTestSuite" </> "results" </> fileName -<.> "txt") $ do
+- payload <- B.readFile path
+- let result = D.eitherDecodeStrict payload :: Either String Value
+- assertBool (show result) (isRight result)
+- return (LBS8.pack (show result ++ "\n"))
+-
+- , goldenVsStringDiff "tokens bs" diff ("tests" </> "JSONTestSuite" </> "results" </> fileName -<.> "tok") $ do
+- payload <- B.readFile path
+- let result = D.bsToTokens payload
+- return (LBS8.pack (unlines (showTokens (const []) result)))
+-
+- , goldenVsStringDiff "tokens lbs" diff ("tests" </> "JSONTestSuite" </> "results" </> fileName -<.> "tok") $ do
+- payload <- L.readFile path
+- let result = D.lbsToTokens payload
+- return (LBS8.pack (unlines (showTokens (const []) result)))
+-
+- , goldenVsStringDiff "tokens text" diff ("tests" </> "JSONTestSuite" </> "results" </> fileName -<.> "tok") $ do
+- payload' <- B.readFile path
+- case TE.decodeUtf8' payload' of
+- Left exc -> fail $ show exc -- successful test shouldn't fail.
+- Right payload -> do
+- let result = D.textToTokens payload
+- return (LBS8.pack (unlines (showTokens (const []) result)))
+- ]
+-
+- negative = testGroup fileName
+- [ testCase "decode" $ do
+- payload <- B.readFile path
+-
+- let result1 = eitherDecodeStrict payload :: Either String Value
+- assertBool ("decode:" ++ show result1) (isLeft result1)
+-
+- let result2 = D.eitherDecodeStrict payload :: Either String Value
+- assertBool ("strict:" ++ show result2) (isLeft result2)
+-
+- payloadL <- L.readFile path
+-
+- let result3 = D.eitherDecode payloadL :: Either String Value
+- assertBool ("lazy:" ++ show result3) (isLeft result3)
+-
+- case TE.decodeUtf8' payload of
+- Left _exc -> return ()
+- Right payloadT -> do
+- let result4 = D.eitherDecodeStrictText payloadT :: Either String Value
+- assertBool ("text:" ++ show result4) (isLeft result4)
+-
+- , goldenVsStringDiff "tokens bs" diff ("tests" </> "JSONTestSuite" </> "results" </> fileName -<.> "tok") $ do
+- payload <- B.readFile path
+- let result = D.bsToTokens payload
+- return (LBS8.pack (unlines (showTokens (const []) result)))
+-
+- , goldenVsStringDiff "tokens lbs" diff ("tests" </> "JSONTestSuite" </> "results" </> fileName -<.> "tok") $ do
+- payload <- L.readFile path
+- let result = D.lbsToTokens payload
+- return (LBS8.pack (unlines (showTokens (const []) result)))
+-
+- , goldenVsStringDiff "tokens text" diff ("tests" </> "JSONTestSuite" </> "results" </> fileName -<.> "ttok") $ do
+- payload' <- B.readFile path
+- case TE.decodeUtf8' payload' of
+- Left _exc -> do
+- -- some failing cases are invalid UTF8
+- return (LBS8.pack "Invalid UTF8")
+- Right payload -> do
+- let result = D.textToTokens payload
+- return (LBS8.pack (unlines (showTokens (const []) result)))
+- ]
+
+ showTokens :: Show e => (k -> [String]) -> Tokens k e -> [String]
+ showTokens kont (TkLit l k) = ("TkLit " ++ show l) : kont k
=====================================
p/haskell-aeson/debian/patches/series
=====================================
@@ -1,2 +1,3 @@
no-generically
newer-deps
+fix-tests-32bit
View it on GitLab: https://salsa.debian.org/haskell-team/DHG_packages/-/commit/b1924cbb4a216a7f954b04e9d2f28cc0b79794f7
--
View it on GitLab: https://salsa.debian.org/haskell-team/DHG_packages/-/commit/b1924cbb4a216a7f954b04e9d2f28cc0b79794f7
You're receiving this email because of your account on salsa.debian.org.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://alioth-lists.debian.net/pipermail/pkg-haskell-commits/attachments/20260210/63189a87/attachment-0001.htm>
More information about the Pkg-haskell-commits
mailing list