On 25/10/11 18:21, David Blevins wrote:
Checked in the code and wrote up a README file in markdown.
:-)
Some first impressions below...
<snip>
The tool will download all the archives from a staging repo, unpack
them and create a little report of what is there.
Great :-)
There are some python scripts in eye for easy repository download. These
shell out to wget so they'll only work on Linux.
The tool is not specific to maven and will simply recurssively walk
the provided URL and download all files matching the following
pattern:
.*\.(jar|zip|war|ear|tar.gz)
There are some scripts in eye to check sums and sigs, and some releases
include bz'd tarballs. Would be great to be able to configure this.
Tar.gz files are downloaded though there is currently no support for
unpacking them.
Should be easy to add using Commons compress[1].
[1] http://commons.apache.org/compress/
# Output
Once the tool has run, the following files directories will exist:
repo/
content/
archives.html
licenses.html
notices.html
style.css
org.apache.openejb.openejb-core.3.0.4.openejb-core-3.0.4.jar.licenses.html
org.apache.openejb.openejb-core.3.0.4.openejb-core-3.0.4.jar.notices.html
org.apache.openejb.openejb-standalone.3.0.4.openejb-standalone-3.0.4.zip.licenses.html
org.apache.openejb.openejb-standalone.3.0.4.openejb-standalone-3.0.4.zip.notices.html
org.apache.openejb.openejb-tomcat-webapp.3.0.4.openejb-tomcat-webapp-3.0.4.war.licenses.html
org.apache.openejb.openejb-tomcat-webapp.3.0.4.openejb-tomcat-webapp-3.0.4.war.notices.html
...
Great :-)
Been thinking about generating html for ages...
<snip>
# Future work
Overall it would be great if this tool could perform some validation
Existence of LICENSE/NOTICE files:
- flag binaries that contain no LICENSE or NOTICE files
- flag binaries that contain too many LICENSE or NOTICE files
Contents of LICENSE/NOTICE files:
- better matching of missing license/notice text
- look false license/notice text, text that applied to "sub"
binaries once included in a binary, but are no longer present
eye does this sort of stuff (and more). Should be easy enough to port to
Java, or just run them in Jython.
Robert