haven

Safe HaskellNone
LanguageHaskell2010

Main

Synopsis

Documentation

main :: IO () Source #

Takes multiple maven package descriptions as command line arguments and finds the dependencies of those maven packages. Package descriptions should be of the form groupid:artifactid:version

parseMaven :: String -> Maven Source #

Parses strings of the form groupid:artifactid:version, e.g., com.android.build.tools:gradle:2.3.0

toNix :: MavenNix -> String Source #

Create a nix record for a hashed maven package

mirrors :: [String] Source #

Maven repositories in which to look for packages

fetch :: [String] -> Manager -> Maven -> IO (MavenNix, Element) Source #

Hash a particular maven package's .pom and .jar files and parse the .pom file as xml

getDepsFor :: Element -> [Maven] Source #

Extract the dependencies from a package's pom xml

recurseDependencies :: Manager -> Maven -> StateT (Set MavenNix) IO () Source #

Given a starting maven package, retrieve its dependencies recursively

findChildrenByTagName :: String -> Element -> [Element] Source #

Retrieve an XML Element's children by tag name