Skip to content
This repository has been archived by the owner on Aug 22, 2019. It is now read-only.

A leiningen plugin that attempts to download all of the source code for all of a project's (transitive) dependencies

License

Notifications You must be signed in to change notification settings

puppetlabs-toy-chest/lein-ubersource

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

#WARNING! This repo is not maintained

lein-ubersource

A Leiningen plugin to download source code for all (transitive) dependencies of a project.

The original motivation was to make it really simple to get all of the upstream Java source code for projects that have Java dependencies. This makes it easy to, e.g., grep through the entire source tree to see if a certain class is used (which can be extremely handy when trying to determine whether or not an Oracle CVE affects your project).

Leiningen (via Clojars)

Put the following into the :plugins vector of the :user profile in your ~/.lein/profiles.clj:

[lein-ubersource "0.1.1"]

This plugin is destined for Leiningen >= 2.0.0.

Usage

Simply run lein ubersource, and the plugin will do the following:

  • Determine the list of all of the dependencies (including transitive) for your current leiningen project
  • Create a directory called target/ubersource
  • For each dependency:
    • Check all of your project's repositories for a sources jar for that dependency
    • If a sources jar is not available, fall back to the "main" jar for that dependency (for clojure projects, this likely is the "source" jar)
    • Unzip the jar file into a directory inside of target/ubersource.

License

Copyright © 2014 Puppet Labs

Distributed under the Apache License, v2. See LICENSE

About

A leiningen plugin that attempts to download all of the source code for all of a project's (transitive) dependencies

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published