This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2016-04-28
Channels
- # admin-announcements (1)
- # aws (2)
- # beginners (21)
- # boot (28)
- # braid-chat (1)
- # cider (51)
- # cljs-edn (7)
- # cljsjs (35)
- # cljsrn (2)
- # clojure (85)
- # clojure-chicago (7)
- # clojure-czech (1)
- # clojure-gamedev (3)
- # clojure-poland (2)
- # clojure-russia (80)
- # clojure-sanfrancisco (1)
- # clojure-uk (5)
- # clojurebridge (9)
- # clojurescript (68)
- # cursive (29)
- # datomic (23)
- # emacs (2)
- # hoplon (94)
- # jobs-discuss (15)
- # juxt (2)
- # liberator (2)
- # luminus (16)
- # mount (12)
- # off-topic (7)
- # om (57)
- # onyx (58)
- # proton (10)
- # re-frame (9)
- # reagent (38)
- # remote-jobs (2)
- # rum (12)
- # untangled (136)
https://github.com/6ewis/guestbook/blob/master/resources/sql/queries.sql what am I doing wrong ; lein repl :connect 7000 then I run (get-messages). note that (save-messages!) work as expected
CompilerException java.lang.RuntimeException: Unable to resolve symbol: get-messages in this context, compiling:(/private/var/folders/nl/3t4zhhzn2yn4clw132q7crhh0000gn/T/form-init3623113136178228423.clj:1:1)
if I clone that repo, and start a lein repl in it, #'guestbook.db.core/get-messages
does exist
@richiardiandrea: timbre is badly coded, and it is maintained by an asshole who is quick to block contributors he doesn't like.
@crocket: well I have not seen bad coding, and the doc can always be peer-improved...of course I know nothing about the maintainer (and by the way there is a Code of Conduct here)
You haven't seen bad coding probably because you haven't tried to fix the bugs or investigate undocumented behaviors in timbre.
I tried to improve undocumented behaviors by documenting and providing a patch, but the maintainer blocked me within a day.
@crocket: it is open source after all, when I see a problem, I try (if I have time) to fix it myself and push upstream
@crocket: understand
@crocket what alternatives do you see then?
I contributed to unilog, and the maintainer accepted my patch as quickly as humany possible after review.
on Javascript I like cljs-console
by the Adzerk family, but of course it does not provide Clojure+ClojureScript appenders
I have also the problem that it still contains cljx
files and boot-cljs
seems to avoid them...
but ok thanks for the suggestion
I'll have a look
I mean in order to support it I would have to downgrade the cljs compiler..maybe...not doable
or upgrade timbre cljx to cljc, but I am going off topic...
I’ve always found the maintainer of Timbre to be very pleasant and welcoming toward contributors. I haven’t used Timbre, but I’ve used several other projects by that author.
Yep, Peter is great.
but I think you're better off integrating with the java ecosystem, hence why I target logback and try to have a sensible data-based configuration for it. This allows the following: - Configuring your logs - Configuring logs from other Java/JVM libraries - Still allowing you to provide external configuration for logging if that's your thing
There are also facilities for building structured log (or log context in the logback terminology) but you still log with clojure.tools.logging (which everyone else does anyway).
Hello. Im trying to make a call to a RESTful web service using "clojure.java.shell". The call has oAuth token and other authentication data along with the URI. This command works for me from ccommand line "terminal". however when trying through clojure REPL (counterclockwise) it throws an exception : "IOException error=63, File name too long java.lang.UNIXProcess.forkAndExec (UNIXProcess.java:-2)". any pointers on this?
hi, why are you using a shell to call a service? Are you trying to span curl or wget from clojure?
@shreyas.n: You should try clj-http, or http kit
shreyas.n: you also should check out the docs for clojure.java.shell/sh and look at some examples, it is likely you are trying to pass the command and arguments as a single string, which is not how that function works
As a side note, why doesn't Java.shell let you pass a single string?
so that you can pass arguments with spaces in them without descending into shell quoting hell
I imagine, anyway. on unix, certainly, the underlying exec*
calls take an array of strings
if you want parsing compatible with how /bin/sh
does it, you could always actually invoke /bin/sh with something like (sh "/bin/sh" "-c" "ls -l my list of files foo bar baz")
is it normal for (clojure.edn/read-string "0something") to throw a number format exception ?
Hi, whats the best why to continue after catching an exception in Clojure when looping over a collection?
@crankyadmin: Exception handlers in the JVM are executed after the stack has been unwound, so your handler cannot resume to the point where the exception has thrown. You'll have to catch and handle the exception inside of your handler if you want the looping to continue.
Thank @hans
hey all - anyone use korma? just looking at this for first time and have basic issue - stumped
@pauldelany: i thought it was nice but found that you could not use it to join the same table twice. we're now using honeysql which is great.
@hans - ah, cool - didn't realise that. Will take a look for comparison, thanks.
@pauldelany: also take a look at HugSQL
thanks @thiagofm
@hans - any caveats with honeysql you can mention offhand?
@pauldelany: Nope, nothing that I could easily think of. Except, of course, that it makes your queries unreadable to people who only know SQL.
that's not an issue then, thanks!
maybe
(defmacro iff [p f x & [y]]
`(if ~p
(~f ~x)
~(or y x)))
@pauldelany: when you want to use database specific features that HoneySQL doesn't know about (yet) it takes a good bit of plumbing
it's all built on protocols so it's extensible. I'm using the new PostgreSQL "upsert" syntax. I figured out how to add it in the end, but it wasn't exactly well documented
@entrobe: @nonrecursive Why use a macro here? A simple function would do it too?
I'm guessing it depends if you want the arguments to be evaluated in the call to ifff
@sveri yeah the macro is slightly different from what entrobe asked about in that it lets you specify an optional expression for the else clause, and because of that you want a macro so that you don’t to evaluate both x
and y
. yours is nice and makes sense to me
@nonrecursive: Ok, I got it
Hello guys, I am new on Clojure world, but have some experience with Java (~ 9 yrs). Nice to meet you all ...
has anyone implemented a connection-pool in pure Clojure?
@odinodin: jar -tf <path to jar file>
@sorenmacbeth: I mean from inside an app
it is not possible to do that, resources are loaded via a classloader, and the classloader api for resources is basically a read only k/v kind of interface
generally, if you want to do something like that you create yourself a file like mystuff.edn in your jar, that contains a list of resources, and load that instead of doing a listing yourself
keep in mind that
will by default return one resource from some default classloader, but you can get resources from a specific classloader, and you can get all t he resources with a given name (there can be multiple)
https://docs.oracle.com/javase/7/docs/api/java/lang/ClassLoader.html#getResource%28java.lang.String%29 and https://docs.oracle.com/javase/7/docs/api/java/lang/ClassLoader.html#getResources%28java.lang.String%29 are the java apis
food for thought: structure your data to fit your task, not your algorithm to fit your data.
thanks @plexus