Skip to content

Latest commit

 

History

History
57 lines (55 loc) · 2.54 KB

todo.org

File metadata and controls

57 lines (55 loc) · 2.54 KB

#-*- mode: org -*-

Leiningen TODOs

For 1.0

Remove install task dependency on having Maven installed

Use -Xbootclasspath where possible

Don’t write manifest, pom, etc. to disk when jarring

Don’t put uberjar in ~/.m2

Perform compilation in either a subprocess or with a separate classloader

Allow test task to take namespaces as an argument

Fix eval-in-project to let plugins pass in extra args

Resources directory added to classpath (for properties, etc)

For 1.1.0

upgrade task (patch submitted)

doc generation (autodoc plugin)

For 1.2.0

make org.clojure implied for clojure/contrib deps

better way to force setFork in eval-in-project

System/exit appropriately when testing based on pass/fail (abedra)

unpredictable hangs when tasks finish (mtm looking into this)

rename :namespaces key in project.clj

include version in jar filenames

a list of dirs to include in the jar when building

specify min. lein version in project.clj

set arbitrary jar metadata

classpath task to just print configured classpath

walk up the filesystem to find project.clj

move repl task from shell script to clojure code

allow warn-on-reflection to be turned on in project.clj

repl task exits on some projects (sample) (patch for this?)

For later

write shell wrappers

lein install $PROJECT (works outside project root)

lein add $DEPENDENCY (inserts it into :dependencies in project.clj)

user config file for activating plugins across all projects

re-compile all deps with current clojure version

Better deployment features

“lein install $PROJECT” without a checkout

create shell scripts post-install

Improve plugins

Expose hooks in built-in tasks so plugins may extend them

Allow plugins to be activated user-wide (maybe system-wide?)

Plugin Ideas:

Code statistics (LOC, doc coverage, etc)

Graph output for dependencies between namespaces

Checkout task: install the jar in ~/.m2 and look for SCM repository metadata

Start web server for web-related projects

Multi-module builds

Repository search

Low Priority

Run failed tests task

Remove duplication between deps.clj and pom.clj

Help task should display arglist