summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar Joey Hess <joeyh@joeyh.name>2017-04-07 18:03:09 -0400
committerGravatar Joey Hess <joeyh@joeyh.name>2017-04-07 18:16:11 -0400
commitf6af5f502094ba8e892e7a9e7407924a7f79ba67 (patch)
tree043c93236f7ae2b7ebf5f9dbc6b6d58abbaf3b62
parentc4efe38c7285fe501d15fa1fefdd643e05a81281 (diff)
version: Added "dependency versions" line.
This commit was sponsored by Anthony DeRobertis on Patreon.
-rw-r--r--BuildInfo.hs (renamed from BuildFlags.hs)38
-rw-r--r--CHANGELOG1
-rw-r--r--Command/Version.hs3
-rw-r--r--doc/todo/Display_the_version_of_a_library_corresponding_to_a_build_flag.mdwn6
-rw-r--r--git-annex.cabal2
5 files changed, 45 insertions, 5 deletions
diff --git a/BuildFlags.hs b/BuildInfo.hs
index 68dfabbe8..29455f61c 100644
--- a/BuildFlags.hs
+++ b/BuildInfo.hs
@@ -1,13 +1,16 @@
-{- git-annex build flags reporting
+{- git-annex build info reporting
-
- - Copyright 2013 Joey Hess <id@joeyh.name>
+ - Copyright 2013-2017 Joey Hess <id@joeyh.name>
-
- Licensed under the GNU GPL version 3 or higher.
-}
{-# LANGUAGE CPP #-}
-module BuildFlags where
+module BuildInfo where
+
+import Data.List
+import qualified Data.CaseInsensitive as CI
buildFlags :: [String]
buildFlags = filter (not . null)
@@ -79,3 +82,32 @@ buildFlags = filter (not . null)
, "Feeds"
, "Quvi"
]
+
+-- Not a complete list, let alone a listing transitive deps, but only
+-- the ones that are often interesting to know.
+dependencyVersions :: [String]
+dependencyVersions = map fmt $ sortOn (CI.mk . fst)
+ [ ("feed", VERSION_feed)
+ , ("uuid", VERSION_uuid)
+ , ("bloomfilter", VERSION_bloomfilter)
+ , ("http-client", VERSION_http_client)
+ , ("persistent-sqlite", VERSION_persistent_sqlite)
+ , ("cryptonite", VERSION_cryptonite)
+#ifdef WITH_S3
+ , ("aws", VERSION_aws)
+#endif
+#ifdef WITH_WEBDAV
+ , ("DAV", VERSION_DAV)
+#endif
+#ifdef WITH_TORRENTPARSER
+ , ("torrent", VERSION_torrent)
+#endif
+#ifdef WITH_WEBAPP
+ , ("yesod", VERSION_yesod)
+#endif
+#ifdef TOOL_VERSION_ghc
+ , ("ghc", TOOL_VERSION_ghc)
+#endif
+ ]
+ where
+ fmt (p, v) = p ++ "-" ++ v
diff --git a/CHANGELOG b/CHANGELOG
index d988a969e..a3a7a9d54 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -20,6 +20,7 @@ git-annex (6.20170322) UNRELEASED; urgency=medium
* gcrypt: Support re-enabling to change eg, encryption parameters.
This was never supported before.
* git annex add -u now supported, analagous to git add -u
+ * version: Added "dependency versions" line.
-- Joey Hess <id@joeyh.name> Wed, 29 Mar 2017 12:41:46 -0400
diff --git a/Command/Version.hs b/Command/Version.hs
index ece5fbb05..7af928750 100644
--- a/Command/Version.hs
+++ b/Command/Version.hs
@@ -10,7 +10,7 @@ module Command.Version where
import Command
import qualified Build.SysConfig as SysConfig
import Annex.Version
-import BuildFlags
+import BuildInfo
import Types.Key
import qualified Types.Backend as B
import qualified Types.Remote as R
@@ -63,6 +63,7 @@ showPackageVersion :: IO ()
showPackageVersion = do
vinfo "git-annex version" SysConfig.packageversion
vinfo "build flags" $ unwords buildFlags
+ vinfo "dependency versions" $ unwords dependencyVersions
vinfo "key/value backends" $ unwords $
map (formatKeyVariety . B.backendVariety) Backend.list
vinfo "remote types" $ unwords $ map R.typename Remote.remoteTypes
diff --git a/doc/todo/Display_the_version_of_a_library_corresponding_to_a_build_flag.mdwn b/doc/todo/Display_the_version_of_a_library_corresponding_to_a_build_flag.mdwn
index eebb529c5..42dfce2a9 100644
--- a/doc/todo/Display_the_version_of_a_library_corresponding_to_a_build_flag.mdwn
+++ b/doc/todo/Display_the_version_of_a_library_corresponding_to_a_build_flag.mdwn
@@ -15,3 +15,9 @@ It would show:
build flags: ...etc... TorrentParser-1.2.1 Feeds-2.3.1 Quvi-1.0.0
key/value backends: SHA256E SHA256 SHA512E SHA512 SHA224E SHA224 SHA384E SHA384 SHA3_256E SHA3_256 SHA3_512E SHA3_512 SHA3_224E SHA3_224 SHA3_384E SHA3_384 SKEIN256E SKEIN256 SKEIN512E SKEIN512 SHA1E SHA1 MD5E MD5 WORM URL
remote types: git gcrypt p2p S3 bup directory rsync web bittorrent webdav tahoe glacier ddar hook external
+
+> Well, I think better not to complicate the build flags list, which the
+> user may want to refer to, with this. Also, there should be a way to
+> indicate versions for libraries that don't have a build flag, when the
+> version is a common question. So, let's add it as a separate line of
+> data. [[done]] --[[Joey]]
diff --git a/git-annex.cabal b/git-annex.cabal
index 200ea30ae..81ac944fb 100644
--- a/git-annex.cabal
+++ b/git-annex.cabal
@@ -664,7 +664,7 @@ Executable git-annex
Build.Standalone
Build.TestConfig
Build.Version
- BuildFlags
+ BuildInfo
CmdLine
CmdLine.Action
CmdLine.Batch