An open API service indexing awesome lists of open source software.

https://github.com/agilecreativity/pom-versions

pom-versions by agilecreativity
https://github.com/agilecreativity/pom-versions

clojure clojure-library library

Last synced: 8 months ago
JSON representation

pom-versions by agilecreativity

Awesome Lists containing this project

README

          

** pom-versions

#+ATTR_HTML: title="Clojars"
[[https://clojars.org/pom-versions][file:https://img.shields.io/clojars/v/pom-versions.svg]]

#+ATTR_HTML: title="Jarkeeper"
[[https://jarkeeper.com/agilecreativity/pom-versions][file:https://jarkeeper.com/agilecreativity/pom-versions/status.svg]]

A Clojure library designed to parse and extract list of version from =maven-metadata.xml=
file.

*** Usage

**** Leiningen/Boot

#+BEGIN_SRC clojure
[pom-versions "0.1.0"]
#+END_SRC

**** Gradle

#+BEGIN_SRC groovy
compile "pom-versions:pom-versions:0.1.0"
#+END_SRC

**** Maven

#+BEGIN_SRC xml

pom-versions
pom-versions
0.1.0

#+END_SRC

*** Sample Usage

#+BEGIN_SRC clojure
(require [pom-versions.core :refer [get-versions] :as pmv])
;; ...
(let [maven-local-file "/path/to/maven-metadata.xml" ;; If using local file
maven-remote-url "http://repo1.maven.org/maven2/org/seleniumhq/selenium/selenium-java/maven-metadata.xml" ;; Or from remote url
local-file (slurp maven-local-file)
remote-file (slurp maven-remote-url)]
;; Get versions from local file
(pmv/get-versions local-file)

;; Get versions from remote url
(pmv/get-versions remote-file))
#+END_SRC

You should get the vector result like

#+BEGIN_SRC clojure
;; Result from `http://repo1.maven.org/maven2/org/seleniumhq/selenium/selenium-java/maven-metadata.xml'
["2.0.0", "2.0rc3", ..., "3.3.0"]
#+END_SRC

** License

Copyright © 2017 agilecreativity

Distributed under the Eclipse Public License either version 1.0 or (at
your option) any later version.