2009-11-25 03:33:07 +00:00
|
|
|
#-*- mode: org -*-
|
|
|
|
#+startup: overview
|
|
|
|
#+startup: hidestars
|
|
|
|
#+TODO: TODO | INPROGRESS | DONE
|
|
|
|
|
2009-11-24 06:24:28 +00:00
|
|
|
Leiningen TODOs
|
|
|
|
|
2010-09-08 21:06:17 +00:00
|
|
|
See also http://github.com/technomancy/leiningen/issues
|
|
|
|
|
2010-10-23 20:22:11 +00:00
|
|
|
* Open Questions
|
|
|
|
** Aether: how would it integrate? Improvement over maven-ant-tasks?
|
|
|
|
** Tests in Nailgun: would it require a separate shell script?
|
2010-09-25 20:47:37 +00:00
|
|
|
* For 2.0
|
|
|
|
** TODO Quit using ant's Java task. It is horrible.
|
|
|
|
Try a custom classloader approach?
|
|
|
|
** TODO Use Aether instead of maven-ant-tasks?
|
|
|
|
http://www.sonatype.com/people/2010/08/introducing-aether/
|
|
|
|
** TODO Rename test-resources to dev-resources
|
|
|
|
Breaking change; needs to wait for a major version bump.
|
2010-08-17 05:05:24 +00:00
|
|
|
** TODO add option to use ~/.m2-based classpath instead of copying to lib/?
|
2010-09-08 21:06:17 +00:00
|
|
|
It looks like it would be easy to stop copying things into lib/ and
|
2010-09-25 20:47:37 +00:00
|
|
|
just use Maven's notion of the project's dependencies to construct a
|
|
|
|
classpath that references jars straight from ~/.m2.
|
|
|
|
* For 1.4
|
2010-10-23 20:22:11 +00:00
|
|
|
** TODO explain unquote in sample.project.clj
|
|
|
|
** TODO clear out non-transitive .class files after AOT
|
|
|
|
Luc Prefontaine has code for this.
|
2010-10-16 16:35:35 +00:00
|
|
|
** TODO merge push task based on clj-ssh
|
2010-08-20 03:53:40 +00:00
|
|
|
** TODO plugin task for managing/upgrading plugins
|
2010-09-08 21:06:17 +00:00
|
|
|
Manually copying jar files into ~/.lein/plugins is pretty
|
|
|
|
lame. Let's get a task to handle this. It could be implemented as a
|
|
|
|
plugin at first, maybe.
|
2010-10-16 16:35:35 +00:00
|
|
|
** TODO integrate plugin task with lein-search
|
|
|
|
Would be better to be able to leave off version numbers
|
2010-08-20 20:58:50 +00:00
|
|
|
** TODO merge lein-search features?
|
2010-09-08 21:06:17 +00:00
|
|
|
This plugin is great; we should think about taking it into
|
|
|
|
Leiningen itself.
|
|
|
|
** TODO merge lein-run task?
|
|
|
|
Ditto; this is something useful that many projects need.
|
2010-07-11 15:00:48 +00:00
|
|
|
** TODO classifiers for specifying what clojure version to use?
|
2010-09-08 21:06:17 +00:00
|
|
|
As more versions of Clojure start to exist, libraries may want to
|
|
|
|
publish different branches that target different versions of
|
|
|
|
Clojure itself. Classifiers may be the way to separate these out?
|
2010-06-12 22:33:54 +00:00
|
|
|
** TODO a list of dirs to include in the jar when building
|
2010-09-08 21:06:17 +00:00
|
|
|
Some people have requested this.
|
2010-08-06 01:45:07 +00:00
|
|
|
** TODO re-compile all deps with current clojure version
|
2010-09-08 21:06:17 +00:00
|
|
|
Another thing that's going to start becoming more important as more
|
|
|
|
Clojure versions are introduced.
|
2010-09-05 22:19:18 +00:00
|
|
|
** TODO spin lancet off into its own dependency
|
2010-09-25 20:47:37 +00:00
|
|
|
I've never felt comfortable about simply keeping it inline. On the
|
|
|
|
other hand if we quit using ant then we can skip this.
|
2010-10-16 16:35:35 +00:00
|
|
|
Needs to not be in the default package!
|
2010-09-25 20:47:37 +00:00
|
|
|
** TODO shell wrappers should support multiple versions
|
|
|
|
We could write out a different "foo-$VERSION" shell wrapper for each
|
|
|
|
version of a project that gets installed and then have the plain
|
|
|
|
"foo" script look for a $VERSION env var if it's set, and if not
|
|
|
|
just fall back to the latest.
|
2010-09-08 21:06:17 +00:00
|
|
|
** TODO fail gracefully when run without an Internet connection (Issue #100)
|
2010-09-10 00:25:45 +00:00
|
|
|
** TODO improve test coverage
|
2010-10-23 20:22:11 +00:00
|
|
|
** DONE expose original pwd as property
|
2010-10-16 16:44:21 +00:00
|
|
|
** DONE merge lein-javac task
|
|
|
|
Also make the compile task run it where appropriate.
|
2010-09-25 20:47:37 +00:00
|
|
|
** DONE test selectors using metadata; run a subset of tests
|
|
|
|
We could have a :test-selectors key in project.clj that would map
|
|
|
|
keywords to predicate functions. Then the test task could take a
|
|
|
|
keyword argument and only run the subset of the tests for which
|
|
|
|
calling the predicate on its metadata returns true.
|
2010-08-06 01:45:07 +00:00
|
|
|
* For 1.3.0
|
2010-08-24 04:21:54 +00:00
|
|
|
** DONE specify min. lein version in project.clj
|
2010-08-17 05:05:24 +00:00
|
|
|
** DONE :omit-source
|
2010-08-11 03:04:57 +00:00
|
|
|
** DONE lein install $PROJECT (works outside project root)
|
2010-08-08 21:33:37 +00:00
|
|
|
Possibly take some of this from cljr?
|
2010-08-11 03:04:57 +00:00
|
|
|
** DONE write shell wrappers on install
|
|
|
|
** DONE include shell wrapper in jar file from template
|
2010-08-08 23:16:48 +00:00
|
|
|
** DONE set arbitrary jar metadata
|
2010-08-08 21:33:37 +00:00
|
|
|
** DONE errors in read-project should show filename
|
|
|
|
** DONE user-level plugin installation and activation
|
|
|
|
** DONE user-level config file (with hook list)
|
2010-08-08 18:11:48 +00:00
|
|
|
** DONE get no-project-needed from arglist
|
|
|
|
** DONE argument chaining
|
2010-08-06 01:45:07 +00:00
|
|
|
** DONE interactive task
|
|
|
|
** DONE resources in generated pom
|
2010-03-12 05:22:42 +00:00
|
|
|
* For 1.2.0
|
2010-07-18 20:33:36 +00:00
|
|
|
** DONE Fix self-build clean problem
|
|
|
|
** DONE Don't catch reader exceptions unless they are from ^D
|
2010-06-22 02:21:22 +00:00
|
|
|
** DONE document checkout dependencies
|
|
|
|
** DONE Re-enable rlwrap
|
2010-06-19 03:56:36 +00:00
|
|
|
** DONE Move the intro into a tutorial
|
2010-06-14 02:58:45 +00:00
|
|
|
** DONE bin script has stabilized; self-install for dev versions should work
|
2010-06-12 22:28:50 +00:00
|
|
|
** DONE accept list of namespaces to compile from command-line options
|
2010-06-12 06:01:39 +00:00
|
|
|
** DONE document version ranges
|
2010-06-07 04:18:56 +00:00
|
|
|
** DONE include lib/dev in find-lib-jars
|
2010-06-05 21:00:37 +00:00
|
|
|
** DONE document plugin creation
|
|
|
|
** DONE document all known project.clj keys
|
2010-06-04 16:09:35 +00:00
|
|
|
** DONE disable frickin [null] logging from ant (come on srsly)
|
2010-06-02 21:48:42 +00:00
|
|
|
** DONE recover from missing test exit map gracefully
|
2010-05-27 23:08:44 +00:00
|
|
|
** DONE Help task should display arglist
|
2010-05-27 22:54:43 +00:00
|
|
|
** DONE walk up the filesystem to find project.clj
|
2010-05-27 22:27:40 +00:00
|
|
|
** DONE make inter-task dependencies honor hooks
|
2010-05-27 22:15:32 +00:00
|
|
|
** DONE wire repl task up to socket repl
|
2010-05-19 05:35:21 +00:00
|
|
|
** DONE allow *warn-on-reflection* to be turned on in project.clj
|
2010-05-27 23:08:44 +00:00
|
|
|
** DONE Expose hooks in built-in tasks so plugins may extend them
|
2010-05-19 01:31:04 +00:00
|
|
|
** DONE make org.clojure implied for clojure/contrib deps
|
|
|
|
** DONE better way to force setFork in eval-in-project
|
|
|
|
** DONE rename :namespaces key in project.clj
|
|
|
|
** DONE include version in jar filenames
|
2010-04-17 05:24:01 +00:00
|
|
|
** DONE classpath task to just print configured classpath
|
|
|
|
** DONE move repl task from shell script to clojure code
|
2010-06-12 22:33:54 +00:00
|
|
|
* For 1.1.0
|
|
|
|
** DONE upgrade task (patch submitted)
|
|
|
|
** DONE doc generation (autodoc plugin)
|
|
|
|
* For 1.0
|
|
|
|
** DONE Remove install task dependency on having Maven installed :Phil:
|
|
|
|
** DONE Use -Xbootclasspath where possible :Dan:
|
|
|
|
** DONE Don't write manifest, pom, etc. to disk when jarring :Dan:
|
|
|
|
** DONE Don't put uberjar in ~/.m2 :Phil:
|
|
|
|
** DONE Perform compilation in either a subprocess or with a separate classloader
|
|
|
|
** DONE Allow test task to take namespaces as an argument
|
|
|
|
** DONE Fix eval-in-project to let plugins pass in extra args
|
|
|
|
** DONE Resources directory added to classpath (for properties, etc)
|
2010-09-08 01:54:35 +00:00
|
|
|
* Plugin ideas
|
|
|
|
** metrics
|
|
|
|
*** LOC
|
|
|
|
*** complexity
|
|
|
|
*** time logs
|
2010-08-20 20:58:50 +00:00
|
|
|
* Git-aware dependencies (experimental back-burner idea)
|
|
|
|
Talking with Rich after Emerging Langs day 1
|
|
|
|
Problem: you can pull in two versions of the same library
|
|
|
|
transitively without realizing it if people fork on clojars. How do
|
|
|
|
we detect this problem and de-dupe?
|
|
|
|
** What if artifacts could be correlated with the git rev that produced them?
|
|
|
|
** They have repository and sha1 metadata in their pom (but no history tree)
|
|
|
|
** Cross-correlate with a separate revision metadata store?
|