Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
branch: master
Fetching contributors…

Cannot retrieve contributors at this time

170 lines (138 sloc) 8.456 kb
Tickets needing work for CLJ project
Date: October 1, 2014
If you are a Clojure contributor, the tickets below could use some
work. Some are easy, some are not. If you've never added a patch
before, or want a refresher on the mechanics, see (Note 1) near the
Keep reading below for a list of tickets that:
(a) have patches, but they need updating, or
(b) don't have patches, but are vetted, triaged, or are marked for
Release 1.6 of Clojure
The first letter on each patch summary line indicates the Approval of
the ticket: "T" for Triaged, "V" for Vetted, etc. After the ticket id
(CLJ-<number>) is the state of the ticket. See the JIRA workflow
diagram for details:
For a list of all tickets that don't have any patches, see (Note 2)
near the bottom.
Another way to help is to try out, read, review, comment on, and vote
for existing patches. See the separate "List of prescreened patches"
for those.
Tickets with prescreened patches, but they may need work, since the
ticket is marked Incomplete (I).
Clojure language/library bug fixes:
I CLJ-1322 Incomplete doseq.patch
I CLJ-1537 Incomplete clj-1537-v2.diff
Tickets marked for Clojure Release 1.7 that have no prescreened
patches (see also Note 3 at the bottom):
V 4 [CLJ-1208] Namespace is not loaded on defrecord class init
I 1 [CLJ-787] transient blows up when passed a vector created by subvec
I 0 [CLJ-1161] sources jar has bad resource
V 0 [CLJ-1192] vec function is substantially slower than into function
V 0 [CLJ-1535] Make boxed math warning suppressible
Tickets needing work that have no prescreened patches. These are all
Triaged (T), Vetted (V), or Incomplete (I). The number after the
letter is the number of votes, and tickets have been sorted from most
to fewest votes.
T 6 [CLJ-440] java method calls cannot omit varargs
T 4 [CLJ-976] Implement reader literal and print support for PersistentQueue data structure
T 4 [CLJ-1255] Support Abstract Base Classes with Java-only variant of "reify"
V 3 [CLJ-445] Method/Constructor resolution does not factor in widening conversion of primitive args
T 3 [CLJ-1026] Mixed end-of-line endings in the source code
V 2 [CLJ-415] smarter assert (prints locals)
The patch applies cleanly and passes tests, but gives a warning
because macro local-bindings is same name (and perhaps the same
author, since the body is almost the same) as a function
local-bindings in clojure.test.generative. If the one in
clojure.test.generative were moved to clojure.core,
test.generative could use that one.
T 2 [CLJ-1454] Companion to swap! which returns the old value
V 1 [CLJ-274] cannot close over mutable fields (in deftype)
T 1 [CLJ-1149] Unhelpful error message from :use (and use function) when arguments are malformed
T 1 [CLJ-1316] for doesn't support :let binding as its first seq-expr
T 1 [CLJ-1451] Add take-until
V 0 [CLJ-5] Unintuitive error response in clojure 1.0
One of two patches applied and built cleanly on May 4, 2012, but
not on May 10, 2012. The second, clj-5-destructure-error.diff,
failed to apply as of Oct 4, 2012.
V 0 [CLJ-47] GC Issue 43: Dead code in generated bytecode
V 0 [CLJ-69] GC Issue 66: Add "keyset" to Clojure; make .keySet for APersistentMap return IPersistentSet
V 0 [CLJ-84] GC Issue 81: compile gen-class fail when class returns self
V 0 [CLJ-211] Support arbitrary functional destructuring via -> and ->>
V 0 [CLJ-250] debug builds
V 0 [CLJ-291] (take-nth 0 coll) redux...
V 0 [CLJ-326] add :as-of option to refer
V 0 [CLJ-346] (pprint-newline :fill) is not handled correctly
V 0 [CLJ-348] reify allows use of qualified name as method parameter
T 0 [CLJ-704] range function has missing documentation
V 0 [CLJ-731] Create macro to variadically unroll a combinator function definition
V 0 [CLJ-771] Move unchecked-prim casts to clojure.unchecked
V 0 [CLJ-992] `iterate` reducer
T 0 [CLJ-1290] clojure.xml parse docstring omits InputSource
T 0 [CLJ-1329] Unused local variable in PersistentVector.cons()
V 0 [CLJ-1349] update to latest test.generative and prep for test.check
V 0 [CLJ-1420] ThreadLocalRandom instead of Math/random
T 0 [CLJ-1460] Clojure transforms literals of custom IPersistentCollections not created via deftype/defrecord to their generic clojure counterpart
T 0 [CLJ-1461] print-dup is broken for some clojure collections
T 0 [CLJ-1509] Some clojure namespaces not AOT-compiled and included in the clojure jar
T 0 [CLJ-1527] Harmonize accepted / documented symbol and keyword syntax over various readers
T 0 [CLJ-1542] Docstring for deliver should describe its return value
Tickets not fitting in previous categories, but they have a git format
patch that applies cleanly to latest Clojure master, written by a
contributor, and it does not build and pass tests.
Doc string fixes only:
CLJ-1002 Open document_chunk_fns_v2.patch
Clojure language/library bug fixes:
CLJ-1403 Open 0001-CLJ-1403-ns-resolve-returns-nil-if-class-is-not-foun.patch
Performance enhancement:
CLJ-15 Open lazy-incremental-hashes.diff
The tickets below are simply ones that seem like they might be a
reasonable amount of effort to create a patch, found by manual browing
through tickets.
CLJ-129 Add documentation to sorted-set-by detailing how the provided comparator may change set membership semantics
A thorough job of documenting this would require understanding
how Clojure functions are made to implement the Comparable
interface in of the Clojure source code, and the
restrictions in Java of what makes a "good" implementation of
the Comparator interface. Doing that clearly is probably best
done in a form longer than is acceptable in a doc string for
sorted-set-by or sorted-map-by, but perhaps such documentation
could be put at a link that could be added to the doc string.
A Clojure Google group thread at least partly on this topic:!topic/clojure/qfWY08hK6mc
(Note 1)
Read the documentation under the headings "Coding", "Adding patches",
"Removing patches", and "Updating stale patches" on this page:
(Note 2)
There are usually over 100 tickets matching a JIRA filter called
"Needs a Patch (all)". To see them, go to this link:
In the box labeled Author, type in Andy Fingerhut. Click on the
choice that pops up and the contents should change to my user account
name, jafingerhut. Click on the Search button at the bottom. Then
click on the filter called "Needs a Patch (all)". You can subscribe
to the filter, after which it should show up in your list of filters
under the Issues menu on this page:
Most "Needs a Patch" tickets have no patches attached. If it does
have a patch, then its Patch attribute needs to be changed. Read the
documentation on adding patches at the link in (Note 1) above.
Some of the older tickets have links to patches in the old Assembla
ticket system. If you add an attachment to the JIRA ticket, my
automated patch prescreening code will pick it up the next time I run
it (about once every week or two).
(Note 3)
To see a JIRA filter matching tickets that are marked for Release 1.6,
but are not marked as having a patch, follow the instructions for Note
2, except the filter name is "Needs a patch for Release 1.6"
Jump to Line
Something went wrong with that request. Please try again.