devel/cabal-install 3.4.0.0 upgrade

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

devel/cabal-install 3.4.0.0 upgrade

Greg Steuck-5
Now that 3.4 is properly out I can upgrade it and to my surprise the old
framework can be left untouched for cabal-install upgrade. So, as a
first (backward compatible) step here's something we can submit ASAP.

Matthias, if you don't feel like looking at this at the moment, could
you let me know so I can corral another reviewer?

OK?

Thanks
Greg

diff --git a/devel/cabal-install/Makefile b/devel/cabal-install/Makefile
index 6f4c559ea84..2c92d1ff78a 100644
--- a/devel/cabal-install/Makefile
+++ b/devel/cabal-install/Makefile
@@ -2,10 +2,14 @@
 
 COMMENT = command-line interface for Cabal and Hackage
 
-DISTNAME = cabal-install-2.4.0.0
+DISTNAME = cabal-install-3.4.0.0
 CATEGORIES = devel
 
-HOMEPAGE = http://www.haskell.org/cabal/
+GH_ACCOUNT = haskell
+GH_TAGNAME = ${DISTNAME}
+GH_PROJECT = cabal
+
+HOMEPAGE = https://github.com/haskell/cabal
 
 MAINTAINER = Matthias Kilian <[hidden email]>
 
@@ -14,35 +18,68 @@ PERMIT_PACKAGE = Yes
 
 WANTLIB = c charset ffi gmp iconv m pthread util z
 
-MODULES = lang/ghc
 MODGHC_BUILD =          cabal hackage nort
 
 LIB_DEPENDS = converters/libiconv \
  devel/gmp \
  devel/libffi
 
-# Avoids the dependency on resolve.
-MODGHC_SETUP_CONF_ARGS += -f-native-dns
-
-BUILD_DEPENDS += archivers/hs-zlib>=0.5.3,<0.7 \
- archivers/hs-zip-archive>=0.3.2.5,<0.5 \
- devel/hs-async>=2.0,<3 \
- devel/hs-base16-bytestring>=0.1.1,<0.2 \
- devel/hs-echo>=0.1.3,<0.2 \
- devel/hs-edit-distance>=0.2.2,<0.3 \
- devel/hs-hashable>=1.0,<2 \
- devel/hs-network>=2.6,<2.7 \
- devel/hs-network-uri>=2.6,<2.7 \
- devel/hs-random>=1,<1.2 \
- devel/hs-tar>=0.5.0.3,<0.6 \
- net/hs-HTTP>=4000.1.5,<4000.4 \
- security/hs-cryptohash-sha256>=0.11,<0.12 \
- security/hs-hackage-security>=0.5.2.2,<0.6
-
-# Cabal (part of lang/ghc) would have patched for a correct mandir,
-# but this is for now the only haskell program using Cabal to install a
-# man page.
-post-install:
- mv ${PREFIX}/share/man/man1/cabal.1 ${PREFIX}/man/man1/cabal.1
+# bootstrap.py handles the extraction of the rest of files.
+EXTRACT_ONLY = ${DISTNAME}.tar.gz
+DISTFILES = ${EXTRACT_ONLY}
+DIST_SUBDIR = hackage
+MASTER_SITES0 = https://hackage.haskell.org/package/
+
+# Produced by:
+#   cabal v2-run -w /usr/local/bin/ghc exe:cabal-bundler -- \
+#     --openbsd cabal -w /usr/local/bin/ghc -p cabal/dist-newstyle/cache/plan.json
+_MANIFEST = \
+ HTTP 4000.3.14 1 \
+ async 2.2.2 1 \
+ base16-bytestring 0.1.1.7 0 \
+ base64-bytestring 1.1.0.0 0 \
+ cryptohash-sha256 0.11.101.0 4 \
+ echo 0.1.3 1 \
+ ed25519 0.0.5.0 3 \
+ edit-distance 0.2.2.1 1 \
+ hackage-security 0.6.0.1 2 \
+ hashable 1.3.0.0 1 \
+ lukko 0.1.1.2 0 \
+ network 3.1.1.1 0 \
+ network-uri 2.6.3.0 0 \
+ random 1.2.0 0 \
+ regex-base 0.94.0.0 1 \
+ regex-posix 0.96.0.0 1 \
+ resolv 0.1.2.0 0 \
+ splitmix 0.1 0 \
+ tar 0.5.1.1 2 \
+ zlib 0.6.2.1 1 \
+
+.for _package _version _revision in ${_MANIFEST}
+DISTFILES += {${_package}-${_version}/}${_package}-${_version}.tar.gz:0
+DISTFILES += ${_package}-${_version}_${_revision}{${_package}-${_version}/revision/${_revision}}.cabal:0
+.endfor
+
+BUILD_DEPENDS += lang/ghc>=8.6.4
+
+MODULES = lang/python
+
+MODPY_VERSION = ${MODPY_DEFAULT_VERSION_3}
+
+post-extract:
+ @mkdir -p ${WRKBUILD}/_build/tarballs
+.for _package _version _revision in ${_MANIFEST}
+ @ln -s ${FULLDISTDIR}/${_package}-${_version}.tar.gz ${WRKBUILD}/_build/tarballs
+ @ln -s ${FULLDISTDIR}/${_package}-${_version}_${_revision}.cabal ${WRKBUILD}/_build/tarballs/${_package}.cabal
+.endfor
+
+# Uses the same fixed versions of packages as in _MANIFEST. The
+# distributed package currently doesn't have a 8.10.3 variant.  The
+# json file is generated by following cabal bootstrap instructions.
+do-build:
+ @cd ${WRKBUILD} && ${MODPY_BIN} bootstrap/bootstrap.py -d ${FILESDIR}/openbsd-8.6.4.json
+
+do-install:
+ @install -m755 ${WRKBUILD}/_build/bin/cabal ${PREFIX}/bin
 
 .include <bsd.port.mk>
diff --git a/devel/cabal-install/distinfo b/devel/cabal-install/distinfo
index ed70ae5f09c..b1f98a02fad 100644
--- a/devel/cabal-install/distinfo
+++ b/devel/cabal-install/distinfo
@@ -1,2 +1,82 @@
-SHA256 (ghc/cabal-install-2.4.0.0.tar.gz) = EynpVktzawz7p205YgTZVWnwgOfFT+NVttlhjjqgvvY=
-SIZE (ghc/cabal-install-2.4.0.0.tar.gz) = 614491
+SHA256 (hackage/HTTP-4000.3.14.tar.gz) = pgLX8w6RcWTGpjT4yx9d9ISQSIWNsBOAoIdeFuWqaHs=
+SHA256 (hackage/HTTP-4000.3.14_1.cabal) = PBmXX9/Y0Ffq5YhHvaanlRStiC/W+OrXKsAkevNL38Y=
+SHA256 (hackage/async-2.2.2.tar.gz) = S0qxrILEUUTYLG2vbLa6Req5lX2tRHh/pehp4j1zu/8=
+SHA256 (hackage/async-2.2.2_1.cabal) = oXjBZoVtp/8i/kUAM3tUgS6U/SBZQJRSGH1y4Fft6c0=
+SHA256 (hackage/base16-bytestring-0.1.1.7.tar.gz) = UlaJZ51cyA+lMsHVz+rOD2K7tUE0+tUU8boA0Of+abo=
+SHA256 (hackage/base16-bytestring-0.1.1.7_0.cabal) = jLuiUF1NpPbPyQzTbI6K0MCcBWU4SB6gDosQt49wyxA=
+SHA256 (hackage/base64-bytestring-1.1.0.0.tar.gz) = IQ1skEIkHKUu5dic8iHb600OZLNzkTRTaQNa0tm0rKk=
+SHA256 (hackage/base64-bytestring-1.1.0.0_0.cabal) = GQJk/vnmXZCF8AzNpBkTcJbR3JR3fFgnK8loIdx/N8M=
+SHA256 (hackage/cabal-install-3.4.0.0.tar.gz) = 5PvV6x13QAdGqZNnkYHxWapBWje5MbJtZ/VgL2POlxw=
+SHA256 (hackage/cryptohash-sha256-0.11.101.0.tar.gz) = UnVkNdvqJI40T7y8xd9TB/YN+s8zff0RrjDxx6TaBd0=
+SHA256 (hackage/cryptohash-sha256-0.11.101.0_4.cabal) = uWPWMI2wljYtc9nGA7MxzxiKppMQGV9Hnf7fYEXX5gI=
+SHA256 (hackage/echo-0.1.3.tar.gz) = cE8HMQ+CctFw+Kt/sqLBPxXYUB74MQgB42lkyO/0he8=
+SHA256 (hackage/echo-0.1.3_1.cabal) = VJC+nPvqleFKemi30FWujSlYIuCxRtKsgoWz5aPjKC8=
+SHA256 (hackage/ed25519-0.0.5.0.tar.gz) = 2KWVjr+pMJeQ763mQnXcXEQbVoZFxFzu0bDG/zbWFW0=
+SHA256 (hackage/ed25519-0.0.5.0_3.cabal) = +5iwjeRn1R94j4vZOR8Omrm9TY38JkKWuJX/6g2CLfo=
+SHA256 (hackage/edit-distance-0.2.2.1.tar.gz) = PoiF7i9WrU2pQPBDro+YHuL+M2tejkuj90Ns/09SbEo=
+SHA256 (hackage/edit-distance-0.2.2.1_1.cabal) = TTOknNOD1QrwkPG4iGQtEBFuQ4CfnaYCPZ/G9n0mVu4=
+SHA256 (hackage/hackage-security-0.6.0.1.tar.gz) = kWK0c69aIcH/MqULlyuaz1H0yQFgSiLPCKLcysL4Lxc=
+SHA256 (hackage/hackage-security-0.6.0.1_2.cabal) = aSw4XAhbqigTBGrljjHfIcJQNGuByIJDG1/+92RRoYo=
+SHA256 (hackage/hashable-1.3.0.0.tar.gz) = gi5UE/vMymrohNOrpAZkIsi11Y0j0Yuey1wDJzuxmrQ=
+SHA256 (hackage/hashable-1.3.0.0_1.cabal) = THDxQHiBBZ6TVQ03QhkSVClrJze3k6dCvZATSPs+H7E=
+SHA256 (hackage/lukko-0.1.1.2.tar.gz) = innRE9wMzvFsJNgzecxFdIWUMCfnd1KcRjYv7MBmB9I=
+SHA256 (hackage/lukko-0.1.1.2_0.cabal) = ydP6MPtqsroW4DdYbKeb5uV+xfADgbbuXyk0ANvfVRU=
+SHA256 (hackage/network-3.1.1.1.tar.gz) = 1+9ZAXP/8qtSL7wWfz+vuGfk7Pyiees+8NE3tR8ULJo=
+SHA256 (hackage/network-3.1.1.1_0.cabal) = twTLZnbAPpgmcZDfeXSXWHV2oulglFUOoUNBUjm75m4=
+SHA256 (hackage/network-uri-2.6.3.0.tar.gz) = oBwTifFdLMLoR5FHN/cGEzuxHwxfjuiXEaNqJbevpyM=
+SHA256 (hackage/network-uri-2.6.3.0_0.cabal) = 0tn/OoDZstH/MXo1S8DFbMEJxppMJEnl/HEtPdzoPt4=
+SHA256 (hackage/random-1.2.0.tar.gz) = 5FGc98BYv9W9vkrMeCKErMniXnRIcghhnKg8vNY/ud4=
+SHA256 (hackage/random-1.2.0_0.cabal) = XKhnTpXEbH65D1IMJq6iLUA2Jcl2lydUNK+6ZuvTKwU=
+SHA256 (hackage/regex-base-0.94.0.0.tar.gz) = xB+C9fwRV8lhpMvcDNVWHlqkTzOc5ucG2XjZfgymuRQ=
+SHA256 (hackage/regex-base-0.94.0.0_1.cabal) = RKqVynYilP+7KM8K+cVn2TtdLFbk84zlOFolfYmflo4=
+SHA256 (hackage/regex-posix-0.96.0.0.tar.gz) = JRMA8aa7LpGruL9ROiGYH4+recmKZazqK7bWpSRBRSE=
+SHA256 (hackage/regex-posix-0.96.0.0_1.cabal) = aQ0TZunqbfcd7T2vSco9U8Y+2j+Vk3liKZsjkYJNw7M=
+SHA256 (hackage/resolv-0.1.2.0.tar.gz) = gaK6+tSE2xI8+NF6AtmLs4ihJ/0Pgi+gIliUaKDmRnE=
+SHA256 (hackage/resolv-0.1.2.0_0.cabal) = Cppt0pcGJYrmClwirswUCkB0O48I/DJP2ZhOffvzqA0=
+SHA256 (hackage/splitmix-0.1.tar.gz) = HBHIc1LduxM2U4D+Fj+Zu4+IRevJbKHVcuXTqb+BC/o=
+SHA256 (hackage/splitmix-0.1_0.cabal) = 1QxNCAGjW+eHWgQEcMCYYzQlFJMMgqfSV4Cmwu/E/ak=
+SHA256 (hackage/tar-0.5.1.1.tar.gz) = s4REn2KysKo+bSyxAEuAYLAfIeyT57Y+evbY+tip8d4=
+SHA256 (hackage/tar-0.5.1.1_2.cabal) = enFUFMTUlMkEjPttdjTgfncyyhVMuJONyF9uoZIZLow=
+SHA256 (hackage/zlib-0.6.2.1.tar.gz) = 8PgQ/xc1YLYDkttEhFXAUTsyOfSOQ8tJSzczqlWWIdA=
+SHA256 (hackage/zlib-0.6.2.1_1.cabal) = 003fX+zk0enUcbUpjzYzW7PP4Sy1obhSXELwtmU4L0U=
+SIZE (hackage/HTTP-4000.3.14.tar.gz) = 72938
+SIZE (hackage/HTTP-4000.3.14_1.cabal) = 5843
+SIZE (hackage/async-2.2.2.tar.gz) = 12927
+SIZE (hackage/async-2.2.2_1.cabal) = 2934
+SIZE (hackage/base16-bytestring-0.1.1.7.tar.gz) = 5136
+SIZE (hackage/base16-bytestring-0.1.1.7_0.cabal) = 2153
+SIZE (hackage/base64-bytestring-1.1.0.0.tar.gz) = 12076
+SIZE (hackage/base64-bytestring-1.1.0.0_0.cabal) = 2334
+SIZE (hackage/cabal-install-3.4.0.0.tar.gz) = 2072483
+SIZE (hackage/cryptohash-sha256-0.11.101.0.tar.gz) = 14996
+SIZE (hackage/cryptohash-sha256-0.11.101.0_4.cabal) = 5417
+SIZE (hackage/echo-0.1.3.tar.gz) = 5373
+SIZE (hackage/echo-0.1.3_1.cabal) = 2500
+SIZE (hackage/ed25519-0.0.5.0.tar.gz) = 80034
+SIZE (hackage/ed25519-0.0.5.0_3.cabal) = 4165
+SIZE (hackage/edit-distance-0.2.2.1.tar.gz) = 13228
+SIZE (hackage/edit-distance-0.2.2.1_1.cabal) = 2351
+SIZE (hackage/hackage-security-0.6.0.1.tar.gz) = 86006
+SIZE (hackage/hackage-security-0.6.0.1_2.cabal) = 12001
+SIZE (hackage/hashable-1.3.0.0.tar.gz) = 29835
+SIZE (hackage/hashable-1.3.0.0_1.cabal) = 5206
+SIZE (hackage/lukko-0.1.1.2.tar.gz) = 28366
+SIZE (hackage/lukko-0.1.1.2_0.cabal) = 4485
+SIZE (hackage/network-3.1.1.1.tar.gz) = 118478
+SIZE (hackage/network-3.1.1.1_0.cabal) = 4268
+SIZE (hackage/network-uri-2.6.3.0.tar.gz) = 31997
+SIZE (hackage/network-uri-2.6.3.0_0.cabal) = 2902
+SIZE (hackage/random-1.2.0.tar.gz) = 37889
+SIZE (hackage/random-1.2.0_0.cabal) = 5897
+SIZE (hackage/regex-base-0.94.0.0.tar.gz) = 9679
+SIZE (hackage/regex-base-0.94.0.0_1.cabal) = 2253
+SIZE (hackage/regex-posix-0.96.0.0.tar.gz) = 12529
+SIZE (hackage/regex-posix-0.96.0.0_1.cabal) = 2531
+SIZE (hackage/resolv-0.1.2.0.tar.gz) = 156710
+SIZE (hackage/resolv-0.1.2.0_0.cabal) = 4548
+SIZE (hackage/splitmix-0.1.tar.gz) = 18997
+SIZE (hackage/splitmix-0.1_0.cabal) = 5249
+SIZE (hackage/tar-0.5.1.1.tar.gz) = 39155
+SIZE (hackage/tar-0.5.1.1_2.cabal) = 5254
+SIZE (hackage/zlib-0.6.2.1.tar.gz) = 143424
+SIZE (hackage/zlib-0.6.2.1_1.cabal) = 4547
diff --git a/devel/cabal-install/files/openbsd-8.6.4.json b/devel/cabal-install/files/openbsd-8.6.4.json
new file mode 100644
index 00000000000..eee5f9eefeb
--- /dev/null
+++ b/devel/cabal-install/files/openbsd-8.6.4.json
@@ -0,0 +1,340 @@
+{
+    "builtin": [
+        {
+            "package": "rts",
+            "version": "1.0"
+        },
+        {
+            "package": "ghc-prim",
+            "version": "0.5.3"
+        },
+        {
+            "package": "integer-gmp",
+            "version": "1.0.2.0"
+        },
+        {
+            "package": "base",
+            "version": "4.12.0.0"
+        },
+        {
+            "package": "array",
+            "version": "0.5.3.0"
+        },
+        {
+            "package": "deepseq",
+            "version": "1.4.4.0"
+        },
+        {
+            "package": "bytestring",
+            "version": "0.10.8.2"
+        },
+        {
+            "package": "containers",
+            "version": "0.6.0.1"
+        },
+        {
+            "package": "binary",
+            "version": "0.8.6.0"
+        },
+        {
+            "package": "filepath",
+            "version": "1.4.2.1"
+        },
+        {
+            "package": "time",
+            "version": "1.8.0.2"
+        },
+        {
+            "package": "unix",
+            "version": "2.7.2.2"
+        },
+        {
+            "package": "directory",
+            "version": "1.3.3.0"
+        },
+        {
+            "package": "transformers",
+            "version": "0.5.6.2"
+        },
+        {
+            "package": "mtl",
+            "version": "2.2.2"
+        },
+        {
+            "package": "text",
+            "version": "1.2.3.1"
+        },
+        {
+            "package": "parsec",
+            "version": "3.1.13.0"
+        },
+        {
+            "package": "pretty",
+            "version": "1.1.3.6"
+        },
+        {
+            "package": "process",
+            "version": "1.6.5.0"
+        },
+        {
+            "package": "ghc-boot-th",
+            "version": "8.6.4"
+        },
+        {
+            "package": "template-haskell",
+            "version": "2.14.0.0"
+        },
+        {
+            "package": "stm",
+            "version": "2.5.0.0"
+        }
+    ],
+    "dependencies": [
+        {
+            "cabal_sha256": null,
+            "flags": [
+                "-bundled-binary-generic"
+            ],
+            "package": "Cabal",
+            "revision": null,
+            "source": "local",
+            "src_sha256": null,
+            "version": "3.4.0.0"
+        },
+        {
+            "cabal_sha256": "b704cb6676c03e98267190df797497587576a2e96094550ea143415239bbe66e",
+            "flags": [],
+            "package": "network",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "d7ef590173fff2ab522fbc167f3fafb867e4ecfca279eb3ef0d137b51f142c9a",
+            "version": "3.1.1.1"
+        },
+        {
+            "cabal_sha256": "d2d9ff3a80d9b2d1ff317a354bc0c56cc109c69a4c2449e5fc712d3ddce83ede",
+            "flags": [],
+            "package": "network-uri",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "a01c1389f15d2cc2e847914737f706133bb11f0c5f8ee89711a36a25b7afa723",
+            "version": "2.6.3.0"
+        },
+        {
+            "cabal_sha256": "3c19975fdfd8d057eae58847bda6a79514ad882fd6f8ead72ac0247af34bdfc6",
+            "flags": [
+                "-conduit10",
+                "-mtl1",
+                "+network-uri",
+                "-warn-as-error",
+                "-warp-tests"
+            ],
+            "package": "HTTP",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "a602d7f30e917164c6a634f8cb1f5df4849048858db01380a0875e16e5aa687b",
+            "version": "4000.3.14"
+        },
+        {
+            "cabal_sha256": "4c70f1407881059e93550d3742191254296b2737b793a742bd901348fb3e1fb1",
+            "flags": [
+                "-examples",
+                "+integer-gmp",
+                "+sse2",
+                "-sse41"
+            ],
+            "package": "hashable",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "822e5413fbccca6ae884d3aba4066422c8b5d58d23d18b9ecb5c03273bb19ab4",
+            "version": "1.3.0.0"
+        },
+        {
+            "cabal_sha256": "a178c166856da7ff22fe4500337b54812e94fd2059409452187d72e057ede9cd",
+            "flags": [
+                "-bench"
+            ],
+            "package": "async",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "4b4ab1ac82c45144d82c6daf6cb6ba45eab9957dad44787fa5e869e23d73bbff",
+            "version": "2.2.2"
+        },
+        {
+            "cabal_sha256": "8cbba2505d4da4f6cfc90cd36c8e8ad0c09c056538481ea00e8b10b78f70cb10",
+            "flags": [],
+            "package": "base16-bytestring",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "525689679d5cc80fa532c1d5cfeace0f62bbb54134fad514f1ba00d0e7fe69ba",
+            "version": "0.1.1.7"
+        },
+        {
+            "cabal_sha256": "190264fef9e65d9085f00ccda419137096d1dc94777c58272bc96821dc7f37c3",
+            "flags": [],
+            "package": "base64-bytestring",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "210d6c9042241ca52ee5d89cf221dbeb4d0e64b37391345369035ad2d9b4aca9",
+            "version": "1.1.0.0"
+        },
+        {
+            "cabal_sha256": "b963d6308db096362d73d9c603b331cf188aa69310195f479dfedf6045d7e602",
+            "flags": [
+                "-exe"
+            ],
+            "package": "cryptohash-sha256",
+            "revision": 4,
+            "source": "hackage",
+            "src_sha256": "52756435dbea248e344fbcbcc5df5307f60dfacf337dfd11ae30f1c7a4da05dd",
+            "version": "0.11.101.0"
+        },
+        {
+            "cabal_sha256": "5490be9cfbea95e14a7a68b7d055ae8d295822e0b146d2ac8285b3e5a3e3282f",
+            "flags": [
+                "-example"
+            ],
+            "package": "echo",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "704f07310f8272d170f8ab7fb2a2c13f15d8501ef8310801e36964c8eff485ef",
+            "version": "0.1.3"
+        },
+        {
+            "cabal_sha256": "d50c4d0801a35be7875a040470c09863342514930c82a7d25780a6c2efc4fda9",
+            "flags": [
+                "-optimised-mixer"
+            ],
+            "package": "splitmix",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "1c11c87352ddbb13365380fe163f99bb8f8845ebc96ca1d572e5d3a9bf810bfa",
+            "version": "0.1"
+        },
+        {
+            "cabal_sha256": "5ca8674e95c46c7eb90f520c26aea22d403625c97697275434afba66ebd32b05",
+            "flags": [],
+            "package": "random",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "e4519cf7c058bfd5bdbe4acc782284acc9e25e74487208619ca83cbcd63fb9de",
+            "version": "1.2.0"
+        },
+        {
+            "cabal_sha256": "4d33a49cd383d50af090f1b888642d10116e43809f9da6023d9fc6f67d2656ee",
+            "flags": [],
+            "package": "edit-distance",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "3e8885ee2f56ad4da940f043ae8f981ee2fe336b5e8e4ba3f7436cff4f526c4a",
+            "version": "0.2.2.1"
+        },
+        {
+            "cabal_sha256": "fb98b08de467d51f788f8bd9391f0e9ab9bd4d8dfc264296b895ffea0d822dfa",
+            "flags": [
+                "+no-donna",
+                "+test-doctests",
+                "+test-hlint",
+                "+test-properties"
+            ],
+            "package": "ed25519",
+            "revision": 3,
+            "source": "hackage",
+            "src_sha256": "d8a5958ebfa9309790efade64275dc5c441b568645c45ceed1b0c6ff36d6156d",
+            "version": "0.0.5.0"
+        },
+        {
+            "cabal_sha256": "c9d3fa30fb6ab2ba16e037586ca79be6e57ec5f00381b6ee5f293400dbdf5515",
+            "flags": [
+                "+ofd-locking"
+            ],
+            "package": "lukko",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "8a79d113dc0ccef16c24d83379cc457485943027e777529c46362fecc06607d2",
+            "version": "0.1.1.2"
+        },
+        {
+            "cabal_sha256": "7a715414c4d494c9048cfb6d7634e07e7732ca154cb8938dc85f6ea192192e8c",
+            "flags": [
+                "-old-bytestring",
+                "-old-time"
+            ],
+            "package": "tar",
+            "revision": 2,
+            "source": "hackage",
+            "src_sha256": "b384449f62b2b0aa3e6d2cb1004b8060b01f21ec93e7b63e7af6d8fad8a9f1de",
+            "version": "0.5.1.1"
+        },
+        {
+            "cabal_sha256": "d34ddf5fece4d1e9d471b5298f36335bb3cfe12cb5a1b8525c42f0b665382f45",
+            "flags": [
+                "-non-blocking-ffi",
+                "-pkg-config"
+            ],
+            "package": "zlib",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "f0f810ff173560b60392db448455c0513b3239f48e43cb494b3733aa559621d0",
+            "version": "0.6.2.1"
+        },
+        {
+            "cabal_sha256": "692c385c085baa2813046ae58e31df21c250346b81c882431b5ffef76451a18a",
+            "flags": [
+                "+base48",
+                "+lukko",
+                "-mtl21",
+                "-old-directory",
+                "+use-network-uri"
+            ],
+            "package": "hackage-security",
+            "revision": 2,
+            "source": "hackage",
+            "src_sha256": "9162b473af5a21c1ff32a50b972b9acf51f4c901604a22cf08a2dccac2f82f17",
+            "version": "0.6.0.1"
+        },
+        {
+            "cabal_sha256": "44aa95ca762294ffbb28cf0af9c567d93b5d2c56e4f38ce5385a257d899f968e",
+            "flags": [],
+            "package": "regex-base",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "c41f82f5fc1157c961a4cbdc0cd5561e5aa44f339ce6e706d978d97e0ca6b914",
+            "version": "0.94.0.0"
+        },
+        {
+            "cabal_sha256": "690d1366e9ea6df71ded3daf49ca3d53c63eda3f95937962299b2391824dc3b3",
+            "flags": [
+                "-_regex-posix-clib"
+            ],
+            "package": "regex-posix",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "251300f1a6bb2e91abb8bf513a21981f8fab79c98a65acea2bb6d6a524414521",
+            "version": "0.96.0.0"
+        },
+        {
+            "cabal_sha256": "0a9a6dd29706258ae60a5c22aecc140a40743b8f08fc324fd9984e7dfbf3a80d",
+            "flags": [],
+            "package": "resolv",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "81a2bafad484db123cf8d17a02d98bb388a127fd0f822fa022589468a0e64671",
+            "version": "0.1.2.0"
+        },
+        {
+            "cabal_sha256": null,
+            "flags": [
+                "-debug-conflict-sets",
+                "-debug-expensive-assertions",
+                "-debug-tracetree",
+                "+lukko",
+                "+native-dns"
+            ],
+            "package": "cabal-install",
+            "revision": null,
+            "source": "local",
+            "src_sha256": null,
+            "version": "3.5.0.0"
+        }
+    ]
+}
diff --git a/devel/cabal-install/pkg/PLIST b/devel/cabal-install/pkg/PLIST
index dd206c9e9a7..32e5bcac413 100644
--- a/devel/cabal-install/pkg/PLIST
+++ b/devel/cabal-install/pkg/PLIST
@@ -2,4 +2,4 @@
 @bin bin/cabal
 @comment share/doc/${DISTNAME}/
 @comment share/doc/${DISTNAME}/LICENSE
-@man man/man1/cabal.1
+

Reply | Threaded
Open this post in threaded view
|

Re: devel/cabal-install 3.4.0.0 upgrade

Greg Steuck-5
Greg Steuck <[hidden email]> writes:

> Now that 3.4 is properly out I can upgrade it and to my surprise the old
> framework can be left untouched for cabal-install upgrade. So, as a
> first (backward compatible) step here's something we can submit ASAP.
>
> Matthias, if you don't feel like looking at this at the moment, could
> you let me know so I can corral another reviewer?
>
> OK?

I figured out where the man page was hiding. Update patch below.

Subject: [PATCH] Upgrade cabal-install to 3.4.0.0

Uses a bootstrap.py developed upstream to limit Haskell dependencies
to just lang/ghc. This will allow cabal-install to be at the base of
cabal-based Haskell ports framework.
---
 devel/cabal-install/Makefile                 |  91 +++--
 devel/cabal-install/distinfo                 |  84 ++++-
 devel/cabal-install/files/openbsd-8.6.4.json | 340 +++++++++++++++++++
 3 files changed, 487 insertions(+), 28 deletions(-)
 create mode 100644 devel/cabal-install/files/openbsd-8.6.4.json

diff --git a/devel/cabal-install/Makefile b/devel/cabal-install/Makefile
index 6f4c559ea84..5163aae457e 100644
--- a/devel/cabal-install/Makefile
+++ b/devel/cabal-install/Makefile
@@ -2,10 +2,14 @@
 
 COMMENT = command-line interface for Cabal and Hackage
 
-DISTNAME = cabal-install-2.4.0.0
+DISTNAME = cabal-install-3.4.0.0
 CATEGORIES = devel
 
-HOMEPAGE = http://www.haskell.org/cabal/
+GH_ACCOUNT = haskell
+GH_TAGNAME = ${DISTNAME}
+GH_PROJECT = cabal
+
+HOMEPAGE = https://github.com/haskell/cabal
 
 MAINTAINER = Matthias Kilian <[hidden email]>
 
@@ -14,35 +18,70 @@ PERMIT_PACKAGE = Yes
 
 WANTLIB = c charset ffi gmp iconv m pthread util z
 
-MODULES = lang/ghc
 MODGHC_BUILD =          cabal hackage nort
 
 LIB_DEPENDS = converters/libiconv \
  devel/gmp \
  devel/libffi
 
-# Avoids the dependency on resolve.
-MODGHC_SETUP_CONF_ARGS += -f-native-dns
-
-BUILD_DEPENDS += archivers/hs-zlib>=0.5.3,<0.7 \
- archivers/hs-zip-archive>=0.3.2.5,<0.5 \
- devel/hs-async>=2.0,<3 \
- devel/hs-base16-bytestring>=0.1.1,<0.2 \
- devel/hs-echo>=0.1.3,<0.2 \
- devel/hs-edit-distance>=0.2.2,<0.3 \
- devel/hs-hashable>=1.0,<2 \
- devel/hs-network>=2.6,<2.7 \
- devel/hs-network-uri>=2.6,<2.7 \
- devel/hs-random>=1,<1.2 \
- devel/hs-tar>=0.5.0.3,<0.6 \
- net/hs-HTTP>=4000.1.5,<4000.4 \
- security/hs-cryptohash-sha256>=0.11,<0.12 \
- security/hs-hackage-security>=0.5.2.2,<0.6
-
-# Cabal (part of lang/ghc) would have patched for a correct mandir,
-# but this is for now the only haskell program using Cabal to install a
-# man page.
-post-install:
- mv ${PREFIX}/share/man/man1/cabal.1 ${PREFIX}/man/man1/cabal.1
+# bootstrap.py handles the extraction of the rest of files.
+EXTRACT_ONLY = ${DISTNAME}.tar.gz
+DISTFILES = ${EXTRACT_ONLY}
+DIST_SUBDIR = hackage
+MASTER_SITES0 = https://hackage.haskell.org/package/
+
+# Produced by:
+#   cabal v2-run -w /usr/local/bin/ghc exe:cabal-bundler -- \
+#     --openbsd cabal -w /usr/local/bin/ghc -p cabal/dist-newstyle/cache/plan.json
+_MANIFEST = \
+ HTTP 4000.3.14 1 \
+ async 2.2.2 1 \
+ base16-bytestring 0.1.1.7 0 \
+ base64-bytestring 1.1.0.0 0 \
+ cryptohash-sha256 0.11.101.0 4 \
+ echo 0.1.3 1 \
+ ed25519 0.0.5.0 3 \
+ edit-distance 0.2.2.1 1 \
+ hackage-security 0.6.0.1 2 \
+ hashable 1.3.0.0 1 \
+ lukko 0.1.1.2 0 \
+ network 3.1.1.1 0 \
+ network-uri 2.6.3.0 0 \
+ random 1.2.0 0 \
+ regex-base 0.94.0.0 1 \
+ regex-posix 0.96.0.0 1 \
+ resolv 0.1.2.0 0 \
+ splitmix 0.1 0 \
+ tar 0.5.1.1 2 \
+ zlib 0.6.2.1 1 \
+
+.for _package _version _revision in ${_MANIFEST}
+DISTFILES += {${_package}-${_version}/}${_package}-${_version}.tar.gz:0
+DISTFILES += ${_package}-${_version}_${_revision}{${_package}-${_version}/revision/${_revision}}.cabal:0
+.endfor
+
+BUILD_DEPENDS += lang/ghc>=8.6.4
+
+MODULES = lang/python
+
+MODPY_VERSION = ${MODPY_DEFAULT_VERSION_3}
+
+post-extract:
+ @mkdir -p ${WRKBUILD}/_build/tarballs
+.for _package _version _revision in ${_MANIFEST}
+ @ln -s ${FULLDISTDIR}/${_package}-${_version}.tar.gz ${WRKBUILD}/_build/tarballs
+ @ln -s ${FULLDISTDIR}/${_package}-${_version}_${_revision}.cabal ${WRKBUILD}/_build/tarballs/${_package}.cabal
+.endfor
+
+# Uses the same fixed versions of packages as in _MANIFEST. The
+# distributed package currently doesn't have a 8.10.3 variant.  The
+# json file is generated by following cabal bootstrap instructions.
+do-build:
+ @cd ${WRKBUILD} && ${MODPY_BIN} bootstrap/bootstrap.py -d ${FILESDIR}/openbsd-8.6.4.json
+
+do-install:
+ @install -m755 ${WRKBUILD}/_build/bin/cabal ${PREFIX}/bin
+ ${PREFIX}/bin/cabal man --raw > ${WRKSRC}/cabal.1
+ ${INSTALL_MAN} ${WRKSRC}/cabal.1 ${PREFIX}/man/man1/cabal.1
 
 .include <bsd.port.mk>
diff --git a/devel/cabal-install/distinfo b/devel/cabal-install/distinfo
index ed70ae5f09c..b1f98a02fad 100644
--- a/devel/cabal-install/distinfo
+++ b/devel/cabal-install/distinfo
@@ -1,2 +1,82 @@
-SHA256 (ghc/cabal-install-2.4.0.0.tar.gz) = EynpVktzawz7p205YgTZVWnwgOfFT+NVttlhjjqgvvY=
-SIZE (ghc/cabal-install-2.4.0.0.tar.gz) = 614491
+SHA256 (hackage/HTTP-4000.3.14.tar.gz) = pgLX8w6RcWTGpjT4yx9d9ISQSIWNsBOAoIdeFuWqaHs=
+SHA256 (hackage/HTTP-4000.3.14_1.cabal) = PBmXX9/Y0Ffq5YhHvaanlRStiC/W+OrXKsAkevNL38Y=
+SHA256 (hackage/async-2.2.2.tar.gz) = S0qxrILEUUTYLG2vbLa6Req5lX2tRHh/pehp4j1zu/8=
+SHA256 (hackage/async-2.2.2_1.cabal) = oXjBZoVtp/8i/kUAM3tUgS6U/SBZQJRSGH1y4Fft6c0=
+SHA256 (hackage/base16-bytestring-0.1.1.7.tar.gz) = UlaJZ51cyA+lMsHVz+rOD2K7tUE0+tUU8boA0Of+abo=
+SHA256 (hackage/base16-bytestring-0.1.1.7_0.cabal) = jLuiUF1NpPbPyQzTbI6K0MCcBWU4SB6gDosQt49wyxA=
+SHA256 (hackage/base64-bytestring-1.1.0.0.tar.gz) = IQ1skEIkHKUu5dic8iHb600OZLNzkTRTaQNa0tm0rKk=
+SHA256 (hackage/base64-bytestring-1.1.0.0_0.cabal) = GQJk/vnmXZCF8AzNpBkTcJbR3JR3fFgnK8loIdx/N8M=
+SHA256 (hackage/cabal-install-3.4.0.0.tar.gz) = 5PvV6x13QAdGqZNnkYHxWapBWje5MbJtZ/VgL2POlxw=
+SHA256 (hackage/cryptohash-sha256-0.11.101.0.tar.gz) = UnVkNdvqJI40T7y8xd9TB/YN+s8zff0RrjDxx6TaBd0=
+SHA256 (hackage/cryptohash-sha256-0.11.101.0_4.cabal) = uWPWMI2wljYtc9nGA7MxzxiKppMQGV9Hnf7fYEXX5gI=
+SHA256 (hackage/echo-0.1.3.tar.gz) = cE8HMQ+CctFw+Kt/sqLBPxXYUB74MQgB42lkyO/0he8=
+SHA256 (hackage/echo-0.1.3_1.cabal) = VJC+nPvqleFKemi30FWujSlYIuCxRtKsgoWz5aPjKC8=
+SHA256 (hackage/ed25519-0.0.5.0.tar.gz) = 2KWVjr+pMJeQ763mQnXcXEQbVoZFxFzu0bDG/zbWFW0=
+SHA256 (hackage/ed25519-0.0.5.0_3.cabal) = +5iwjeRn1R94j4vZOR8Omrm9TY38JkKWuJX/6g2CLfo=
+SHA256 (hackage/edit-distance-0.2.2.1.tar.gz) = PoiF7i9WrU2pQPBDro+YHuL+M2tejkuj90Ns/09SbEo=
+SHA256 (hackage/edit-distance-0.2.2.1_1.cabal) = TTOknNOD1QrwkPG4iGQtEBFuQ4CfnaYCPZ/G9n0mVu4=
+SHA256 (hackage/hackage-security-0.6.0.1.tar.gz) = kWK0c69aIcH/MqULlyuaz1H0yQFgSiLPCKLcysL4Lxc=
+SHA256 (hackage/hackage-security-0.6.0.1_2.cabal) = aSw4XAhbqigTBGrljjHfIcJQNGuByIJDG1/+92RRoYo=
+SHA256 (hackage/hashable-1.3.0.0.tar.gz) = gi5UE/vMymrohNOrpAZkIsi11Y0j0Yuey1wDJzuxmrQ=
+SHA256 (hackage/hashable-1.3.0.0_1.cabal) = THDxQHiBBZ6TVQ03QhkSVClrJze3k6dCvZATSPs+H7E=
+SHA256 (hackage/lukko-0.1.1.2.tar.gz) = innRE9wMzvFsJNgzecxFdIWUMCfnd1KcRjYv7MBmB9I=
+SHA256 (hackage/lukko-0.1.1.2_0.cabal) = ydP6MPtqsroW4DdYbKeb5uV+xfADgbbuXyk0ANvfVRU=
+SHA256 (hackage/network-3.1.1.1.tar.gz) = 1+9ZAXP/8qtSL7wWfz+vuGfk7Pyiees+8NE3tR8ULJo=
+SHA256 (hackage/network-3.1.1.1_0.cabal) = twTLZnbAPpgmcZDfeXSXWHV2oulglFUOoUNBUjm75m4=
+SHA256 (hackage/network-uri-2.6.3.0.tar.gz) = oBwTifFdLMLoR5FHN/cGEzuxHwxfjuiXEaNqJbevpyM=
+SHA256 (hackage/network-uri-2.6.3.0_0.cabal) = 0tn/OoDZstH/MXo1S8DFbMEJxppMJEnl/HEtPdzoPt4=
+SHA256 (hackage/random-1.2.0.tar.gz) = 5FGc98BYv9W9vkrMeCKErMniXnRIcghhnKg8vNY/ud4=
+SHA256 (hackage/random-1.2.0_0.cabal) = XKhnTpXEbH65D1IMJq6iLUA2Jcl2lydUNK+6ZuvTKwU=
+SHA256 (hackage/regex-base-0.94.0.0.tar.gz) = xB+C9fwRV8lhpMvcDNVWHlqkTzOc5ucG2XjZfgymuRQ=
+SHA256 (hackage/regex-base-0.94.0.0_1.cabal) = RKqVynYilP+7KM8K+cVn2TtdLFbk84zlOFolfYmflo4=
+SHA256 (hackage/regex-posix-0.96.0.0.tar.gz) = JRMA8aa7LpGruL9ROiGYH4+recmKZazqK7bWpSRBRSE=
+SHA256 (hackage/regex-posix-0.96.0.0_1.cabal) = aQ0TZunqbfcd7T2vSco9U8Y+2j+Vk3liKZsjkYJNw7M=
+SHA256 (hackage/resolv-0.1.2.0.tar.gz) = gaK6+tSE2xI8+NF6AtmLs4ihJ/0Pgi+gIliUaKDmRnE=
+SHA256 (hackage/resolv-0.1.2.0_0.cabal) = Cppt0pcGJYrmClwirswUCkB0O48I/DJP2ZhOffvzqA0=
+SHA256 (hackage/splitmix-0.1.tar.gz) = HBHIc1LduxM2U4D+Fj+Zu4+IRevJbKHVcuXTqb+BC/o=
+SHA256 (hackage/splitmix-0.1_0.cabal) = 1QxNCAGjW+eHWgQEcMCYYzQlFJMMgqfSV4Cmwu/E/ak=
+SHA256 (hackage/tar-0.5.1.1.tar.gz) = s4REn2KysKo+bSyxAEuAYLAfIeyT57Y+evbY+tip8d4=
+SHA256 (hackage/tar-0.5.1.1_2.cabal) = enFUFMTUlMkEjPttdjTgfncyyhVMuJONyF9uoZIZLow=
+SHA256 (hackage/zlib-0.6.2.1.tar.gz) = 8PgQ/xc1YLYDkttEhFXAUTsyOfSOQ8tJSzczqlWWIdA=
+SHA256 (hackage/zlib-0.6.2.1_1.cabal) = 003fX+zk0enUcbUpjzYzW7PP4Sy1obhSXELwtmU4L0U=
+SIZE (hackage/HTTP-4000.3.14.tar.gz) = 72938
+SIZE (hackage/HTTP-4000.3.14_1.cabal) = 5843
+SIZE (hackage/async-2.2.2.tar.gz) = 12927
+SIZE (hackage/async-2.2.2_1.cabal) = 2934
+SIZE (hackage/base16-bytestring-0.1.1.7.tar.gz) = 5136
+SIZE (hackage/base16-bytestring-0.1.1.7_0.cabal) = 2153
+SIZE (hackage/base64-bytestring-1.1.0.0.tar.gz) = 12076
+SIZE (hackage/base64-bytestring-1.1.0.0_0.cabal) = 2334
+SIZE (hackage/cabal-install-3.4.0.0.tar.gz) = 2072483
+SIZE (hackage/cryptohash-sha256-0.11.101.0.tar.gz) = 14996
+SIZE (hackage/cryptohash-sha256-0.11.101.0_4.cabal) = 5417
+SIZE (hackage/echo-0.1.3.tar.gz) = 5373
+SIZE (hackage/echo-0.1.3_1.cabal) = 2500
+SIZE (hackage/ed25519-0.0.5.0.tar.gz) = 80034
+SIZE (hackage/ed25519-0.0.5.0_3.cabal) = 4165
+SIZE (hackage/edit-distance-0.2.2.1.tar.gz) = 13228
+SIZE (hackage/edit-distance-0.2.2.1_1.cabal) = 2351
+SIZE (hackage/hackage-security-0.6.0.1.tar.gz) = 86006
+SIZE (hackage/hackage-security-0.6.0.1_2.cabal) = 12001
+SIZE (hackage/hashable-1.3.0.0.tar.gz) = 29835
+SIZE (hackage/hashable-1.3.0.0_1.cabal) = 5206
+SIZE (hackage/lukko-0.1.1.2.tar.gz) = 28366
+SIZE (hackage/lukko-0.1.1.2_0.cabal) = 4485
+SIZE (hackage/network-3.1.1.1.tar.gz) = 118478
+SIZE (hackage/network-3.1.1.1_0.cabal) = 4268
+SIZE (hackage/network-uri-2.6.3.0.tar.gz) = 31997
+SIZE (hackage/network-uri-2.6.3.0_0.cabal) = 2902
+SIZE (hackage/random-1.2.0.tar.gz) = 37889
+SIZE (hackage/random-1.2.0_0.cabal) = 5897
+SIZE (hackage/regex-base-0.94.0.0.tar.gz) = 9679
+SIZE (hackage/regex-base-0.94.0.0_1.cabal) = 2253
+SIZE (hackage/regex-posix-0.96.0.0.tar.gz) = 12529
+SIZE (hackage/regex-posix-0.96.0.0_1.cabal) = 2531
+SIZE (hackage/resolv-0.1.2.0.tar.gz) = 156710
+SIZE (hackage/resolv-0.1.2.0_0.cabal) = 4548
+SIZE (hackage/splitmix-0.1.tar.gz) = 18997
+SIZE (hackage/splitmix-0.1_0.cabal) = 5249
+SIZE (hackage/tar-0.5.1.1.tar.gz) = 39155
+SIZE (hackage/tar-0.5.1.1_2.cabal) = 5254
+SIZE (hackage/zlib-0.6.2.1.tar.gz) = 143424
+SIZE (hackage/zlib-0.6.2.1_1.cabal) = 4547
diff --git a/devel/cabal-install/files/openbsd-8.6.4.json b/devel/cabal-install/files/openbsd-8.6.4.json
new file mode 100644
index 00000000000..eee5f9eefeb
--- /dev/null
+++ b/devel/cabal-install/files/openbsd-8.6.4.json
@@ -0,0 +1,340 @@
+{
+    "builtin": [
+        {
+            "package": "rts",
+            "version": "1.0"
+        },
+        {
+            "package": "ghc-prim",
+            "version": "0.5.3"
+        },
+        {
+            "package": "integer-gmp",
+            "version": "1.0.2.0"
+        },
+        {
+            "package": "base",
+            "version": "4.12.0.0"
+        },
+        {
+            "package": "array",
+            "version": "0.5.3.0"
+        },
+        {
+            "package": "deepseq",
+            "version": "1.4.4.0"
+        },
+        {
+            "package": "bytestring",
+            "version": "0.10.8.2"
+        },
+        {
+            "package": "containers",
+            "version": "0.6.0.1"
+        },
+        {
+            "package": "binary",
+            "version": "0.8.6.0"
+        },
+        {
+            "package": "filepath",
+            "version": "1.4.2.1"
+        },
+        {
+            "package": "time",
+            "version": "1.8.0.2"
+        },
+        {
+            "package": "unix",
+            "version": "2.7.2.2"
+        },
+        {
+            "package": "directory",
+            "version": "1.3.3.0"
+        },
+        {
+            "package": "transformers",
+            "version": "0.5.6.2"
+        },
+        {
+            "package": "mtl",
+            "version": "2.2.2"
+        },
+        {
+            "package": "text",
+            "version": "1.2.3.1"
+        },
+        {
+            "package": "parsec",
+            "version": "3.1.13.0"
+        },
+        {
+            "package": "pretty",
+            "version": "1.1.3.6"
+        },
+        {
+            "package": "process",
+            "version": "1.6.5.0"
+        },
+        {
+            "package": "ghc-boot-th",
+            "version": "8.6.4"
+        },
+        {
+            "package": "template-haskell",
+            "version": "2.14.0.0"
+        },
+        {
+            "package": "stm",
+            "version": "2.5.0.0"
+        }
+    ],
+    "dependencies": [
+        {
+            "cabal_sha256": null,
+            "flags": [
+                "-bundled-binary-generic"
+            ],
+            "package": "Cabal",
+            "revision": null,
+            "source": "local",
+            "src_sha256": null,
+            "version": "3.4.0.0"
+        },
+        {
+            "cabal_sha256": "b704cb6676c03e98267190df797497587576a2e96094550ea143415239bbe66e",
+            "flags": [],
+            "package": "network",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "d7ef590173fff2ab522fbc167f3fafb867e4ecfca279eb3ef0d137b51f142c9a",
+            "version": "3.1.1.1"
+        },
+        {
+            "cabal_sha256": "d2d9ff3a80d9b2d1ff317a354bc0c56cc109c69a4c2449e5fc712d3ddce83ede",
+            "flags": [],
+            "package": "network-uri",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "a01c1389f15d2cc2e847914737f706133bb11f0c5f8ee89711a36a25b7afa723",
+            "version": "2.6.3.0"
+        },
+        {
+            "cabal_sha256": "3c19975fdfd8d057eae58847bda6a79514ad882fd6f8ead72ac0247af34bdfc6",
+            "flags": [
+                "-conduit10",
+                "-mtl1",
+                "+network-uri",
+                "-warn-as-error",
+                "-warp-tests"
+            ],
+            "package": "HTTP",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "a602d7f30e917164c6a634f8cb1f5df4849048858db01380a0875e16e5aa687b",
+            "version": "4000.3.14"
+        },
+        {
+            "cabal_sha256": "4c70f1407881059e93550d3742191254296b2737b793a742bd901348fb3e1fb1",
+            "flags": [
+                "-examples",
+                "+integer-gmp",
+                "+sse2",
+                "-sse41"
+            ],
+            "package": "hashable",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "822e5413fbccca6ae884d3aba4066422c8b5d58d23d18b9ecb5c03273bb19ab4",
+            "version": "1.3.0.0"
+        },
+        {
+            "cabal_sha256": "a178c166856da7ff22fe4500337b54812e94fd2059409452187d72e057ede9cd",
+            "flags": [
+                "-bench"
+            ],
+            "package": "async",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "4b4ab1ac82c45144d82c6daf6cb6ba45eab9957dad44787fa5e869e23d73bbff",
+            "version": "2.2.2"
+        },
+        {
+            "cabal_sha256": "8cbba2505d4da4f6cfc90cd36c8e8ad0c09c056538481ea00e8b10b78f70cb10",
+            "flags": [],
+            "package": "base16-bytestring",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "525689679d5cc80fa532c1d5cfeace0f62bbb54134fad514f1ba00d0e7fe69ba",
+            "version": "0.1.1.7"
+        },
+        {
+            "cabal_sha256": "190264fef9e65d9085f00ccda419137096d1dc94777c58272bc96821dc7f37c3",
+            "flags": [],
+            "package": "base64-bytestring",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "210d6c9042241ca52ee5d89cf221dbeb4d0e64b37391345369035ad2d9b4aca9",
+            "version": "1.1.0.0"
+        },
+        {
+            "cabal_sha256": "b963d6308db096362d73d9c603b331cf188aa69310195f479dfedf6045d7e602",
+            "flags": [
+                "-exe"
+            ],
+            "package": "cryptohash-sha256",
+            "revision": 4,
+            "source": "hackage",
+            "src_sha256": "52756435dbea248e344fbcbcc5df5307f60dfacf337dfd11ae30f1c7a4da05dd",
+            "version": "0.11.101.0"
+        },
+        {
+            "cabal_sha256": "5490be9cfbea95e14a7a68b7d055ae8d295822e0b146d2ac8285b3e5a3e3282f",
+            "flags": [
+                "-example"
+            ],
+            "package": "echo",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "704f07310f8272d170f8ab7fb2a2c13f15d8501ef8310801e36964c8eff485ef",
+            "version": "0.1.3"
+        },
+        {
+            "cabal_sha256": "d50c4d0801a35be7875a040470c09863342514930c82a7d25780a6c2efc4fda9",
+            "flags": [
+                "-optimised-mixer"
+            ],
+            "package": "splitmix",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "1c11c87352ddbb13365380fe163f99bb8f8845ebc96ca1d572e5d3a9bf810bfa",
+            "version": "0.1"
+        },
+        {
+            "cabal_sha256": "5ca8674e95c46c7eb90f520c26aea22d403625c97697275434afba66ebd32b05",
+            "flags": [],
+            "package": "random",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "e4519cf7c058bfd5bdbe4acc782284acc9e25e74487208619ca83cbcd63fb9de",
+            "version": "1.2.0"
+        },
+        {
+            "cabal_sha256": "4d33a49cd383d50af090f1b888642d10116e43809f9da6023d9fc6f67d2656ee",
+            "flags": [],
+            "package": "edit-distance",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "3e8885ee2f56ad4da940f043ae8f981ee2fe336b5e8e4ba3f7436cff4f526c4a",
+            "version": "0.2.2.1"
+        },
+        {
+            "cabal_sha256": "fb98b08de467d51f788f8bd9391f0e9ab9bd4d8dfc264296b895ffea0d822dfa",
+            "flags": [
+                "+no-donna",
+                "+test-doctests",
+                "+test-hlint",
+                "+test-properties"
+            ],
+            "package": "ed25519",
+            "revision": 3,
+            "source": "hackage",
+            "src_sha256": "d8a5958ebfa9309790efade64275dc5c441b568645c45ceed1b0c6ff36d6156d",
+            "version": "0.0.5.0"
+        },
+        {
+            "cabal_sha256": "c9d3fa30fb6ab2ba16e037586ca79be6e57ec5f00381b6ee5f293400dbdf5515",
+            "flags": [
+                "+ofd-locking"
+            ],
+            "package": "lukko",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "8a79d113dc0ccef16c24d83379cc457485943027e777529c46362fecc06607d2",
+            "version": "0.1.1.2"
+        },
+        {
+            "cabal_sha256": "7a715414c4d494c9048cfb6d7634e07e7732ca154cb8938dc85f6ea192192e8c",
+            "flags": [
+                "-old-bytestring",
+                "-old-time"
+            ],
+            "package": "tar",
+            "revision": 2,
+            "source": "hackage",
+            "src_sha256": "b384449f62b2b0aa3e6d2cb1004b8060b01f21ec93e7b63e7af6d8fad8a9f1de",
+            "version": "0.5.1.1"
+        },
+        {
+            "cabal_sha256": "d34ddf5fece4d1e9d471b5298f36335bb3cfe12cb5a1b8525c42f0b665382f45",
+            "flags": [
+                "-non-blocking-ffi",
+                "-pkg-config"
+            ],
+            "package": "zlib",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "f0f810ff173560b60392db448455c0513b3239f48e43cb494b3733aa559621d0",
+            "version": "0.6.2.1"
+        },
+        {
+            "cabal_sha256": "692c385c085baa2813046ae58e31df21c250346b81c882431b5ffef76451a18a",
+            "flags": [
+                "+base48",
+                "+lukko",
+                "-mtl21",
+                "-old-directory",
+                "+use-network-uri"
+            ],
+            "package": "hackage-security",
+            "revision": 2,
+            "source": "hackage",
+            "src_sha256": "9162b473af5a21c1ff32a50b972b9acf51f4c901604a22cf08a2dccac2f82f17",
+            "version": "0.6.0.1"
+        },
+        {
+            "cabal_sha256": "44aa95ca762294ffbb28cf0af9c567d93b5d2c56e4f38ce5385a257d899f968e",
+            "flags": [],
+            "package": "regex-base",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "c41f82f5fc1157c961a4cbdc0cd5561e5aa44f339ce6e706d978d97e0ca6b914",
+            "version": "0.94.0.0"
+        },
+        {
+            "cabal_sha256": "690d1366e9ea6df71ded3daf49ca3d53c63eda3f95937962299b2391824dc3b3",
+            "flags": [
+                "-_regex-posix-clib"
+            ],
+            "package": "regex-posix",
+            "revision": 1,
+            "source": "hackage",
+            "src_sha256": "251300f1a6bb2e91abb8bf513a21981f8fab79c98a65acea2bb6d6a524414521",
+            "version": "0.96.0.0"
+        },
+        {
+            "cabal_sha256": "0a9a6dd29706258ae60a5c22aecc140a40743b8f08fc324fd9984e7dfbf3a80d",
+            "flags": [],
+            "package": "resolv",
+            "revision": 0,
+            "source": "hackage",
+            "src_sha256": "81a2bafad484db123cf8d17a02d98bb388a127fd0f822fa022589468a0e64671",
+            "version": "0.1.2.0"
+        },
+        {
+            "cabal_sha256": null,
+            "flags": [
+                "-debug-conflict-sets",
+                "-debug-expensive-assertions",
+                "-debug-tracetree",
+                "+lukko",
+                "+native-dns"
+            ],
+            "package": "cabal-install",
+            "revision": null,
+            "source": "local",
+            "src_sha256": null,
+            "version": "3.5.0.0"
+        }
+    ]
+}
--
2.30.1

Reply | Threaded
Open this post in threaded view
|

Re: devel/cabal-install 3.4.0.0 upgrade

Matthias Kilian
Hi Greg,

On Mon, Feb 22, 2021 at 08:40:40AM -0800, Greg Steuck wrote:

> > Now that 3.4 is properly out I can upgrade it and to my surprise the old
> > framework can be left untouched for cabal-install upgrade. So, as a
> > first (backward compatible) step here's something we can submit ASAP.
> >
> > Matthias, if you don't feel like looking at this at the moment, could
> > you let me know so I can corral another reviewer?
> >
> > OK?
>
> I figured out where the man page was hiding. Update patch below.
>
> Subject: [PATCH] Upgrade cabal-install to 3.4.0.0
>
> Uses a bootstrap.py developed upstream to limit Haskell dependencies
> to just lang/ghc. This will allow cabal-install to be at the base of
> cabal-based Haskell ports framework.

Looks and builds fine to me. Thanks!

Ciao,
        Kili

> ---
>  devel/cabal-install/Makefile                 |  91 +++--
>  devel/cabal-install/distinfo                 |  84 ++++-
>  devel/cabal-install/files/openbsd-8.6.4.json | 340 +++++++++++++++++++
>  3 files changed, 487 insertions(+), 28 deletions(-)
>  create mode 100644 devel/cabal-install/files/openbsd-8.6.4.json
>
> diff --git a/devel/cabal-install/Makefile b/devel/cabal-install/Makefile
> index 6f4c559ea84..5163aae457e 100644
> --- a/devel/cabal-install/Makefile
> +++ b/devel/cabal-install/Makefile
> @@ -2,10 +2,14 @@
>  
>  COMMENT = command-line interface for Cabal and Hackage
>  
> -DISTNAME = cabal-install-2.4.0.0
> +DISTNAME = cabal-install-3.4.0.0
>  CATEGORIES = devel
>  
> -HOMEPAGE = http://www.haskell.org/cabal/
> +GH_ACCOUNT = haskell
> +GH_TAGNAME = ${DISTNAME}
> +GH_PROJECT = cabal
> +
> +HOMEPAGE = https://github.com/haskell/cabal
>  
>  MAINTAINER = Matthias Kilian <[hidden email]>
>  
> @@ -14,35 +18,70 @@ PERMIT_PACKAGE = Yes
>  
>  WANTLIB = c charset ffi gmp iconv m pthread util z
>  
> -MODULES = lang/ghc
>  MODGHC_BUILD =          cabal hackage nort
>  
>  LIB_DEPENDS = converters/libiconv \
>   devel/gmp \
>   devel/libffi
>  
> -# Avoids the dependency on resolve.
> -MODGHC_SETUP_CONF_ARGS += -f-native-dns
> -
> -BUILD_DEPENDS += archivers/hs-zlib>=0.5.3,<0.7 \
> - archivers/hs-zip-archive>=0.3.2.5,<0.5 \
> - devel/hs-async>=2.0,<3 \
> - devel/hs-base16-bytestring>=0.1.1,<0.2 \
> - devel/hs-echo>=0.1.3,<0.2 \
> - devel/hs-edit-distance>=0.2.2,<0.3 \
> - devel/hs-hashable>=1.0,<2 \
> - devel/hs-network>=2.6,<2.7 \
> - devel/hs-network-uri>=2.6,<2.7 \
> - devel/hs-random>=1,<1.2 \
> - devel/hs-tar>=0.5.0.3,<0.6 \
> - net/hs-HTTP>=4000.1.5,<4000.4 \
> - security/hs-cryptohash-sha256>=0.11,<0.12 \
> - security/hs-hackage-security>=0.5.2.2,<0.6
> -
> -# Cabal (part of lang/ghc) would have patched for a correct mandir,
> -# but this is for now the only haskell program using Cabal to install a
> -# man page.
> -post-install:
> - mv ${PREFIX}/share/man/man1/cabal.1 ${PREFIX}/man/man1/cabal.1
> +# bootstrap.py handles the extraction of the rest of files.
> +EXTRACT_ONLY = ${DISTNAME}.tar.gz
> +DISTFILES = ${EXTRACT_ONLY}
> +DIST_SUBDIR = hackage
> +MASTER_SITES0 = https://hackage.haskell.org/package/
> +
> +# Produced by:
> +#   cabal v2-run -w /usr/local/bin/ghc exe:cabal-bundler -- \
> +#     --openbsd cabal -w /usr/local/bin/ghc -p cabal/dist-newstyle/cache/plan.json
> +_MANIFEST = \
> + HTTP 4000.3.14 1 \
> + async 2.2.2 1 \
> + base16-bytestring 0.1.1.7 0 \
> + base64-bytestring 1.1.0.0 0 \
> + cryptohash-sha256 0.11.101.0 4 \
> + echo 0.1.3 1 \
> + ed25519 0.0.5.0 3 \
> + edit-distance 0.2.2.1 1 \
> + hackage-security 0.6.0.1 2 \
> + hashable 1.3.0.0 1 \
> + lukko 0.1.1.2 0 \
> + network 3.1.1.1 0 \
> + network-uri 2.6.3.0 0 \
> + random 1.2.0 0 \
> + regex-base 0.94.0.0 1 \
> + regex-posix 0.96.0.0 1 \
> + resolv 0.1.2.0 0 \
> + splitmix 0.1 0 \
> + tar 0.5.1.1 2 \
> + zlib 0.6.2.1 1 \
> +
> +.for _package _version _revision in ${_MANIFEST}
> +DISTFILES += {${_package}-${_version}/}${_package}-${_version}.tar.gz:0
> +DISTFILES += ${_package}-${_version}_${_revision}{${_package}-${_version}/revision/${_revision}}.cabal:0
> +.endfor
> +
> +BUILD_DEPENDS += lang/ghc>=8.6.4
> +
> +MODULES = lang/python
> +
> +MODPY_VERSION = ${MODPY_DEFAULT_VERSION_3}
> +
> +post-extract:
> + @mkdir -p ${WRKBUILD}/_build/tarballs
> +.for _package _version _revision in ${_MANIFEST}
> + @ln -s ${FULLDISTDIR}/${_package}-${_version}.tar.gz ${WRKBUILD}/_build/tarballs
> + @ln -s ${FULLDISTDIR}/${_package}-${_version}_${_revision}.cabal ${WRKBUILD}/_build/tarballs/${_package}.cabal
> +.endfor
> +
> +# Uses the same fixed versions of packages as in _MANIFEST. The
> +# distributed package currently doesn't have a 8.10.3 variant.  The
> +# json file is generated by following cabal bootstrap instructions.
> +do-build:
> + @cd ${WRKBUILD} && ${MODPY_BIN} bootstrap/bootstrap.py -d ${FILESDIR}/openbsd-8.6.4.json
> +
> +do-install:
> + @install -m755 ${WRKBUILD}/_build/bin/cabal ${PREFIX}/bin
> + ${PREFIX}/bin/cabal man --raw > ${WRKSRC}/cabal.1
> + ${INSTALL_MAN} ${WRKSRC}/cabal.1 ${PREFIX}/man/man1/cabal.1
>  
>  .include <bsd.port.mk>
> diff --git a/devel/cabal-install/distinfo b/devel/cabal-install/distinfo
> index ed70ae5f09c..b1f98a02fad 100644
> --- a/devel/cabal-install/distinfo
> +++ b/devel/cabal-install/distinfo
> @@ -1,2 +1,82 @@
> -SHA256 (ghc/cabal-install-2.4.0.0.tar.gz) = EynpVktzawz7p205YgTZVWnwgOfFT+NVttlhjjqgvvY=
> -SIZE (ghc/cabal-install-2.4.0.0.tar.gz) = 614491
> +SHA256 (hackage/HTTP-4000.3.14.tar.gz) = pgLX8w6RcWTGpjT4yx9d9ISQSIWNsBOAoIdeFuWqaHs=
> +SHA256 (hackage/HTTP-4000.3.14_1.cabal) = PBmXX9/Y0Ffq5YhHvaanlRStiC/W+OrXKsAkevNL38Y=
> +SHA256 (hackage/async-2.2.2.tar.gz) = S0qxrILEUUTYLG2vbLa6Req5lX2tRHh/pehp4j1zu/8=
> +SHA256 (hackage/async-2.2.2_1.cabal) = oXjBZoVtp/8i/kUAM3tUgS6U/SBZQJRSGH1y4Fft6c0=
> +SHA256 (hackage/base16-bytestring-0.1.1.7.tar.gz) = UlaJZ51cyA+lMsHVz+rOD2K7tUE0+tUU8boA0Of+abo=
> +SHA256 (hackage/base16-bytestring-0.1.1.7_0.cabal) = jLuiUF1NpPbPyQzTbI6K0MCcBWU4SB6gDosQt49wyxA=
> +SHA256 (hackage/base64-bytestring-1.1.0.0.tar.gz) = IQ1skEIkHKUu5dic8iHb600OZLNzkTRTaQNa0tm0rKk=
> +SHA256 (hackage/base64-bytestring-1.1.0.0_0.cabal) = GQJk/vnmXZCF8AzNpBkTcJbR3JR3fFgnK8loIdx/N8M=
> +SHA256 (hackage/cabal-install-3.4.0.0.tar.gz) = 5PvV6x13QAdGqZNnkYHxWapBWje5MbJtZ/VgL2POlxw=
> +SHA256 (hackage/cryptohash-sha256-0.11.101.0.tar.gz) = UnVkNdvqJI40T7y8xd9TB/YN+s8zff0RrjDxx6TaBd0=
> +SHA256 (hackage/cryptohash-sha256-0.11.101.0_4.cabal) = uWPWMI2wljYtc9nGA7MxzxiKppMQGV9Hnf7fYEXX5gI=
> +SHA256 (hackage/echo-0.1.3.tar.gz) = cE8HMQ+CctFw+Kt/sqLBPxXYUB74MQgB42lkyO/0he8=
> +SHA256 (hackage/echo-0.1.3_1.cabal) = VJC+nPvqleFKemi30FWujSlYIuCxRtKsgoWz5aPjKC8=
> +SHA256 (hackage/ed25519-0.0.5.0.tar.gz) = 2KWVjr+pMJeQ763mQnXcXEQbVoZFxFzu0bDG/zbWFW0=
> +SHA256 (hackage/ed25519-0.0.5.0_3.cabal) = +5iwjeRn1R94j4vZOR8Omrm9TY38JkKWuJX/6g2CLfo=
> +SHA256 (hackage/edit-distance-0.2.2.1.tar.gz) = PoiF7i9WrU2pQPBDro+YHuL+M2tejkuj90Ns/09SbEo=
> +SHA256 (hackage/edit-distance-0.2.2.1_1.cabal) = TTOknNOD1QrwkPG4iGQtEBFuQ4CfnaYCPZ/G9n0mVu4=
> +SHA256 (hackage/hackage-security-0.6.0.1.tar.gz) = kWK0c69aIcH/MqULlyuaz1H0yQFgSiLPCKLcysL4Lxc=
> +SHA256 (hackage/hackage-security-0.6.0.1_2.cabal) = aSw4XAhbqigTBGrljjHfIcJQNGuByIJDG1/+92RRoYo=
> +SHA256 (hackage/hashable-1.3.0.0.tar.gz) = gi5UE/vMymrohNOrpAZkIsi11Y0j0Yuey1wDJzuxmrQ=
> +SHA256 (hackage/hashable-1.3.0.0_1.cabal) = THDxQHiBBZ6TVQ03QhkSVClrJze3k6dCvZATSPs+H7E=
> +SHA256 (hackage/lukko-0.1.1.2.tar.gz) = innRE9wMzvFsJNgzecxFdIWUMCfnd1KcRjYv7MBmB9I=
> +SHA256 (hackage/lukko-0.1.1.2_0.cabal) = ydP6MPtqsroW4DdYbKeb5uV+xfADgbbuXyk0ANvfVRU=
> +SHA256 (hackage/network-3.1.1.1.tar.gz) = 1+9ZAXP/8qtSL7wWfz+vuGfk7Pyiees+8NE3tR8ULJo=
> +SHA256 (hackage/network-3.1.1.1_0.cabal) = twTLZnbAPpgmcZDfeXSXWHV2oulglFUOoUNBUjm75m4=
> +SHA256 (hackage/network-uri-2.6.3.0.tar.gz) = oBwTifFdLMLoR5FHN/cGEzuxHwxfjuiXEaNqJbevpyM=
> +SHA256 (hackage/network-uri-2.6.3.0_0.cabal) = 0tn/OoDZstH/MXo1S8DFbMEJxppMJEnl/HEtPdzoPt4=
> +SHA256 (hackage/random-1.2.0.tar.gz) = 5FGc98BYv9W9vkrMeCKErMniXnRIcghhnKg8vNY/ud4=
> +SHA256 (hackage/random-1.2.0_0.cabal) = XKhnTpXEbH65D1IMJq6iLUA2Jcl2lydUNK+6ZuvTKwU=
> +SHA256 (hackage/regex-base-0.94.0.0.tar.gz) = xB+C9fwRV8lhpMvcDNVWHlqkTzOc5ucG2XjZfgymuRQ=
> +SHA256 (hackage/regex-base-0.94.0.0_1.cabal) = RKqVynYilP+7KM8K+cVn2TtdLFbk84zlOFolfYmflo4=
> +SHA256 (hackage/regex-posix-0.96.0.0.tar.gz) = JRMA8aa7LpGruL9ROiGYH4+recmKZazqK7bWpSRBRSE=
> +SHA256 (hackage/regex-posix-0.96.0.0_1.cabal) = aQ0TZunqbfcd7T2vSco9U8Y+2j+Vk3liKZsjkYJNw7M=
> +SHA256 (hackage/resolv-0.1.2.0.tar.gz) = gaK6+tSE2xI8+NF6AtmLs4ihJ/0Pgi+gIliUaKDmRnE=
> +SHA256 (hackage/resolv-0.1.2.0_0.cabal) = Cppt0pcGJYrmClwirswUCkB0O48I/DJP2ZhOffvzqA0=
> +SHA256 (hackage/splitmix-0.1.tar.gz) = HBHIc1LduxM2U4D+Fj+Zu4+IRevJbKHVcuXTqb+BC/o=
> +SHA256 (hackage/splitmix-0.1_0.cabal) = 1QxNCAGjW+eHWgQEcMCYYzQlFJMMgqfSV4Cmwu/E/ak=
> +SHA256 (hackage/tar-0.5.1.1.tar.gz) = s4REn2KysKo+bSyxAEuAYLAfIeyT57Y+evbY+tip8d4=
> +SHA256 (hackage/tar-0.5.1.1_2.cabal) = enFUFMTUlMkEjPttdjTgfncyyhVMuJONyF9uoZIZLow=
> +SHA256 (hackage/zlib-0.6.2.1.tar.gz) = 8PgQ/xc1YLYDkttEhFXAUTsyOfSOQ8tJSzczqlWWIdA=
> +SHA256 (hackage/zlib-0.6.2.1_1.cabal) = 003fX+zk0enUcbUpjzYzW7PP4Sy1obhSXELwtmU4L0U=
> +SIZE (hackage/HTTP-4000.3.14.tar.gz) = 72938
> +SIZE (hackage/HTTP-4000.3.14_1.cabal) = 5843
> +SIZE (hackage/async-2.2.2.tar.gz) = 12927
> +SIZE (hackage/async-2.2.2_1.cabal) = 2934
> +SIZE (hackage/base16-bytestring-0.1.1.7.tar.gz) = 5136
> +SIZE (hackage/base16-bytestring-0.1.1.7_0.cabal) = 2153
> +SIZE (hackage/base64-bytestring-1.1.0.0.tar.gz) = 12076
> +SIZE (hackage/base64-bytestring-1.1.0.0_0.cabal) = 2334
> +SIZE (hackage/cabal-install-3.4.0.0.tar.gz) = 2072483
> +SIZE (hackage/cryptohash-sha256-0.11.101.0.tar.gz) = 14996
> +SIZE (hackage/cryptohash-sha256-0.11.101.0_4.cabal) = 5417
> +SIZE (hackage/echo-0.1.3.tar.gz) = 5373
> +SIZE (hackage/echo-0.1.3_1.cabal) = 2500
> +SIZE (hackage/ed25519-0.0.5.0.tar.gz) = 80034
> +SIZE (hackage/ed25519-0.0.5.0_3.cabal) = 4165
> +SIZE (hackage/edit-distance-0.2.2.1.tar.gz) = 13228
> +SIZE (hackage/edit-distance-0.2.2.1_1.cabal) = 2351
> +SIZE (hackage/hackage-security-0.6.0.1.tar.gz) = 86006
> +SIZE (hackage/hackage-security-0.6.0.1_2.cabal) = 12001
> +SIZE (hackage/hashable-1.3.0.0.tar.gz) = 29835
> +SIZE (hackage/hashable-1.3.0.0_1.cabal) = 5206
> +SIZE (hackage/lukko-0.1.1.2.tar.gz) = 28366
> +SIZE (hackage/lukko-0.1.1.2_0.cabal) = 4485
> +SIZE (hackage/network-3.1.1.1.tar.gz) = 118478
> +SIZE (hackage/network-3.1.1.1_0.cabal) = 4268
> +SIZE (hackage/network-uri-2.6.3.0.tar.gz) = 31997
> +SIZE (hackage/network-uri-2.6.3.0_0.cabal) = 2902
> +SIZE (hackage/random-1.2.0.tar.gz) = 37889
> +SIZE (hackage/random-1.2.0_0.cabal) = 5897
> +SIZE (hackage/regex-base-0.94.0.0.tar.gz) = 9679
> +SIZE (hackage/regex-base-0.94.0.0_1.cabal) = 2253
> +SIZE (hackage/regex-posix-0.96.0.0.tar.gz) = 12529
> +SIZE (hackage/regex-posix-0.96.0.0_1.cabal) = 2531
> +SIZE (hackage/resolv-0.1.2.0.tar.gz) = 156710
> +SIZE (hackage/resolv-0.1.2.0_0.cabal) = 4548
> +SIZE (hackage/splitmix-0.1.tar.gz) = 18997
> +SIZE (hackage/splitmix-0.1_0.cabal) = 5249
> +SIZE (hackage/tar-0.5.1.1.tar.gz) = 39155
> +SIZE (hackage/tar-0.5.1.1_2.cabal) = 5254
> +SIZE (hackage/zlib-0.6.2.1.tar.gz) = 143424
> +SIZE (hackage/zlib-0.6.2.1_1.cabal) = 4547
> diff --git a/devel/cabal-install/files/openbsd-8.6.4.json b/devel/cabal-install/files/openbsd-8.6.4.json
> new file mode 100644
> index 00000000000..eee5f9eefeb
> --- /dev/null
> +++ b/devel/cabal-install/files/openbsd-8.6.4.json
> @@ -0,0 +1,340 @@
> +{
> +    "builtin": [
> +        {
> +            "package": "rts",
> +            "version": "1.0"
> +        },
> +        {
> +            "package": "ghc-prim",
> +            "version": "0.5.3"
> +        },
> +        {
> +            "package": "integer-gmp",
> +            "version": "1.0.2.0"
> +        },
> +        {
> +            "package": "base",
> +            "version": "4.12.0.0"
> +        },
> +        {
> +            "package": "array",
> +            "version": "0.5.3.0"
> +        },
> +        {
> +            "package": "deepseq",
> +            "version": "1.4.4.0"
> +        },
> +        {
> +            "package": "bytestring",
> +            "version": "0.10.8.2"
> +        },
> +        {
> +            "package": "containers",
> +            "version": "0.6.0.1"
> +        },
> +        {
> +            "package": "binary",
> +            "version": "0.8.6.0"
> +        },
> +        {
> +            "package": "filepath",
> +            "version": "1.4.2.1"
> +        },
> +        {
> +            "package": "time",
> +            "version": "1.8.0.2"
> +        },
> +        {
> +            "package": "unix",
> +            "version": "2.7.2.2"
> +        },
> +        {
> +            "package": "directory",
> +            "version": "1.3.3.0"
> +        },
> +        {
> +            "package": "transformers",
> +            "version": "0.5.6.2"
> +        },
> +        {
> +            "package": "mtl",
> +            "version": "2.2.2"
> +        },
> +        {
> +            "package": "text",
> +            "version": "1.2.3.1"
> +        },
> +        {
> +            "package": "parsec",
> +            "version": "3.1.13.0"
> +        },
> +        {
> +            "package": "pretty",
> +            "version": "1.1.3.6"
> +        },
> +        {
> +            "package": "process",
> +            "version": "1.6.5.0"
> +        },
> +        {
> +            "package": "ghc-boot-th",
> +            "version": "8.6.4"
> +        },
> +        {
> +            "package": "template-haskell",
> +            "version": "2.14.0.0"
> +        },
> +        {
> +            "package": "stm",
> +            "version": "2.5.0.0"
> +        }
> +    ],
> +    "dependencies": [
> +        {
> +            "cabal_sha256": null,
> +            "flags": [
> +                "-bundled-binary-generic"
> +            ],
> +            "package": "Cabal",
> +            "revision": null,
> +            "source": "local",
> +            "src_sha256": null,
> +            "version": "3.4.0.0"
> +        },
> +        {
> +            "cabal_sha256": "b704cb6676c03e98267190df797497587576a2e96094550ea143415239bbe66e",
> +            "flags": [],
> +            "package": "network",
> +            "revision": 0,
> +            "source": "hackage",
> +            "src_sha256": "d7ef590173fff2ab522fbc167f3fafb867e4ecfca279eb3ef0d137b51f142c9a",
> +            "version": "3.1.1.1"
> +        },
> +        {
> +            "cabal_sha256": "d2d9ff3a80d9b2d1ff317a354bc0c56cc109c69a4c2449e5fc712d3ddce83ede",
> +            "flags": [],
> +            "package": "network-uri",
> +            "revision": 0,
> +            "source": "hackage",
> +            "src_sha256": "a01c1389f15d2cc2e847914737f706133bb11f0c5f8ee89711a36a25b7afa723",
> +            "version": "2.6.3.0"
> +        },
> +        {
> +            "cabal_sha256": "3c19975fdfd8d057eae58847bda6a79514ad882fd6f8ead72ac0247af34bdfc6",
> +            "flags": [
> +                "-conduit10",
> +                "-mtl1",
> +                "+network-uri",
> +                "-warn-as-error",
> +                "-warp-tests"
> +            ],
> +            "package": "HTTP",
> +            "revision": 1,
> +            "source": "hackage",
> +            "src_sha256": "a602d7f30e917164c6a634f8cb1f5df4849048858db01380a0875e16e5aa687b",
> +            "version": "4000.3.14"
> +        },
> +        {
> +            "cabal_sha256": "4c70f1407881059e93550d3742191254296b2737b793a742bd901348fb3e1fb1",
> +            "flags": [
> +                "-examples",
> +                "+integer-gmp",
> +                "+sse2",
> +                "-sse41"
> +            ],
> +            "package": "hashable",
> +            "revision": 1,
> +            "source": "hackage",
> +            "src_sha256": "822e5413fbccca6ae884d3aba4066422c8b5d58d23d18b9ecb5c03273bb19ab4",
> +            "version": "1.3.0.0"
> +        },
> +        {
> +            "cabal_sha256": "a178c166856da7ff22fe4500337b54812e94fd2059409452187d72e057ede9cd",
> +            "flags": [
> +                "-bench"
> +            ],
> +            "package": "async",
> +            "revision": 1,
> +            "source": "hackage",
> +            "src_sha256": "4b4ab1ac82c45144d82c6daf6cb6ba45eab9957dad44787fa5e869e23d73bbff",
> +            "version": "2.2.2"
> +        },
> +        {
> +            "cabal_sha256": "8cbba2505d4da4f6cfc90cd36c8e8ad0c09c056538481ea00e8b10b78f70cb10",
> +            "flags": [],
> +            "package": "base16-bytestring",
> +            "revision": 0,
> +            "source": "hackage",
> +            "src_sha256": "525689679d5cc80fa532c1d5cfeace0f62bbb54134fad514f1ba00d0e7fe69ba",
> +            "version": "0.1.1.7"
> +        },
> +        {
> +            "cabal_sha256": "190264fef9e65d9085f00ccda419137096d1dc94777c58272bc96821dc7f37c3",
> +            "flags": [],
> +            "package": "base64-bytestring",
> +            "revision": 0,
> +            "source": "hackage",
> +            "src_sha256": "210d6c9042241ca52ee5d89cf221dbeb4d0e64b37391345369035ad2d9b4aca9",
> +            "version": "1.1.0.0"
> +        },
> +        {
> +            "cabal_sha256": "b963d6308db096362d73d9c603b331cf188aa69310195f479dfedf6045d7e602",
> +            "flags": [
> +                "-exe"
> +            ],
> +            "package": "cryptohash-sha256",
> +            "revision": 4,
> +            "source": "hackage",
> +            "src_sha256": "52756435dbea248e344fbcbcc5df5307f60dfacf337dfd11ae30f1c7a4da05dd",
> +            "version": "0.11.101.0"
> +        },
> +        {
> +            "cabal_sha256": "5490be9cfbea95e14a7a68b7d055ae8d295822e0b146d2ac8285b3e5a3e3282f",
> +            "flags": [
> +                "-example"
> +            ],
> +            "package": "echo",
> +            "revision": 1,
> +            "source": "hackage",
> +            "src_sha256": "704f07310f8272d170f8ab7fb2a2c13f15d8501ef8310801e36964c8eff485ef",
> +            "version": "0.1.3"
> +        },
> +        {
> +            "cabal_sha256": "d50c4d0801a35be7875a040470c09863342514930c82a7d25780a6c2efc4fda9",
> +            "flags": [
> +                "-optimised-mixer"
> +            ],
> +            "package": "splitmix",
> +            "revision": 0,
> +            "source": "hackage",
> +            "src_sha256": "1c11c87352ddbb13365380fe163f99bb8f8845ebc96ca1d572e5d3a9bf810bfa",
> +            "version": "0.1"
> +        },
> +        {
> +            "cabal_sha256": "5ca8674e95c46c7eb90f520c26aea22d403625c97697275434afba66ebd32b05",
> +            "flags": [],
> +            "package": "random",
> +            "revision": 0,
> +            "source": "hackage",
> +            "src_sha256": "e4519cf7c058bfd5bdbe4acc782284acc9e25e74487208619ca83cbcd63fb9de",
> +            "version": "1.2.0"
> +        },
> +        {
> +            "cabal_sha256": "4d33a49cd383d50af090f1b888642d10116e43809f9da6023d9fc6f67d2656ee",
> +            "flags": [],
> +            "package": "edit-distance",
> +            "revision": 1,
> +            "source": "hackage",
> +            "src_sha256": "3e8885ee2f56ad4da940f043ae8f981ee2fe336b5e8e4ba3f7436cff4f526c4a",
> +            "version": "0.2.2.1"
> +        },
> +        {
> +            "cabal_sha256": "fb98b08de467d51f788f8bd9391f0e9ab9bd4d8dfc264296b895ffea0d822dfa",
> +            "flags": [
> +                "+no-donna",
> +                "+test-doctests",
> +                "+test-hlint",
> +                "+test-properties"
> +            ],
> +            "package": "ed25519",
> +            "revision": 3,
> +            "source": "hackage",
> +            "src_sha256": "d8a5958ebfa9309790efade64275dc5c441b568645c45ceed1b0c6ff36d6156d",
> +            "version": "0.0.5.0"
> +        },
> +        {
> +            "cabal_sha256": "c9d3fa30fb6ab2ba16e037586ca79be6e57ec5f00381b6ee5f293400dbdf5515",
> +            "flags": [
> +                "+ofd-locking"
> +            ],
> +            "package": "lukko",
> +            "revision": 0,
> +            "source": "hackage",
> +            "src_sha256": "8a79d113dc0ccef16c24d83379cc457485943027e777529c46362fecc06607d2",
> +            "version": "0.1.1.2"
> +        },
> +        {
> +            "cabal_sha256": "7a715414c4d494c9048cfb6d7634e07e7732ca154cb8938dc85f6ea192192e8c",
> +            "flags": [
> +                "-old-bytestring",
> +                "-old-time"
> +            ],
> +            "package": "tar",
> +            "revision": 2,
> +            "source": "hackage",
> +            "src_sha256": "b384449f62b2b0aa3e6d2cb1004b8060b01f21ec93e7b63e7af6d8fad8a9f1de",
> +            "version": "0.5.1.1"
> +        },
> +        {
> +            "cabal_sha256": "d34ddf5fece4d1e9d471b5298f36335bb3cfe12cb5a1b8525c42f0b665382f45",
> +            "flags": [
> +                "-non-blocking-ffi",
> +                "-pkg-config"
> +            ],
> +            "package": "zlib",
> +            "revision": 1,
> +            "source": "hackage",
> +            "src_sha256": "f0f810ff173560b60392db448455c0513b3239f48e43cb494b3733aa559621d0",
> +            "version": "0.6.2.1"
> +        },
> +        {
> +            "cabal_sha256": "692c385c085baa2813046ae58e31df21c250346b81c882431b5ffef76451a18a",
> +            "flags": [
> +                "+base48",
> +                "+lukko",
> +                "-mtl21",
> +                "-old-directory",
> +                "+use-network-uri"
> +            ],
> +            "package": "hackage-security",
> +            "revision": 2,
> +            "source": "hackage",
> +            "src_sha256": "9162b473af5a21c1ff32a50b972b9acf51f4c901604a22cf08a2dccac2f82f17",
> +            "version": "0.6.0.1"
> +        },
> +        {
> +            "cabal_sha256": "44aa95ca762294ffbb28cf0af9c567d93b5d2c56e4f38ce5385a257d899f968e",
> +            "flags": [],
> +            "package": "regex-base",
> +            "revision": 1,
> +            "source": "hackage",
> +            "src_sha256": "c41f82f5fc1157c961a4cbdc0cd5561e5aa44f339ce6e706d978d97e0ca6b914",
> +            "version": "0.94.0.0"
> +        },
> +        {
> +            "cabal_sha256": "690d1366e9ea6df71ded3daf49ca3d53c63eda3f95937962299b2391824dc3b3",
> +            "flags": [
> +                "-_regex-posix-clib"
> +            ],
> +            "package": "regex-posix",
> +            "revision": 1,
> +            "source": "hackage",
> +            "src_sha256": "251300f1a6bb2e91abb8bf513a21981f8fab79c98a65acea2bb6d6a524414521",
> +            "version": "0.96.0.0"
> +        },
> +        {
> +            "cabal_sha256": "0a9a6dd29706258ae60a5c22aecc140a40743b8f08fc324fd9984e7dfbf3a80d",
> +            "flags": [],
> +            "package": "resolv",
> +            "revision": 0,
> +            "source": "hackage",
> +            "src_sha256": "81a2bafad484db123cf8d17a02d98bb388a127fd0f822fa022589468a0e64671",
> +            "version": "0.1.2.0"
> +        },
> +        {
> +            "cabal_sha256": null,
> +            "flags": [
> +                "-debug-conflict-sets",
> +                "-debug-expensive-assertions",
> +                "-debug-tracetree",
> +                "+lukko",
> +                "+native-dns"
> +            ],
> +            "package": "cabal-install",
> +            "revision": null,
> +            "source": "local",
> +            "src_sha256": null,
> +            "version": "3.5.0.0"
> +        }
> +    ]
> +}
> --
> 2.30.1

Reply | Threaded
Open this post in threaded view
|

Re: devel/cabal-install 3.4.0.0 upgrade

Greg Steuck
Thanks Matthias! I'll proceed with the upgrade and follow up with a removal
of a couple of hs-* libs that become orphaned as a result.

On Mon, Feb 22, 2021 at 12:02 PM Matthias Kilian <[hidden email]>
wrote:

> Hi Greg,
>
> On Mon, Feb 22, 2021 at 08:40:40AM -0800, Greg Steuck wrote:
> > > Now that 3.4 is properly out I can upgrade it and to my surprise the
> old
> > > framework can be left untouched for cabal-install upgrade. So, as a
> > > first (backward compatible) step here's something we can submit ASAP.
> > >
> > > Matthias, if you don't feel like looking at this at the moment, could
> > > you let me know so I can corral another reviewer?
> > >
> > > OK?
> >
> > I figured out where the man page was hiding. Update patch below.
> >
> > Subject: [PATCH] Upgrade cabal-install to 3.4.0.0
> >
> > Uses a bootstrap.py developed upstream to limit Haskell dependencies
> > to just lang/ghc. This will allow cabal-install to be at the base of
> > cabal-based Haskell ports framework.
>
> Looks and builds fine to me. Thanks!
>
> Ciao,
>         Kili
>
> > ---
> >  devel/cabal-install/Makefile                 |  91 +++--
> >  devel/cabal-install/distinfo                 |  84 ++++-
> >  devel/cabal-install/files/openbsd-8.6.4.json | 340 +++++++++++++++++++
> >  3 files changed, 487 insertions(+), 28 deletions(-)
> >  create mode 100644 devel/cabal-install/files/openbsd-8.6.4.json
> >
> > diff --git a/devel/cabal-install/Makefile b/devel/cabal-install/Makefile
> > index 6f4c559ea84..5163aae457e 100644
> > --- a/devel/cabal-install/Makefile
> > +++ b/devel/cabal-install/Makefile
> > @@ -2,10 +2,14 @@
> >
> >  COMMENT =    command-line interface for Cabal and Hackage
> >
> > -DISTNAME =   cabal-install-2.4.0.0
> > +DISTNAME =   cabal-install-3.4.0.0
> >  CATEGORIES = devel
> >
> > -HOMEPAGE =   http://www.haskell.org/cabal/
> > +GH_ACCOUNT = haskell
> > +GH_TAGNAME = ${DISTNAME}
> > +GH_PROJECT = cabal
> > +
> > +HOMEPAGE =   https://github.com/haskell/cabal
> >
> >  MAINTAINER = Matthias Kilian <[hidden email]>
> >
> > @@ -14,35 +18,70 @@ PERMIT_PACKAGE =          Yes
> >
> >  WANTLIB =            c charset ffi gmp iconv m pthread util z
> >
> > -MODULES =            lang/ghc
> >  MODGHC_BUILD =          cabal hackage nort
> >
> >  LIB_DEPENDS =                converters/libiconv \
> >                       devel/gmp \
> >                       devel/libffi
> >
> > -# Avoids the dependency on resolve.
> > -MODGHC_SETUP_CONF_ARGS += -f-native-dns
> > -
> > -BUILD_DEPENDS +=     archivers/hs-zlib>=0.5.3,<0.7 \
> > -                     archivers/hs-zip-archive>=0.3.2.5,<0.5 \
> > -                     devel/hs-async>=2.0,<3 \
> > -                     devel/hs-base16-bytestring>=0.1.1,<0.2 \
> > -                     devel/hs-echo>=0.1.3,<0.2 \
> > -                     devel/hs-edit-distance>=0.2.2,<0.3 \
> > -                     devel/hs-hashable>=1.0,<2 \
> > -                     devel/hs-network>=2.6,<2.7 \
> > -                     devel/hs-network-uri>=2.6,<2.7 \
> > -                     devel/hs-random>=1,<1.2 \
> > -                     devel/hs-tar>=0.5.0.3,<0.6 \
> > -                     net/hs-HTTP>=4000.1.5,<4000.4 \
> > -                     security/hs-cryptohash-sha256>=0.11,<0.12 \
> > -                     security/hs-hackage-security>=0.5.2.2,<0.6
> > -
> > -# Cabal (part of lang/ghc) would have patched for a correct mandir,
> > -# but this is for now the only haskell program using Cabal to install a
> > -# man page.
> > -post-install:
> > -     mv ${PREFIX}/share/man/man1/cabal.1 ${PREFIX}/man/man1/cabal.1
> > +# bootstrap.py handles the extraction of the rest of files.
> > +EXTRACT_ONLY =               ${DISTNAME}.tar.gz
> > +DISTFILES =          ${EXTRACT_ONLY}
> > +DIST_SUBDIR =                hackage
> > +MASTER_SITES0 =              https://hackage.haskell.org/package/
> > +
> > +# Produced by:
> > +#   cabal v2-run -w /usr/local/bin/ghc exe:cabal-bundler -- \
> > +#     --openbsd cabal -w /usr/local/bin/ghc -p
> cabal/dist-newstyle/cache/plan.json
> > +_MANIFEST = \
> > +     HTTP    4000.3.14       1       \
> > +     async   2.2.2   1       \
> > +     base16-bytestring       0.1.1.7 0       \
> > +     base64-bytestring       1.1.0.0 0       \
> > +     cryptohash-sha256       0.11.101.0      4       \
> > +     echo    0.1.3   1       \
> > +     ed25519 0.0.5.0 3       \
> > +     edit-distance   0.2.2.1 1       \
> > +     hackage-security        0.6.0.1 2       \
> > +     hashable        1.3.0.0 1       \
> > +     lukko   0.1.1.2 0       \
> > +     network 3.1.1.1 0       \
> > +     network-uri     2.6.3.0 0       \
> > +     random  1.2.0   0       \
> > +     regex-base      0.94.0.0        1       \
> > +     regex-posix     0.96.0.0        1       \
> > +     resolv  0.1.2.0 0       \
> > +     splitmix        0.1     0       \
> > +     tar     0.5.1.1 2       \
> > +     zlib    0.6.2.1 1       \
> > +
> > +.for _package _version _revision in ${_MANIFEST}
> > +DISTFILES += {${_package}-${_version}/}${_package}-${_version}.tar.gz:0
> > +DISTFILES +=
> ${_package}-${_version}_${_revision}{${_package}-${_version}/revision/${_revision}}.cabal:0
> > +.endfor
> > +
> > +BUILD_DEPENDS +=     lang/ghc>=8.6.4
> > +
> > +MODULES =            lang/python
> > +
> > +MODPY_VERSION =              ${MODPY_DEFAULT_VERSION_3}
> > +
> > +post-extract:
> > +     @mkdir -p ${WRKBUILD}/_build/tarballs
> > +.for _package _version _revision in ${_MANIFEST}
> > +     @ln -s ${FULLDISTDIR}/${_package}-${_version}.tar.gz
> ${WRKBUILD}/_build/tarballs
> > +     @ln -s ${FULLDISTDIR}/${_package}-${_version}_${_revision}.cabal
> ${WRKBUILD}/_build/tarballs/${_package}.cabal
> > +.endfor
> > +
> > +# Uses the same fixed versions of packages as in _MANIFEST. The
> > +# distributed package currently doesn't have a 8.10.3 variant.  The
> > +# json file is generated by following cabal bootstrap instructions.
> > +do-build:
> > +     @cd ${WRKBUILD} && ${MODPY_BIN} bootstrap/bootstrap.py -d
> ${FILESDIR}/openbsd-8.6.4.json
> > +
> > +do-install:
> > +     @install -m755 ${WRKBUILD}/_build/bin/cabal ${PREFIX}/bin
> > +     ${PREFIX}/bin/cabal man --raw > ${WRKSRC}/cabal.1
> > +     ${INSTALL_MAN} ${WRKSRC}/cabal.1 ${PREFIX}/man/man1/cabal.1
> >
> >  .include <bsd.port.mk>
> > diff --git a/devel/cabal-install/distinfo b/devel/cabal-install/distinfo
> > index ed70ae5f09c..b1f98a02fad 100644
> > --- a/devel/cabal-install/distinfo
> > +++ b/devel/cabal-install/distinfo
> > @@ -1,2 +1,82 @@
> > -SHA256 (ghc/cabal-install-2.4.0.0.tar.gz) =
> EynpVktzawz7p205YgTZVWnwgOfFT+NVttlhjjqgvvY=
> > -SIZE (ghc/cabal-install-2.4.0.0.tar.gz) = 614491
> > +SHA256 (hackage/HTTP-4000.3.14.tar.gz) =
> pgLX8w6RcWTGpjT4yx9d9ISQSIWNsBOAoIdeFuWqaHs=
> > +SHA256 (hackage/HTTP-4000.3.14_1.cabal) =
> PBmXX9/Y0Ffq5YhHvaanlRStiC/W+OrXKsAkevNL38Y=
> > +SHA256 (hackage/async-2.2.2.tar.gz) =
> S0qxrILEUUTYLG2vbLa6Req5lX2tRHh/pehp4j1zu/8=
> > +SHA256 (hackage/async-2.2.2_1.cabal) =
> oXjBZoVtp/8i/kUAM3tUgS6U/SBZQJRSGH1y4Fft6c0=
> > +SHA256 (hackage/base16-bytestring-0.1.1.7.tar.gz) =
> UlaJZ51cyA+lMsHVz+rOD2K7tUE0+tUU8boA0Of+abo=
> > +SHA256 (hackage/base16-bytestring-0.1.1.7_0.cabal) =
> jLuiUF1NpPbPyQzTbI6K0MCcBWU4SB6gDosQt49wyxA=
> > +SHA256 (hackage/base64-bytestring-1.1.0.0.tar.gz) =
> IQ1skEIkHKUu5dic8iHb600OZLNzkTRTaQNa0tm0rKk=
> > +SHA256 (hackage/base64-bytestring-1.1.0.0_0.cabal) =
> GQJk/vnmXZCF8AzNpBkTcJbR3JR3fFgnK8loIdx/N8M=
> > +SHA256 (hackage/cabal-install-3.4.0.0.tar.gz) =
> 5PvV6x13QAdGqZNnkYHxWapBWje5MbJtZ/VgL2POlxw=
> > +SHA256 (hackage/cryptohash-sha256-0.11.101.0.tar.gz) =
> UnVkNdvqJI40T7y8xd9TB/YN+s8zff0RrjDxx6TaBd0=
> > +SHA256 (hackage/cryptohash-sha256-0.11.101.0_4.cabal) =
> uWPWMI2wljYtc9nGA7MxzxiKppMQGV9Hnf7fYEXX5gI=
> > +SHA256 (hackage/echo-0.1.3.tar.gz) =
> cE8HMQ+CctFw+Kt/sqLBPxXYUB74MQgB42lkyO/0he8=
> > +SHA256 (hackage/echo-0.1.3_1.cabal) =
> VJC+nPvqleFKemi30FWujSlYIuCxRtKsgoWz5aPjKC8=
> > +SHA256 (hackage/ed25519-0.0.5.0.tar.gz) =
> 2KWVjr+pMJeQ763mQnXcXEQbVoZFxFzu0bDG/zbWFW0=
> > +SHA256 (hackage/ed25519-0.0.5.0_3.cabal) =
> +5iwjeRn1R94j4vZOR8Omrm9TY38JkKWuJX/6g2CLfo=
> > +SHA256 (hackage/edit-distance-0.2.2.1.tar.gz) =
> PoiF7i9WrU2pQPBDro+YHuL+M2tejkuj90Ns/09SbEo=
> > +SHA256 (hackage/edit-distance-0.2.2.1_1.cabal) =
> TTOknNOD1QrwkPG4iGQtEBFuQ4CfnaYCPZ/G9n0mVu4=
> > +SHA256 (hackage/hackage-security-0.6.0.1.tar.gz) =
> kWK0c69aIcH/MqULlyuaz1H0yQFgSiLPCKLcysL4Lxc=
> > +SHA256 (hackage/hackage-security-0.6.0.1_2.cabal) =
> aSw4XAhbqigTBGrljjHfIcJQNGuByIJDG1/+92RRoYo=
> > +SHA256 (hackage/hashable-1.3.0.0.tar.gz) =
> gi5UE/vMymrohNOrpAZkIsi11Y0j0Yuey1wDJzuxmrQ=
> > +SHA256 (hackage/hashable-1.3.0.0_1.cabal) =
> THDxQHiBBZ6TVQ03QhkSVClrJze3k6dCvZATSPs+H7E=
> > +SHA256 (hackage/lukko-0.1.1.2.tar.gz) =
> innRE9wMzvFsJNgzecxFdIWUMCfnd1KcRjYv7MBmB9I=
> > +SHA256 (hackage/lukko-0.1.1.2_0.cabal) =
> ydP6MPtqsroW4DdYbKeb5uV+xfADgbbuXyk0ANvfVRU=
> > +SHA256 (hackage/network-3.1.1.1.tar.gz) =
> 1+9ZAXP/8qtSL7wWfz+vuGfk7Pyiees+8NE3tR8ULJo=
> > +SHA256 (hackage/network-3.1.1.1_0.cabal) =
> twTLZnbAPpgmcZDfeXSXWHV2oulglFUOoUNBUjm75m4=
> > +SHA256 (hackage/network-uri-2.6.3.0.tar.gz) =
> oBwTifFdLMLoR5FHN/cGEzuxHwxfjuiXEaNqJbevpyM=
> > +SHA256 (hackage/network-uri-2.6.3.0_0.cabal) =
> 0tn/OoDZstH/MXo1S8DFbMEJxppMJEnl/HEtPdzoPt4=
> > +SHA256 (hackage/random-1.2.0.tar.gz) =
> 5FGc98BYv9W9vkrMeCKErMniXnRIcghhnKg8vNY/ud4=
> > +SHA256 (hackage/random-1.2.0_0.cabal) =
> XKhnTpXEbH65D1IMJq6iLUA2Jcl2lydUNK+6ZuvTKwU=
> > +SHA256 (hackage/regex-base-0.94.0.0.tar.gz) =
> xB+C9fwRV8lhpMvcDNVWHlqkTzOc5ucG2XjZfgymuRQ=
> > +SHA256 (hackage/regex-base-0.94.0.0_1.cabal) =
> RKqVynYilP+7KM8K+cVn2TtdLFbk84zlOFolfYmflo4=
> > +SHA256 (hackage/regex-posix-0.96.0.0.tar.gz) =
> JRMA8aa7LpGruL9ROiGYH4+recmKZazqK7bWpSRBRSE=
> > +SHA256 (hackage/regex-posix-0.96.0.0_1.cabal) =
> aQ0TZunqbfcd7T2vSco9U8Y+2j+Vk3liKZsjkYJNw7M=
> > +SHA256 (hackage/resolv-0.1.2.0.tar.gz) =
> gaK6+tSE2xI8+NF6AtmLs4ihJ/0Pgi+gIliUaKDmRnE=
> > +SHA256 (hackage/resolv-0.1.2.0_0.cabal) =
> Cppt0pcGJYrmClwirswUCkB0O48I/DJP2ZhOffvzqA0=
> > +SHA256 (hackage/splitmix-0.1.tar.gz) =
> HBHIc1LduxM2U4D+Fj+Zu4+IRevJbKHVcuXTqb+BC/o=
> > +SHA256 (hackage/splitmix-0.1_0.cabal) =
> 1QxNCAGjW+eHWgQEcMCYYzQlFJMMgqfSV4Cmwu/E/ak=
> > +SHA256 (hackage/tar-0.5.1.1.tar.gz) =
> s4REn2KysKo+bSyxAEuAYLAfIeyT57Y+evbY+tip8d4=
> > +SHA256 (hackage/tar-0.5.1.1_2.cabal) =
> enFUFMTUlMkEjPttdjTgfncyyhVMuJONyF9uoZIZLow=
> > +SHA256 (hackage/zlib-0.6.2.1.tar.gz) =
> 8PgQ/xc1YLYDkttEhFXAUTsyOfSOQ8tJSzczqlWWIdA=
> > +SHA256 (hackage/zlib-0.6.2.1_1.cabal) =
> 003fX+zk0enUcbUpjzYzW7PP4Sy1obhSXELwtmU4L0U=
> > +SIZE (hackage/HTTP-4000.3.14.tar.gz) = 72938
> > +SIZE (hackage/HTTP-4000.3.14_1.cabal) = 5843
> > +SIZE (hackage/async-2.2.2.tar.gz) = 12927
> > +SIZE (hackage/async-2.2.2_1.cabal) = 2934
> > +SIZE (hackage/base16-bytestring-0.1.1.7.tar.gz) = 5136
> > +SIZE (hackage/base16-bytestring-0.1.1.7_0.cabal) = 2153
> > +SIZE (hackage/base64-bytestring-1.1.0.0.tar.gz) = 12076
> > +SIZE (hackage/base64-bytestring-1.1.0.0_0.cabal) = 2334
> > +SIZE (hackage/cabal-install-3.4.0.0.tar.gz) = 2072483
> > +SIZE (hackage/cryptohash-sha256-0.11.101.0.tar.gz) = 14996
> > +SIZE (hackage/cryptohash-sha256-0.11.101.0_4.cabal) = 5417
> > +SIZE (hackage/echo-0.1.3.tar.gz) = 5373
> > +SIZE (hackage/echo-0.1.3_1.cabal) = 2500
> > +SIZE (hackage/ed25519-0.0.5.0.tar.gz) = 80034
> > +SIZE (hackage/ed25519-0.0.5.0_3.cabal) = 4165
> > +SIZE (hackage/edit-distance-0.2.2.1.tar.gz) = 13228
> > +SIZE (hackage/edit-distance-0.2.2.1_1.cabal) = 2351
> > +SIZE (hackage/hackage-security-0.6.0.1.tar.gz) = 86006
> > +SIZE (hackage/hackage-security-0.6.0.1_2.cabal) = 12001
> > +SIZE (hackage/hashable-1.3.0.0.tar.gz) = 29835
> > +SIZE (hackage/hashable-1.3.0.0_1.cabal) = 5206
> > +SIZE (hackage/lukko-0.1.1.2.tar.gz) = 28366
> > +SIZE (hackage/lukko-0.1.1.2_0.cabal) = 4485
> > +SIZE (hackage/network-3.1.1.1.tar.gz) = 118478
> > +SIZE (hackage/network-3.1.1.1_0.cabal) = 4268
> > +SIZE (hackage/network-uri-2.6.3.0.tar.gz) = 31997
> > +SIZE (hackage/network-uri-2.6.3.0_0.cabal) = 2902
> > +SIZE (hackage/random-1.2.0.tar.gz) = 37889
> > +SIZE (hackage/random-1.2.0_0.cabal) = 5897
> > +SIZE (hackage/regex-base-0.94.0.0.tar.gz) = 9679
> > +SIZE (hackage/regex-base-0.94.0.0_1.cabal) = 2253
> > +SIZE (hackage/regex-posix-0.96.0.0.tar.gz) = 12529
> > +SIZE (hackage/regex-posix-0.96.0.0_1.cabal) = 2531
> > +SIZE (hackage/resolv-0.1.2.0.tar.gz) = 156710
> > +SIZE (hackage/resolv-0.1.2.0_0.cabal) = 4548
> > +SIZE (hackage/splitmix-0.1.tar.gz) = 18997
> > +SIZE (hackage/splitmix-0.1_0.cabal) = 5249
> > +SIZE (hackage/tar-0.5.1.1.tar.gz) = 39155
> > +SIZE (hackage/tar-0.5.1.1_2.cabal) = 5254
> > +SIZE (hackage/zlib-0.6.2.1.tar.gz) = 143424
> > +SIZE (hackage/zlib-0.6.2.1_1.cabal) = 4547
> > diff --git a/devel/cabal-install/files/openbsd-8.6.4.json
> b/devel/cabal-install/files/openbsd-8.6.4.json
> > new file mode 100644
> > index 00000000000..eee5f9eefeb
> > --- /dev/null
> > +++ b/devel/cabal-install/files/openbsd-8.6.4.json
> > @@ -0,0 +1,340 @@
> > +{
> > +    "builtin": [
> > +        {
> > +            "package": "rts",
> > +            "version": "1.0"
> > +        },
> > +        {
> > +            "package": "ghc-prim",
> > +            "version": "0.5.3"
> > +        },
> > +        {
> > +            "package": "integer-gmp",
> > +            "version": "1.0.2.0"
> > +        },
> > +        {
> > +            "package": "base",
> > +            "version": "4.12.0.0"
> > +        },
> > +        {
> > +            "package": "array",
> > +            "version": "0.5.3.0"
> > +        },
> > +        {
> > +            "package": "deepseq",
> > +            "version": "1.4.4.0"
> > +        },
> > +        {
> > +            "package": "bytestring",
> > +            "version": "0.10.8.2"
> > +        },
> > +        {
> > +            "package": "containers",
> > +            "version": "0.6.0.1"
> > +        },
> > +        {
> > +            "package": "binary",
> > +            "version": "0.8.6.0"
> > +        },
> > +        {
> > +            "package": "filepath",
> > +            "version": "1.4.2.1"
> > +        },
> > +        {
> > +            "package": "time",
> > +            "version": "1.8.0.2"
> > +        },
> > +        {
> > +            "package": "unix",
> > +            "version": "2.7.2.2"
> > +        },
> > +        {
> > +            "package": "directory",
> > +            "version": "1.3.3.0"
> > +        },
> > +        {
> > +            "package": "transformers",
> > +            "version": "0.5.6.2"
> > +        },
> > +        {
> > +            "package": "mtl",
> > +            "version": "2.2.2"
> > +        },
> > +        {
> > +            "package": "text",
> > +            "version": "1.2.3.1"
> > +        },
> > +        {
> > +            "package": "parsec",
> > +            "version": "3.1.13.0"
> > +        },
> > +        {
> > +            "package": "pretty",
> > +            "version": "1.1.3.6"
> > +        },
> > +        {
> > +            "package": "process",
> > +            "version": "1.6.5.0"
> > +        },
> > +        {
> > +            "package": "ghc-boot-th",
> > +            "version": "8.6.4"
> > +        },
> > +        {
> > +            "package": "template-haskell",
> > +            "version": "2.14.0.0"
> > +        },
> > +        {
> > +            "package": "stm",
> > +            "version": "2.5.0.0"
> > +        }
> > +    ],
> > +    "dependencies": [
> > +        {
> > +            "cabal_sha256": null,
> > +            "flags": [
> > +                "-bundled-binary-generic"
> > +            ],
> > +            "package": "Cabal",
> > +            "revision": null,
> > +            "source": "local",
> > +            "src_sha256": null,
> > +            "version": "3.4.0.0"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "b704cb6676c03e98267190df797497587576a2e96094550ea143415239bbe66e",
> > +            "flags": [],
> > +            "package": "network",
> > +            "revision": 0,
> > +            "source": "hackage",
> > +            "src_sha256":
> "d7ef590173fff2ab522fbc167f3fafb867e4ecfca279eb3ef0d137b51f142c9a",
> > +            "version": "3.1.1.1"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "d2d9ff3a80d9b2d1ff317a354bc0c56cc109c69a4c2449e5fc712d3ddce83ede",
> > +            "flags": [],
> > +            "package": "network-uri",
> > +            "revision": 0,
> > +            "source": "hackage",
> > +            "src_sha256":
> "a01c1389f15d2cc2e847914737f706133bb11f0c5f8ee89711a36a25b7afa723",
> > +            "version": "2.6.3.0"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "3c19975fdfd8d057eae58847bda6a79514ad882fd6f8ead72ac0247af34bdfc6",
> > +            "flags": [
> > +                "-conduit10",
> > +                "-mtl1",
> > +                "+network-uri",
> > +                "-warn-as-error",
> > +                "-warp-tests"
> > +            ],
> > +            "package": "HTTP",
> > +            "revision": 1,
> > +            "source": "hackage",
> > +            "src_sha256":
> "a602d7f30e917164c6a634f8cb1f5df4849048858db01380a0875e16e5aa687b",
> > +            "version": "4000.3.14"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "4c70f1407881059e93550d3742191254296b2737b793a742bd901348fb3e1fb1",
> > +            "flags": [
> > +                "-examples",
> > +                "+integer-gmp",
> > +                "+sse2",
> > +                "-sse41"
> > +            ],
> > +            "package": "hashable",
> > +            "revision": 1,
> > +            "source": "hackage",
> > +            "src_sha256":
> "822e5413fbccca6ae884d3aba4066422c8b5d58d23d18b9ecb5c03273bb19ab4",
> > +            "version": "1.3.0.0"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "a178c166856da7ff22fe4500337b54812e94fd2059409452187d72e057ede9cd",
> > +            "flags": [
> > +                "-bench"
> > +            ],
> > +            "package": "async",
> > +            "revision": 1,
> > +            "source": "hackage",
> > +            "src_sha256":
> "4b4ab1ac82c45144d82c6daf6cb6ba45eab9957dad44787fa5e869e23d73bbff",
> > +            "version": "2.2.2"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "8cbba2505d4da4f6cfc90cd36c8e8ad0c09c056538481ea00e8b10b78f70cb10",
> > +            "flags": [],
> > +            "package": "base16-bytestring",
> > +            "revision": 0,
> > +            "source": "hackage",
> > +            "src_sha256":
> "525689679d5cc80fa532c1d5cfeace0f62bbb54134fad514f1ba00d0e7fe69ba",
> > +            "version": "0.1.1.7"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "190264fef9e65d9085f00ccda419137096d1dc94777c58272bc96821dc7f37c3",
> > +            "flags": [],
> > +            "package": "base64-bytestring",
> > +            "revision": 0,
> > +            "source": "hackage",
> > +            "src_sha256":
> "210d6c9042241ca52ee5d89cf221dbeb4d0e64b37391345369035ad2d9b4aca9",
> > +            "version": "1.1.0.0"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "b963d6308db096362d73d9c603b331cf188aa69310195f479dfedf6045d7e602",
> > +            "flags": [
> > +                "-exe"
> > +            ],
> > +            "package": "cryptohash-sha256",
> > +            "revision": 4,
> > +            "source": "hackage",
> > +            "src_sha256":
> "52756435dbea248e344fbcbcc5df5307f60dfacf337dfd11ae30f1c7a4da05dd",
> > +            "version": "0.11.101.0"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "5490be9cfbea95e14a7a68b7d055ae8d295822e0b146d2ac8285b3e5a3e3282f",
> > +            "flags": [
> > +                "-example"
> > +            ],
> > +            "package": "echo",
> > +            "revision": 1,
> > +            "source": "hackage",
> > +            "src_sha256":
> "704f07310f8272d170f8ab7fb2a2c13f15d8501ef8310801e36964c8eff485ef",
> > +            "version": "0.1.3"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "d50c4d0801a35be7875a040470c09863342514930c82a7d25780a6c2efc4fda9",
> > +            "flags": [
> > +                "-optimised-mixer"
> > +            ],
> > +            "package": "splitmix",
> > +            "revision": 0,
> > +            "source": "hackage",
> > +            "src_sha256":
> "1c11c87352ddbb13365380fe163f99bb8f8845ebc96ca1d572e5d3a9bf810bfa",
> > +            "version": "0.1"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "5ca8674e95c46c7eb90f520c26aea22d403625c97697275434afba66ebd32b05",
> > +            "flags": [],
> > +            "package": "random",
> > +            "revision": 0,
> > +            "source": "hackage",
> > +            "src_sha256":
> "e4519cf7c058bfd5bdbe4acc782284acc9e25e74487208619ca83cbcd63fb9de",
> > +            "version": "1.2.0"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "4d33a49cd383d50af090f1b888642d10116e43809f9da6023d9fc6f67d2656ee",
> > +            "flags": [],
> > +            "package": "edit-distance",
> > +            "revision": 1,
> > +            "source": "hackage",
> > +            "src_sha256":
> "3e8885ee2f56ad4da940f043ae8f981ee2fe336b5e8e4ba3f7436cff4f526c4a",
> > +            "version": "0.2.2.1"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "fb98b08de467d51f788f8bd9391f0e9ab9bd4d8dfc264296b895ffea0d822dfa",
> > +            "flags": [
> > +                "+no-donna",
> > +                "+test-doctests",
> > +                "+test-hlint",
> > +                "+test-properties"
> > +            ],
> > +            "package": "ed25519",
> > +            "revision": 3,
> > +            "source": "hackage",
> > +            "src_sha256":
> "d8a5958ebfa9309790efade64275dc5c441b568645c45ceed1b0c6ff36d6156d",
> > +            "version": "0.0.5.0"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "c9d3fa30fb6ab2ba16e037586ca79be6e57ec5f00381b6ee5f293400dbdf5515",
> > +            "flags": [
> > +                "+ofd-locking"
> > +            ],
> > +            "package": "lukko",
> > +            "revision": 0,
> > +            "source": "hackage",
> > +            "src_sha256":
> "8a79d113dc0ccef16c24d83379cc457485943027e777529c46362fecc06607d2",
> > +            "version": "0.1.1.2"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "7a715414c4d494c9048cfb6d7634e07e7732ca154cb8938dc85f6ea192192e8c",
> > +            "flags": [
> > +                "-old-bytestring",
> > +                "-old-time"
> > +            ],
> > +            "package": "tar",
> > +            "revision": 2,
> > +            "source": "hackage",
> > +            "src_sha256":
> "b384449f62b2b0aa3e6d2cb1004b8060b01f21ec93e7b63e7af6d8fad8a9f1de",
> > +            "version": "0.5.1.1"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "d34ddf5fece4d1e9d471b5298f36335bb3cfe12cb5a1b8525c42f0b665382f45",
> > +            "flags": [
> > +                "-non-blocking-ffi",
> > +                "-pkg-config"
> > +            ],
> > +            "package": "zlib",
> > +            "revision": 1,
> > +            "source": "hackage",
> > +            "src_sha256":
> "f0f810ff173560b60392db448455c0513b3239f48e43cb494b3733aa559621d0",
> > +            "version": "0.6.2.1"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "692c385c085baa2813046ae58e31df21c250346b81c882431b5ffef76451a18a",
> > +            "flags": [
> > +                "+base48",
> > +                "+lukko",
> > +                "-mtl21",
> > +                "-old-directory",
> > +                "+use-network-uri"
> > +            ],
> > +            "package": "hackage-security",
> > +            "revision": 2,
> > +            "source": "hackage",
> > +            "src_sha256":
> "9162b473af5a21c1ff32a50b972b9acf51f4c901604a22cf08a2dccac2f82f17",
> > +            "version": "0.6.0.1"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "44aa95ca762294ffbb28cf0af9c567d93b5d2c56e4f38ce5385a257d899f968e",
> > +            "flags": [],
> > +            "package": "regex-base",
> > +            "revision": 1,
> > +            "source": "hackage",
> > +            "src_sha256":
> "c41f82f5fc1157c961a4cbdc0cd5561e5aa44f339ce6e706d978d97e0ca6b914",
> > +            "version": "0.94.0.0"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "690d1366e9ea6df71ded3daf49ca3d53c63eda3f95937962299b2391824dc3b3",
> > +            "flags": [
> > +                "-_regex-posix-clib"
> > +            ],
> > +            "package": "regex-posix",
> > +            "revision": 1,
> > +            "source": "hackage",
> > +            "src_sha256":
> "251300f1a6bb2e91abb8bf513a21981f8fab79c98a65acea2bb6d6a524414521",
> > +            "version": "0.96.0.0"
> > +        },
> > +        {
> > +            "cabal_sha256":
> "0a9a6dd29706258ae60a5c22aecc140a40743b8f08fc324fd9984e7dfbf3a80d",
> > +            "flags": [],
> > +            "package": "resolv",
> > +            "revision": 0,
> > +            "source": "hackage",
> > +            "src_sha256":
> "81a2bafad484db123cf8d17a02d98bb388a127fd0f822fa022589468a0e64671",
> > +            "version": "0.1.2.0"
> > +        },
> > +        {
> > +            "cabal_sha256": null,
> > +            "flags": [
> > +                "-debug-conflict-sets",
> > +                "-debug-expensive-assertions",
> > +                "-debug-tracetree",
> > +                "+lukko",
> > +                "+native-dns"
> > +            ],
> > +            "package": "cabal-install",
> > +            "revision": null,
> > +            "source": "local",
> > +            "src_sha256": null,
> > +            "version": "3.5.0.0"
> > +        }
> > +    ]
> > +}
> > --
> > 2.30.1
>
>

--
nest.cx is Gmail hosted, use PGP:
https://pgp.key-server.io/0x0B1542BD8DF5A1B0
Fingerprint: 5E2B 2D0E 1E03 2046 BEC3  4D50 0B15 42BD 8DF5 A1B0