Skip to content


Subversion checkout URL

You can clone with
Download ZIP
100644 142 lines (138 sloc) 6.66 KB
f950e77 @danlarkin use org-mode "Tags" instead to assign work in
danlarkin authored
1 #-*- mode: org -*-
2 #+startup: overview
3 #+startup: hidestars
06a584a @technomancy Add TODOs.
6 Leiningen TODOs
b3fe397 @technomancy Switching all Github URLs to https.
8 See also
7f5b862 @technomancy Ready for 1.4.0-SNAPSHOT.
de27390 @technomancy Don't create new skeleton in root. Expose leiningen.original.pwd.
10 * Open Questions
11 ** Aether: how would it integrate? Improvement over maven-ant-tasks?
12 ** Tests in Nailgun: would it require a separate shell script?
28faed0 @technomancy TODO updates.
13 ** How could nonlinear versions be represented?
0341867 @technomancy TODO updates.
14 * For 2.0
15 ** TODO Quit using ant's Java task. It is horrible.
16 Try a custom classloader approach?
17 ** TODO Use Aether instead of maven-ant-tasks?
19 ** TODO Rename test-resources to dev-resources
20 Breaking change; needs to wait for a major version bump.
a920ab9 @technomancy Added documentation TODOs.
21 ** TODO add option to use ~/.m2-based classpath instead of copying to lib/?
7f5b862 @technomancy Ready for 1.4.0-SNAPSHOT.
22 It looks like it would be easy to stop copying things into lib/ and
0341867 @technomancy TODO updates.
23 just use Maven's notion of the project's dependencies to construct a
24 classpath that references jars straight from ~/.m2.
663d26a @technomancy Move some TODOs to 2.0. Let's not get ahead of ourselves.
25 ** TODO spin lancet off into its own dependency
26 I've never felt comfortable about simply keeping it inline. On the
27 other hand if we quit using ant then we can skip this.
28 Needs to not be in the default package!
29 ** TODO shell wrappers should support multiple versions
30 We could write out a different "foo-$VERSION" shell wrapper for each
31 version of a project that gets installed and then have the plain
32 "foo" script look for a $VERSION env var if it's set, and if not
33 just fall back to the latest.
34 ** TODO classifiers for specifying what clojure version to use?
35 As more versions of Clojure start to exist, libraries may want to
36 publish different branches that target different versions of
37 Clojure itself. Classifiers may be the way to separate these out?
38 ** TODO a list of dirs to include in the jar when building
39 Some people have requested this.
40 ** TODO re-compile all deps with current clojure version
41 Another thing that's going to start becoming more important as more
42 Clojure versions are introduced.
43 ** TODO fail gracefully when run without an Internet connection (Issue #100)
44 ** TODO improve test coverage
45 ** TODO merge push task based on clj-ssh
46 lein-clojars task doesn't support DSA keys
7227039 @technomancy Mostly todos.
47 ** TODO integrate plugin task with lein-search
48 Would be better to be able to leave off version numbers
5182797 @technomancy Fall back to Clojure 1.2 until bootclasspath issues are resolved.
49 ** TODO add search functionality based on standard mvn lucene indexes
50 lein-search is cool, but it would be better to interoperate with
51 the standard lucene index system that Maven repositories offer.
52 This would also mean getting Clojars to produce those indices.
28faed0 @technomancy TODO updates.
53 * For 1.4
9a57aa2 @technomancy Nicer prompt interaction.
54 ** DONE socket timing issues with interactive tests
0c4e35c @technomancy Clean up a few bits of socket handling in repl and interactive tasks.
55 ** DONE connect to socket repl in interactive task
2bda774 @technomancy Add :uberjar-exclusions to project.clj.
56 ** DONE :uberjar-exclusions?
87753f8 @technomancy Include :all test selector by default.
57 ** DONE :all test-selector built-in
742738d @technomancy Fix unquote-project to preserve forms in test-selectors.
58 ** DONE test selectors need to support things like constantly, complement
fa2a0a0 @technomancy Mention features for 1.4 in tutorial/plugin docs.
59 ** DONE detect missing level of nesting in project.clj's deps/dev-deps
28faed0 @technomancy TODO updates.
60 ** DONE clear out non-transitive .class files after AOT
61 Luc Prefontaine has code for this.
62 ** DONE plugin task for managing/upgrading plugins
63 Manually copying jar files into ~/.lein/plugins is pretty
64 lame. Let's get a task to handle this. It could be implemented as a
65 plugin at first, maybe.
66 ** DONE merge lein-run task?
7f5b862 @technomancy Ready for 1.4.0-SNAPSHOT.
67 Ditto; this is something useful that many projects need.
de27390 @technomancy Don't create new skeleton in root. Expose leiningen.original.pwd.
68 ** DONE expose original pwd as property
d01365c @technomancy Call javac where appropriate in compile task.
69 ** DONE merge lein-javac task
70 Also make the compile task run it where appropriate.
0341867 @technomancy TODO updates.
71 ** DONE test selectors using metadata; run a subset of tests
72 We could have a :test-selectors key in project.clj that would map
73 keywords to predicate functions. Then the test task could take a
74 keyword argument and only run the subset of the tests for which
75 calling the predicate on its metadata returns true.
a1dc263 @technomancy TODO and NEWS updates.
76 * For 1.3.0
a466709 @technomancy Minor cleanup of :min-lein-version functions.
77 ** DONE specify min. lein version in project.clj
a920ab9 @technomancy Added documentation TODOs.
78 ** DONE :omit-source
3bd0e36 @technomancy Standalone install task implemented.
79 ** DONE lein install $PROJECT (works outside project root)
d0e1678 @technomancy Wrap checkout-deps read-project with more useful message. Fixes #85.
80 Possibly take some of this from cljr?
3bd0e36 @technomancy Standalone install task implemented.
81 ** DONE write shell wrappers on install
82 ** DONE include shell wrapper in jar file from template
0966229 @technomancy Clean up make-manifest. Fixes #46.
83 ** DONE set arbitrary jar metadata
d0e1678 @technomancy Wrap checkout-deps read-project with more useful message. Fixes #85.
84 ** DONE errors in read-project should show filename
85 ** DONE user-level plugin installation and activation
86 ** DONE user-level config file (with hook list)
56c6cb4 @technomancy Add initial hacking guide; still needs lots of work.
87 ** DONE get no-project-needed from arglist
88 ** DONE argument chaining
a1dc263 @technomancy TODO and NEWS updates.
89 ** DONE interactive task
90 ** DONE resources in generated pom
e9862ce @technomancy TODO updates.
91 * For 1.2.0
c21bbd9 @technomancy Release 1.2.0.
92 ** DONE Fix self-build clean problem
93 ** DONE Don't catch reader exceptions unless they are from ^D
9874a42 @technomancy Re-enable rlwrap in bin script.
94 ** DONE document checkout dependencies
95 ** DONE Re-enable rlwrap
d2e016c @technomancy Implemented documentation suggestions from readers.
96 ** DONE Move the intro into a tutorial
1e89f02 @technomancy Snapshot versions now work with self-install.
97 ** DONE bin script has stabilized; self-install for dev versions should work
20315e3 @technomancy Allow compile task to take a list of namespaces as arguments.
98 ** DONE accept list of namespaces to compile from command-line options
3a3366d @technomancy Document version ranges.
99 ** DONE document version ranges
b88d1b4 @technomancy Some notes.
100 ** DONE include lib/dev in find-lib-jars
46fa7d3 @technomancy Added plugin writing guide.
101 ** DONE document plugin creation
102 ** DONE document all known project.clj keys
7c37750 @technomancy Suppress annoying ant [null] prefix on all output.
103 ** DONE disable frickin [null] logging from ant (come on srsly)
8667bac @technomancy Don't try to read the test results doc if it doesn't exist.
104 ** DONE recover from missing test exit map gracefully
ad23727 @technomancy Include arglists in task help output.
105 ** DONE Help task should display arglist
ee96d8e @technomancy Traverse up the current directory's ancestors to find project root.
106 ** DONE walk up the filesystem to find project.clj
c99d4b5 @technomancy Make inter-task dependencies honor hooks.
107 ** DONE make inter-task dependencies honor hooks
0f49979 @technomancy Allow leaving the repl with ctrl-d.
108 ** DONE wire repl task up to socket repl
f1ae52a @technomancy Allow :warn-on-reflection to be set in project.clj
109 ** DONE allow *warn-on-reflection* to be turned on in project.clj
ad23727 @technomancy Include arglists in task help output.
110 ** DONE Expose hooks in built-in tasks so plugins may extend them
4014adf @technomancy NEWS/TODO updates.
111 ** DONE make org.clojure implied for clojure/contrib deps
112 ** DONE better way to force setFork in eval-in-project
113 ** DONE rename :namespaces key in project.clj
114 ** DONE include version in jar filenames
cd4b569 @technomancy Keep dev-dependencies in lib/dev, out of the way of uberjar.
115 ** DONE classpath task to just print configured classpath
116 ** DONE move repl task from shell script to clojure code
cdd56f9 @technomancy Rearrange TODO.
117 * For 1.1.0
118 ** DONE upgrade task (patch submitted)
119 ** DONE doc generation (autodoc plugin)
120 * For 1.0
121 ** DONE Remove install task dependency on having Maven installed :Phil:
122 ** DONE Use -Xbootclasspath where possible :Dan:
123 ** DONE Don't write manifest, pom, etc. to disk when jarring :Dan:
124 ** DONE Don't put uberjar in ~/.m2 :Phil:
125 ** DONE Perform compilation in either a subprocess or with a separate classloader
126 ** DONE Allow test task to take namespaces as an argument
127 ** DONE Fix eval-in-project to let plugins pass in extra args
128 ** DONE Resources directory added to classpath (for properties, etc)
2ea4b63 @technomancy Release 1.3.1.
129 * Plugin ideas
130 ** metrics
131 *** LOC
132 *** complexity
133 *** time logs
5b76514 @technomancy Bump version to 1.4.0-SNAPSHOT.
134 * Git-aware dependencies (experimental back-burner idea)
135 Talking with Rich after Emerging Langs day 1
136 Problem: you can pull in two versions of the same library
137 transitively without realizing it if people fork on clojars. How do
138 we detect this problem and de-dupe?
139 ** What if artifacts could be correlated with the git rev that produced them?
140 ** They have repository and sha1 metadata in their pom (but no history tree)
141 ** Cross-correlate with a separate revision metadata store?
Something went wrong with that request. Please try again.