<< Back to previous view

[CONTRIB-19] Re-add auto-agent.clj Created: 19/Aug/09  Updated: 24/Aug/10

Status: Open
Project: Clojure-Contrib
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Defect
Reporter: Anonymous Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None


 Description   

This was discussed briefly on the clojure dev list, but no consensus was reached. Instead, I have attached the changes that have fixed the original library and if the clojure-contrib members wish to include it (again), then it's readily available.

The original code by Sierra required 2 changes to get working. First, @ was macro-expanding to a lazy-seq, so the filtering based on list? would fail. Second, I added a check for an explicit call to (deref). Also, I re-added auto-agent namespace for compilation to build.xml.

My live changes can be found at: http://github.com/fogus/clojure-contrib/tree/auto-agent-again. The tests can be run with (run-tests 'clojure.contrib.auto-agent).

If it is merged back into the contrib master, then I would be happy to roll the tests into the test-contrib framework.



 Comments   
Comment by Assembla Importer [ 24/Aug/10 4:15 AM ]

Converted from http://www.assembla.com/spaces/clojure/tickets/19
Attachments:
auto-agent-again.diff - https://www.assembla.com/spaces/clojure/documents/dHYyXWJour3OEFeJe5afGb/download/dHYyXWJour3OEFeJe5afGb

Comment by Assembla Importer [ 24/Aug/10 4:15 AM ]

fogus said: [file:dHYyXWJour3OEFeJe5afGb]

Comment by Assembla Importer [ 24/Aug/10 4:15 AM ]

stuart.sierra said: Updating tickets (#28, #32, #45, #47, #51, #19)





[CONTRIB-71] patch for changing assert-args over to :pre and :post for c.c.mock Created: 08/Feb/10  Updated: 24/Aug/10

Status: Open
Project: Clojure-Contrib
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Defect
Reporter: Anonymous Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None


 Description   

I've cleaned up the documentation and got rid of the old assert-args code from c.c.mock. The attached patches contain the two commits I made on my repository. I'm new to patches and git so let me know if I missed anything obvious!



 Comments   
Comment by Assembla Importer [ 24/Aug/10 2:17 PM ]

Converted from http://www.assembla.com/spaces/clojure/tickets/71
Attachments:
0001-cleaned-up-formatting-and-improved-documentation-of-.patch - https://www.assembla.com/spaces/clojure/documents/bANPRCfq0r34l9eJe5afGb/download/bANPRCfq0r34l9eJe5afGb
0002-removed-assert-args-macro-borrowed-from-core-and-rep.patch - https://www.assembla.com/spaces/clojure/documents/bANTaAfq0r34l9eJe5afGb/download/bANTaAfq0r34l9eJe5afGb
c.c.mock-updates.diff - https://www.assembla.com/spaces/clojure/documents/djL5oaC8Wr37DOeJe5cbLr/download/djL5oaC8Wr37DOeJe5cbLr

Comment by Assembla Importer [ 24/Aug/10 2:17 PM ]

matt.clark.1 said: [file:djL5oaC8Wr37DOeJe5cbLr]: Use only this patch. The other two are hopelessly out of date.





[CONTRIB-85] build and release sublibraries Created: 26/May/10  Updated: 24/Aug/10

Status: Open
Project: Clojure-Contrib
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Defect
Reporter: Anonymous Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None


 Description   

Design goals

  • keep key libraries in contrib, protecting provenance and license so that non-technical issues do not keep people from using code
  • continue to produce a monolithic contrib build for casual/one-off application consumers
  • start building individual libraries within contrib, so that larger apps can manage dependencies in a granular fashion

I propose we start with the new match (matchure) library, get feedback, and then take requests for what other libraries need to be bundled separately.



 Comments   
Comment by Assembla Importer [ 24/Aug/10 11:18 AM ]

Converted from http://www.assembla.com/spaces/clojure/tickets/85





[CONTRIB-107] Build Broken since April 8th Created: 15/Apr/11  Updated: 26/Jul/13

Status: Open
Project: Clojure-Contrib
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Defect Priority: Blocker
Reporter: Paul Michael Bauer Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Environment:

All


Attachments: Text File 0001-Changes-to-clojure-1.3-alpha-break-the-build-logging.patch    
Patch: Code and Test

 Description   

Since the April 8th commit to no longer recognize "earmuff" variables as dynamic by default, clojure-contrib/logging and clojure-contrib/trace are broken.



 Comments   
Comment by Paul Michael Bauer [ 15/Apr/11 11:01 PM ]

There is a pending pull request to fix logging and trace.

Comment by Paul Michael Bauer [ 17/Apr/11 8:38 AM ]

I posted this after observing the broken build and not realising clojure-contrib was recently deprecated.
Apologies. I would close this, but my perms don't allow it?





[CONTRIB-106] variable name colision in java-utils/set-system-properties Created: 09/Mar/11  Updated: 09/Mar/11

Status: Open
Project: Clojure-Contrib
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Defect Priority: Major
Reporter: Marcin Kozey Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Environment:

1.3.0-SNAPSHOT



 Description   

(defn set-system-properties
"Set some system properties. Nil clears a property."
[settings]
(doseq [[name val] settings]
(if val
(System/setProperty (name name) (name val))
(System/clearProperty (name name)))))

Somebody did a find/replace as-str -> name and created fn/variable colision with "name"






[CONTRIB-110] clojure.contrib.json does not parse JSON strings containing back slashes on Windows Created: 27/May/11  Updated: 27/May/11

Status: Open
Project: Clojure-Contrib
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Defect Priority: Major
Reporter: Rick Moynihan Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Environment:

Clojure 1.2.1 and Clojure contrib 1.2.0 on Windows 7 with Sun JVM 1.6.0_22-b04



 Description   

This bug does not seem to occur on my Linux box, but when run under Windows I get the following:

user> (read-json "\"C:\\Users\"")

"C:nullsers"

On Linux I get what I would expect:

user> (read-json "\"C:\\Users\"")

"C:\Users"





[CONTRIB-111] Build failure against edge clojure Created: 01/Jun/11  Updated: 01/Jun/11

Status: Open
Project: Clojure-Contrib
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Defect Priority: Major
Reporter: Amitava Shee Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None
Environment:

clojure tip - commit 66a88de9408e93cf2b0d73382e662624a54c6c86
clojure-contrib tip - commit 4b562d9d110f169ea37c320edf96ad78c2fb2618



 Description   

Build failure

ashee:clojure-contrib amitava$ mvn assembly:assembly -Dclojure.jar=/Users/amitava/opt/clojure/clojure.jar

....Lots of output elided....

Testing clojure.contrib.test-logging
Exception in thread "main" java.lang.IllegalStateException: Can't dynamically bind non-dynamic var: clojure.contrib.logging/log-factory
at clojure.lang.Var.pushThreadBindings(Var.java:339)
at clojure.core$push_thread_bindings.invoke(core.clj:1716)
at clojure.contrib.test_logging$eval248$fn__249.invoke(test_logging.clj:19)
at clojure.test$compose_fixtures$fn_6529$fn_6530.invoke(test.clj:670)
at clojure.test$default_fixture.invoke(test.clj:663)
at clojure.test$compose_fixtures$fn__6529.invoke(test.clj:670)
at clojure.test$test_all_vars.invoke(test.clj:705)
at clojure.test$test_ns.invoke(test.clj:728)
at clojure.core$map$fn__3840.invoke(core.clj:2433)
at clojure.lang.LazySeq.sval(LazySeq.java:42)
at clojure.lang.LazySeq.seq(LazySeq.java:60)
at clojure.lang.Cons.next(Cons.java:39)
at clojure.lang.RT.boundedLength(RT.java:1607)
at clojure.lang.RestFn.applyTo(RestFn.java:130)
at clojure.core$apply.invoke(core.clj:602)
at clojure.test$run_tests.doInvoke(test.clj:743)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at user$eval488$fn__491.invoke(run-test8724407867004279179.clj:9)
at user$eval488.invoke(run-test8724407867004279179.clj:7)
at clojure.lang.Compiler.eval(Compiler.java:6406)
at clojure.lang.Compiler.load(Compiler.java:6843)
at clojure.lang.Compiler.loadFile(Compiler.java:6804)
at clojure.main$load_script.invoke(main.clj:282)
at clojure.main$script_opt.invoke(main.clj:342)
at clojure.main$main.doInvoke(main.clj:426)
at clojure.lang.RestFn.invoke(RestFn.java:408)
at clojure.lang.Var.invoke(Var.java:401)
at clojure.lang.AFn.applyToHelper(AFn.java:161)
at clojure.lang.Var.applyTo(Var.java:518)
at clojure.main.main(main.java:37)
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] Clojure Contrib parent module ..................... SKIPPED
[INFO] def ............................................... SKIPPED
[INFO] types ............................................. SKIPPED
[INFO] generic ........................................... SKIPPED
[INFO] accumulators ...................................... SKIPPED
[INFO] agent-utils ....................................... SKIPPED
[INFO] base64 ............................................ SKIPPED
[INFO] jar ............................................... SKIPPED
[INFO] classpath ......................................... SKIPPED
[INFO] combinatorics ..................................... SKIPPED
[INFO] command-line ...................................... SKIPPED
[INFO] complex-numbers ................................... SKIPPED
[INFO] cond .............................................. SKIPPED
[INFO] seq ............................................... SKIPPED
[INFO] condition ......................................... SKIPPED
[INFO] core .............................................. SKIPPED
[INFO] graph ............................................. SKIPPED
[INFO] except ............................................ SKIPPED
[INFO] dataflow .......................................... SKIPPED
[INFO] datalog ........................................... SKIPPED
[INFO] error-kit ......................................... SKIPPED
[INFO] fcase ............................................. SKIPPED
[INFO] find-namespaces ................................... SKIPPED
[INFO] fnmap ............................................. SKIPPED
[INFO] prxml ............................................. SKIPPED
[INFO] gen-html-docs ..................................... SKIPPED
[INFO] greatest-least .................................... SKIPPED
[INFO] import-static ..................................... SKIPPED
[INFO] java-utils ........................................ SKIPPED
[INFO] jmx ............................................... SKIPPED
[INFO] json .............................................. SKIPPED
[INFO] lazy-seqs ......................................... SKIPPED
[INFO] lazy-xml .......................................... SKIPPED
[INFO] logging ........................................... SKIPPED
[INFO] macro-utils ....................................... SKIPPED
[INFO] macros ............................................ SKIPPED
[INFO] map-utils ......................................... SKIPPED
[INFO] math .............................................. SKIPPED
[INFO] miglayout ......................................... SKIPPED
[INFO] mmap .............................................. SKIPPED
[INFO] ns-utils .......................................... SKIPPED
[INFO] mock .............................................. SKIPPED
[INFO] monads ............................................ SKIPPED
[INFO] monadic-io-streams ................................ SKIPPED
[INFO] priority-map ...................................... SKIPPED
[INFO] stream-utils ...................................... SKIPPED
[INFO] probabilities ..................................... SKIPPED
[INFO] profile ........................................... SKIPPED
[INFO] reflect ........................................... SKIPPED
[INFO] repl-ln ........................................... SKIPPED
[INFO] repl-utils ........................................ SKIPPED
[INFO] server-socket ..................................... SKIPPED
[INFO] set ............................................... SKIPPED
[INFO] singleton ......................................... SKIPPED
[INFO] sql ............................................... SKIPPED
[INFO] with-ns ........................................... SKIPPED
[INFO] strint ............................................ SKIPPED
[INFO] swing-utils ....................................... SKIPPED
[INFO] trace ............................................. SKIPPED
[INFO] zip-filter ........................................ SKIPPED
[INFO] complete .......................................... SKIPPED
[INFO] standalone ........................................ SKIPPED
[INFO] Clojure Contrib ................................... FAILURE [2:34.296s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2:35.348s
[INFO] Finished at: Wed Jun 01 21:48:18 EDT 2011
[INFO] Final Memory: 10M/81M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.theoryinpractise:clojure-maven-plugin:1.3.3:test (test-clojure) on project logging: Clojure failed. -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR] mvn <goals> -rf :logging






[CONTRIB-113] There needs to be a way to collect regular arguments in tools.cli Created: 18/Jul/11  Updated: 18/Jul/11

Status: Open
Project: Clojure-Contrib
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Enhancement Priority: Major
Reporter: Anthony Simpson Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None


 Description   

In clojure.contrib.command-line, you could specify a 'catch-all' argument at the end of your spec and all arguments after the ones that were parsed would be collected in. In tools.cli, nothing like this seems to exist.

For example, with tools.cli, there is no way to handle stuff like this: "myapp --foo bar --baz foo a b c". The last three arguments, a, b, and c will all be discarded with no way to retrieve them.

Finally, if this wasn't the right place to put this issue, I apologize. tools.cli doesn't seem to be listed as a project and you guys don't accept issues on Github, so I wasn't sure what else to do.






[CONTRIB-117] POM file for math.combinatorics Created: 09/Sep/11  Updated: 09/Sep/11

Status: Open
Project: Clojure-Contrib
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Enhancement Priority: Major
Reporter: Michael Nygard Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None

Attachments: XML File pom.xml    
Patch: Code

 Description   

I noticed that math.combinatorics isn't being built or released yet. Here is the pom file needed to get it into CI builds.






[CONTRIB-102] clojure.contrib.core/-?> (and perhaps others?) have a quoting bug Created: 07/Dec/10  Updated: 26/Jul/13

Status: Open
Project: Clojure-Contrib
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Defect Priority: Major
Reporter: Jason Wolfe Assignee: Laurent Petit
Resolution: Unresolved Votes: 0
Labels: None
Environment:

1.2 and 1.3


Attachments: File fix-CONTRIB-102.diff     File patch.diff    
Patch: Code

 Description   

See:

https://groups.google.com/group/clojure/browse_frm/thread/cc88ca26352bc604?hl=en#

When called via a namespace-qualified symbol and given three or more arguments, -?> gives the error:

user=> (clojure.contrib.core/-?> 1 inc inc)
CompilerException java.lang.Exception: Unable to resolve symbol: -?>
in this context, compiling:(NO_SOURCE_PATH:3)



 Comments   
Comment by Alan Malloy [ 07/Dec/10 11:27 PM ]

Root cause is in clojure.contrib.core/defnilsafe, so similar functions like .?. will have the same problem. I futzed around for a while to try and figure it out, but defnilsafe is a little too meta for me. The problem is, predictably enough once you've glanced at the code, with ~'~nil-safe-name.

The general solution ought to look like
(let [qname (symbol (name (ns-name *ns*)) (str nil-safe-name))]
`(existing body...
(more stuff using ~qname instead of ~'~nil-safe-name...)))

But I couldn't make it quite work.

Comment by Laurent Petit [ 08/Dec/10 2:14 AM ]

Patch added.

Simple patch where I specifically use fully qualified names when calling defnilsafe.

Comment by Alan Malloy [ 09/Jan/11 4:23 AM ]

What about this patch instead? It makes sure to resolve the symbols supplied to defnilsafe while still within the c.c.core namespace.

I also made the arglists a bit less ugly.





[CONTRIB-83] clojure.contrib.shell broken with clojure commit 37d8f7a Created: 12/May/10  Updated: 08/Jan/11

Status: Open
Project: Clojure-Contrib
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Defect Priority: Minor
Reporter: Assembla Importer Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None


 Description   

clojure.core/byte was modified a couple weeks ago as follows:

(defn byte
"Coerce to byte"
{:tag Byte
:inline (fn [x] `(. clojure.lang.RT (byteCast ~x)))}

  • [^Number x] (. x (byteValue)))
    + [^Number x] (clojure.lang.RT/byteCast x))

byteValue and byteCast behave differently with values outside the
range of byte values:
user=> (. 255 (byteValue))
-1
user=> (clojure.lang.RT/byteCast 255)
java.lang.IllegalArgumentException: Value out of range for byte: 255
(NO_SOURCE_FILE:0)

The new version breaks clojure.contrib.shell/sh's :out :bytes mode (mapping byte over values returned by InputStream.read in shell.clj, line 125).
Perhaps have sh use #(.byteValue %) instead of byte? (untested)



 Comments   
Comment by Assembla Importer [ 24/Aug/10 11:01 AM ]

Converted from http://www.assembla.com/spaces/clojure/tickets/83

Comment by Allen Rohner [ 08/Jan/11 1:58 PM ]

I've tested that using #(.byteValue %) rather than byte? fixes the problem.





[CONTRIB-108] c.c.pprint pprint-logical-block macro using private var Created: 05/May/11  Updated: 05/May/11

Status: Open
Project: Clojure-Contrib
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Defect Priority: Minor
Reporter: Nevena Vidojevic Assignee: Unassigned
Resolution: Unresolved Votes: 1
Labels: None


 Description   

pprint-logical-block macro can't be used from the outside:
java.lang.IllegalStateException: var: clojure.contrib.pprint/current-level is not public






[CONTRIB-103] type hinting for clojure.contrib.condition Created: 22/Nov/10  Updated: 27/Dec/10

Status: Open
Project: Clojure-Contrib
Component/s: None
Affects Version/s: None
Fix Version/s: None

Type: Enhancement Priority: Trivial
Reporter: Ben Mabey Assignee: Unassigned
Resolution: Unresolved Votes: 0
Labels: None

Attachments: Text File 0001-adds-type-hinting-to-Condition.patch    
Patch: Code
Approval: Vetted

 Description   

I ran into the situation where reflection in clojure.contrib.condition was taking up much more time than I would have liked it too. I added the needed type hints to avoid reflection and the changes have solved the problem for me.

I've attached the patch. It is also available on github if you prefer:

https://github.com/bmabey/clojure-contrib/commit/acf0017e4b8c4259a03fba03a90050b0e9cb0890






Generated at Wed Oct 01 11:39:15 CDT 2014 using JIRA 4.4#649-r158309.