Re: Immutable names of things?

2017-12-07 Thread Chas Emerick
No, this is an excellent idea. Joe Armstrong is probably the most notable modern figure to have written and talked about making code content-addressable, with chunks of code (I forget the granularity he proposed, probably top-levels?) having names as metadata. IIRC, first at

Re: Migrating nREPL out of Clojure Contrib

2017-11-07 Thread Chas Emerick
with things from JIRA that will get burned down prior to a 1.0.0 release. All the best, - Chas On 10/9/2017 14:59, Chas Emerick wrote: > I have opened two issues on the original nREPL repo: > > 1. Describing the background and rationale for the work to be done: > https://github.com/cemerick/nR

Re: Migrating nREPL out of Clojure Contrib

2017-10-09 Thread Chas Emerick
I have opened two issues on the original nREPL repo: 1. Describing the background and rationale for the work to be done: https://github.com/cemerick/nREPL/issues/1 2. Enumerating the nREPL contributors to obtain explicit permission for their commits to be distributed under the terms of EPL only

Re: Migrating nREPL out of Clojure Contrib

2017-07-18 Thread Chas Emerick
Of course, my aim would be to gather as much consensus as possible around a single nREPL vector; this thread is the first effort in service of that, with presumably much more ahead. An obvious move for example would be to shim out the legacy namespaces until a major version number change, so that

Re: Migrating nREPL out of Clojure Contrib

2017-07-18 Thread Chas Emerick
On 7/18/2017 14:40, Alex Miller wrote: > > If all of the nontrivial contributors to the project decide they > want to change the license later, do we also need to obtain Rich's > assent? > > > This has nothing to do with Rich or the contributors. The project is > available as open

Re: Migrating nREPL out of Clojure Contrib

2017-07-18 Thread Chas Emerick
's the > downside to just forking? aka why bother rebooting from scratch? > > >> On Jul 18, 2017, at 05:48, Chas Emerick <c...@cemerick.com> wrote: >> >> Hi all, >> >> I've been approached many, many times over the years (and more frequently >> sin

Migrating nREPL out of Clojure Contrib

2017-07-18 Thread Chas Emerick
Hi all, I've been approached many, many times over the years (and more frequently since the development and inclusion of socket-repl) about the potential of moving nREPL[1] out of clojure contrib…either back to its original location[2], or under one of the various Clojure community

Re: Tentacles; Going Forward

2017-02-08 Thread Chas Emerick
I only became aware of this conversation yesterday; hopefully no one was looking for my reply earlier… Anthony was a friend, but our project activity was quite separate. I think we had a couple of PRs on each other's projects, but that's about it. I don't think I have any particular authority

RIP Anthony Grimes (Raynes)

2016-12-07 Thread Chas Emerick
As some may have already seen on Twitter or other channels, our friend Anthony Grimes (Raynes in #clojure IRC and elsewhere, @StRaynes on Twitter) has passed away. The most immediate announcement of this came via Lance Bradley, one of Anthony's closer friends from the Clojure community:

Re: Using metadata to specify how calls to a macro should be indented

2015-09-16 Thread Chas Emerick
Hi all; here to satisfy the quarterly quota to maintain my status as "that guy". This is a questionable proposal. It: * introduces completely orthogonal, transient concerns (presentation) into code, ideally a canonical, long-lived source-of-truth * sets up a bikeshed at the top of every def*

Re: JSON authentication with cemerick/friend?

2014-05-26 Thread Chas Emerick
Friend requires some ring middleware, including the keyword params middleware. Not having it included in your app will produce this. If you are using Compojure's handler middlewares, this is done for you. This particular example is broken because you're applying the middleware in the wrong

Re: cljsbuild hooks + rsync/ssh

2014-03-22 Thread Chas Emerick
That does sound very questionable, but you should be able to wire this up using :notify-command: https://github.com/emezeske/lein-cljsbuild/blob/master/sample.project.clj#L73 - Chas On 03/22/2014 07:06 AM, t x wrote: Hi, This sounds sorta silly: I'm already running lein cljsbuild

Re: rant / cljs in cljs ? :-)

2014-03-22 Thread Chas Emerick
updates. Chas Emerick writes: This particular trick is a clever one (that I'm afraid I've had some hand in propagating, for the benefit of those that like an auto + browser refresh workflow), but it's never going to be particularly efficient. By its very nature, pdo sets up cljx and cljsbuild

Re: rant / cljs in cljs ? :-)

2014-03-21 Thread Chas Emerick
This particular trick is a clever one (that I'm afraid I've had some hand in propagating, for the benefit of those that like an auto + browser refresh workflow), but it's never going to be particularly efficient. By its very nature, pdo sets up cljx and cljsbuild off and running without any

Re: CLJX CLJS problem

2014-02-14 Thread Chas Emerick
This isn't really right. :source-paths are for your _sources_, not a place to drop in whatever paths you want either on the classpath or included in jar files, etc. Also, all generated content should go into `target/*`, so that `lein clean` will have its intended effect (eliminating all

Re: CLJX CLJS problem

2014-02-14 Thread Chas Emerick
a pointer to the relevant leiningen docs (if they exist). In any case, thanks! DD (2014/02/14 19:14), Chas Emerick wrote: This isn't really right. :source-paths are for your _sources_, not a place to drop in whatever paths you want either on the classpath or included in jar files, etc. Also

Re: [ClojureScript] ANN: ClojureScript 0.0-2067, regressions, type inference numeric checks

2013-11-22 Thread Chas Emerick
the org.clojars.magomimmo/shoreleave-remote-ring dependency which uses the 0.7.10 release. hih mimmo On Nov 22, 2013, at 5:36 PM, Chas Emerick c...@cemerick.com mailto:c...@cemerick.com wrote: https://github.com/emezeske/lein-cljsbuild/issues

ANN: double-check, a Clojure/ClojureScript-portable fork of simple-check

2013-11-21 Thread Chas Emerick
Reid Draper's simple-check[1] is a generative/property-based testing library for Clojure that implements (and improves upon IMO) the shrinking of failing test cases seen in e.g. quickcheck in the Haskell and Erlang lands. simple-check has totally changed how I do certain kinds of testing.

Re: ANN: double-check, a Clojure/ClojureScript-portable fork of simple-check

2013-11-21 Thread Chas Emerick
. :-) - Chas On Thu 21 Nov 2013 02:01:02 PM EST, Max Penet wrote: Looks good! I am wondering though, why not merging your work on the parent project instead of creating a new one (with a new name etc), you seemed to be on your way of doing just this? On Thursday, November 21, 2013 5:38:16 PM UTC+1, Chas

Re: 2013 State of Clojure ClojureScript survey results

2013-11-19 Thread Chas Emerick
is. On Mon, Nov 18, 2013 at 2:32 PM, Chas Emerick c...@cemerick.com wrote: Results of this year's survey are available here: http://cemerick.com/2013/11/18/results-of-the-2013-state-of-clojure-clojurescript-survey/ Thank you to all that participated! Best, - Chas -- -- You received this message

2013 State of Clojure ClojureScript survey results

2013-11-18 Thread Chas Emerick
Results of this year's survey are available here: http://cemerick.com/2013/11/18/results-of-the-2013-state-of-clojure-clojurescript-survey/ Thank you to all that participated! Best, - Chas -- -- You received this message because you are subscribed to the Google Groups Clojure group. To post

Last chance 2013 State of Clojure ClojureScript survey

2013-11-12 Thread Chas Emerick
This is the final call to participate in the 2013 State of Clojure ClojureScript survey; no more responses will be accepted after noon EST *tomorrow*. http://cemerick.com/2013/11/05/2013-state-of-clojure-clojurescript-survey/ Please take 5 minutes to participate: doing so is very important

The 2013 State of Clojure ClojureScript survey is now open

2013-11-05 Thread Chas Emerick
As in years past, I am running a 'State of Clojure' survey, which this year also includes a full section on ClojureScript: http://cemerick.com/2013/11/05/2013-state-of-clojure-clojurescript-survey/ Your participation is most welcome. And, please do what you can to spread the above link

[ANN] Friend 0.2.0 released

2013-10-01 Thread Chas Emerick
Hi all, Friend is an extensible authentication and authorization library for Clojure Ring web applications and services. [com.cemerick/friend 0.2.0] has been released to Clojars. You can find the changelog here: https://github.com/cemerick/friend/blob/master/CHANGES.md Aside from the bump

Re: with-redefs vs. constant folding

2013-08-14 Thread Chas Emerick
No; functions with :inline-* metadata (go look at the source for +, for example) are...inlined, thus eliminating var lookups, and any effect of binding, with-redefs, etc. The workaround for this is to call through the var: user= (with-redefs [+ list] (#'+ 1 2)) (1 2) Cheers, - Chas On

Re: Question on `cljx` and `lein-dalap`

2013-08-12 Thread Chas Emerick
On Aug 11, 2013, at 5:19 PM, Shantanu Kumar wrote: Hi, I am thinking about how to use Cljx correctly in my projects (for portability); I have few questions: 1. I understand the Cljx plugin generates .clj and .cljs source code in target/classes destination. Does that mean, when I

[ANN] Austin — the ClojureScript browser-REPL, rebuilt stronger, faster, easier

2013-08-05 Thread Chas Emerick
As you might know, I've been tinkering with an easier-to-use variant of ClojureScript's browser-REPL for some time. I've finally wrapped that up into its own project, Austin: https://github.com/cemerick/austin Everything you need to know is there. The tl;dr is: 1. You can have a

Re: [ANN] Austin — the ClojureScript browser-REPL, rebuilt stronger, faster, easier

2013-08-05 Thread Chas Emerick
On Aug 5, 2013, at 9:21 AM, Chas Emerick wrote: As you might know, I've been tinkering with an easier-to-use variant of ClojureScript's browser-REPL for some time. I've finally wrapped that up into its own project, Austin: https://github.com/cemerick/austin Everything you need

Re: Interest in a Full Featured Clojure Blog Engine

2013-07-19 Thread Chas Emerick
On Jul 19, 2013, at 2:46 PM, Timothy Washington wrote: I've deliberately proposed a small core, so that you can use only the pieces you absolutely need. Additionally, I think it encourages a clean design, forcing explicit interaction semantics between system components. If we accept this

Re: OAuth2

2013-07-16 Thread Chas Emerick
Hi Steven, I'm sorry to hear you didn't find Friend easy to use. FWIW, you (and whoever is following along) might find this helpful: https://friend-demo.herokuapp.com/ There are live examples of apps using OpenID, OAuth (via github), and more pedestrian stuff like forms and HTTP

Re: test.generative and data.generators

2013-07-15 Thread Chas Emerick
Shrinking is a key requirement for me as well (1000-line-long data literals that produce a failure are better than nothing, but not quite as nice as its shrunken 40-character literal that provokes the same failure). You might be interested in simple-check, which is a Clojure property-based

Re: Doc about auto-namespaced keywords (e.g. ::user)?

2013-07-10 Thread Chas Emerick
Hi Bastien, We talked about namespaced keywords in 'Clojure Programming'. A brief introduction to them can be found on page 14, which you can get for free @ http://clojurebook.com (look for the first chapter link on the right). They're used for more than e.g. unambiguously keying slots in a

cljx 0.3.0 released

2013-07-10 Thread Chas Emerick
Earlier today, we released [com.keminglabs/cljx 0.3.0], which brings a bunch of significant changes and improvements: https://github.com/lynaghk/cljx Existing users should review the changelog entry, as this is a breaking release:

Re: [ANN] 16th tutorial of the modern-cljs series

2013-07-08 Thread Chas Emerick
a complete lib where you want (i.e. write one run on both sides of the web). I dedicated this tutorial to Chas Emerick for his amazing work (and the book too) that helped me a lot in each step ahead I do with this wonderful unifying language. Thanks so much Chas! Here is the link

Re: Detecting login and logout using friend

2013-06-28 Thread Chas Emerick
Rather than looking at session changes (which may not capture all authentications, e.g. requests carrying HTTP Basic creds), why not a utility that composes workflow fns, squirting authentication events out the side? Your app is entirely responsible for logouts (you're either calling

[ANN] core.incubator 0.1.3

2013-06-14 Thread Chas Emerick
FYI, [org.clojure/core.incubator 0.1.3] has been released: https://github.com/clojure/core.incubator/ The only change was to note that two of the macros it provides (-? and -?) are now deprecated, having been effectively promoted into Clojure itself in v1.5.0 (as some- and some-,

Re: Why aim for repeatability of specification / generative testing?

2013-06-06 Thread Chas Emerick
Well, if *that's* all it is, I'll feel like quite the heel for putting so much thought into it! ;-) Assuming failures are rarer, then starting with a just-previously-failed seed would be better as an explicit action, rather than defaulting to a constant? - Chas On Jun 6, 2013, at 3:21 PM,

Re: Why aim for repeatability of specification / generative testing?

2013-06-06 Thread Chas Emerick
of different seed values to increase test coverage, and if any of them fails, you can turn on the extra logging and re-run it, knowing that you will hit the same problem as before. Andy On Thu, Jun 6, 2013 at 12:30 PM, Chas Emerick c...@cemerick.com wrote: Well, if *that's* all it is, I'll

Re: Why aim for repeatability of specification / generative testing?

2013-06-06 Thread Chas Emerick
result, with different maximum clock speed hence different performance. Hence having a repeatable build was necessary to ensure uniform performance from the same source code. On Jun 6, 2013 10:38 PM, Chas Emerick c...@cemerick.com wrote: Thanks for that perspective, Andy! It sounds like one

Re: Making things go faster

2013-06-05 Thread Chas Emerick
Hi David, It's odd/interesting that you're finding yourself restarting the JVM regularly. For many years, I've developed Clojure with very rare restarts; especially if my baseline project configuration is stable, I often have REPL sessions that last days. (Random thought: it'd be cute if

Re: login with friend, but username blank, despite keyword-params middleware in place

2013-04-29 Thread Chas Emerick
There's too much here for me to comb through. A couple of things: https://friend-demo.herokuapp.com/interactive-form is a complete demo application that uses Friend's interactive-form workflow. You might have seen this already; if not, it's a good starting point. Second, try adding a verbose

Re: Securing Clojure + Clojurescript Web App

2013-04-01 Thread Chas Emerick
I think different people are asking different questions here. Authenticating via an XHR or similar is very straightforward if you are using a single-step authentication method like the username/password interactive workflow. Just POST to the right URL with username/password data, and carry on

Re: Invoke a specific multimethod

2013-03-31 Thread Chas Emerick
March 2013 07:20:54 UTC-4, Chas Emerick wrote: On Mar 30, 2013, at 12:00 AM, George Oliver wrote: On Friday, March 29, 2013 6:19:19 PM UTC-7, JvJ wrote: Is it possible to invoke a particular multimethod and bypass the dispatch function? For instance, suppose that I have a multimethod

Re: Invoke a specific multimethod

2013-03-30 Thread Chas Emerick
On Mar 30, 2013, at 12:00 AM, George Oliver wrote: On Friday, March 29, 2013 6:19:19 PM UTC-7, JvJ wrote: Is it possible to invoke a particular multimethod and bypass the dispatch function? For instance, suppose that I have a multimethod with a dispatch value of ::foo, and it's a

Re: clojureans in Boston and NYC

2013-03-11 Thread Chas Emerick
The Boston Clojure group is very healthy, engaging, and enjoyable: http://www.meetup.com/Boston-Clojure-Group/ And, if you get out further my way, we'd love to have you as a guest at the Functional Programmer Connoisseurs: http://www.meetup.com/Functional-Programming-Connoisseurs/ Cheers, -

Re: how does one embed nrepl in his own application?

2013-03-05 Thread Chas Emerick
See https://github.com/clojure/tools.nrepl#embedding-nrepl-starting-a-server Cheers, - Chas -- http://cemerick.com [Clojure Programming from O'Reilly](http://www.clojurebook.com) On Mar 5, 2013, at 10:03 AM, Jim - FooBar(); wrote: Hi all, I am intrigued about the idea of communicating

Re: Wrong clojure version depending on lein dependencies (was: ANN: Clojure 1.5)

2013-03-04 Thread Chas Emerick
On Mar 4, 2013, at 7:36 AM, Meikel Brandmeyer (kotarak) wrote: Hi, Am Montag, 4. März 2013 13:00:31 UTC+1 schrieb Wolodja Wentland: It is up to a community to fix things that are broken in their toolset and Do not use version ranges is IMHO the wrong answer. Huge +1. I was

Re: Wrong clojure version depending on lein dependencies (was: ANN: Clojure 1.5)

2013-03-04 Thread Chas Emerick
On Mar 4, 2013, at 9:01 AM, Meikel Brandmeyer (kotarak) wrote: Hi Chas, Am Montag, 4. März 2013 14:33:29 UTC+1 schrieb Chas Emerick: There are a lot of reasons for this, but #1 for me is that few people understand the implications of version ranges, either downstream of their published

Re: Securing Clojure + Clojurescript Web App

2013-02-26 Thread Chas Emerick
On Feb 26, 2013, at 11:24 AM, Ari wrote: Hi, I'd appreciate suggestions on how I can/should secure my clojure/clojurescript single page web app that relies heavily on shoreleave-remote. With other frameworks, upon authentication I've created a roles cookie that the clientside uses to

Re: Redefinition of datatypes

2013-02-23 Thread Chas Emerick
On Feb 23, 2013, at 11:35 AM, Stuart Sierra wrote: Furthermore, according to the policy of the Maven Central Repository, we cannot deploy anything which depends on third-party repositories. Therefore we cannot deploy core.typed to the Central Repository unless all its dependencies are also

Re: does lein2 use repositories defined in ~/.m2/settings.xml?

2013-02-21 Thread Chas Emerick
On Feb 21, 2013, at 4:28 AM, Michael Klishin wrote: 2013/2/21 James Xu xumingming64398...@gmail.com Thanks! But it sounds odd to me that lein does not use ~/.m2/settings.xml, why this decision? I wasn't the one who's made this decision but here's my understanding. Leiningen 2 uses

Re: *read-eval* vulnerability

2013-02-09 Thread Chas Emerick
Hi all, It looks like Rich has selected an approach to addressing *read-eval*, #=, and related issues. The sands may still be shifting a bit, but far less than e.g. earlier this week. With that in mind, I thought it might be helpful to point to three authoritative messages from the

Re: *read-eval* vulnerability

2013-02-02 Thread Chas Emerick
not a low-impact fix, but IMHO we should take the time and get it right before 1.5.0 Regards, BG On Sat, Feb 2, 2013 at 4:01 AM, Chas Emerick c...@cemerick.com wrote: I have added a patch to CLJ-1153 that appears to address the *read-eval* problem: http://dev.clojure.org/jira/browse/CLJ

Re: *read-eval* vulnerability

2013-02-02 Thread Chas Emerick
:43 PM, Chas Emerick c...@cemerick.com wrote: Hi Baishampayan, I got such errors when I first started working on the patch; they were caused by the compiler using print-dup'd strings to create namespaces instead of emitting bytecode (which the patched build includes). Is it possible

Re: *read-eval* vulnerability

2013-02-02 Thread Chas Emerick
One thing that hasn't been mentioned so far is that AOT-compiled classfiles generated using prior builds of Clojure will not load using a build of Clojure that includes a patch like this. Just something to consider for those of you taking the time to test, etc. - Chas -- -- You received

Re: *read-eval* vulnerability

2013-02-01 Thread Chas Emerick
On Jan 31, 2013, at 8:03 PM, Chas Emerick wrote: On Jan 30, 2013, at 5:59 PM, Michał Marczyk wrote: On 30 January 2013 23:32, Chas Emerick c...@cemerick.com wrote: On Jan 30, 2013, at 12:23 PM, Michael Fogus wrote: RuntimeException EvalReader not allowed when *read-eval* is false

Re: *read-eval* vulnerability

2013-02-01 Thread Chas Emerick
I have added a patch to CLJ-1153 that appears to address the *read-eval* problem: http://dev.clojure.org/jira/browse/CLJ-1153?focusedCommentId=30523#comment-30523 code on github: https://github.com/cemerick/clojure/commit/1f5c19c07443d2535ede4ff71d23b40c195d617f artifact on Clojars:

multicore list processing (was Re: abysmal multicore performance, especially on AMD processors)

2013-01-31 Thread Chas Emerick
about this at a meetup in Amherst MA yesterday, and while I'm not sufficiently on top of the JVM or system issues to have briefed everyone on all of the details there has been a little of followup since the discussion, including results of some different experiments by Chas Emerick

Re: multicore list processing (was Re: abysmal multicore performance, especially on AMD processors)

2013-01-31 Thread Chas Emerick
On Jan 31, 2013, at 9:23 AM, Marshall Bockrath-Vandegrift wrote: Chas Emerick c...@cemerick.com writes: The nature of the `burn` program is such that I'm skeptical of the ability of any garbage-collected runtime (lispy or not) to scale its operation across multiple threads. Bringing you

Re: *read-eval* vulnerability

2013-01-31 Thread Chas Emerick
On Jan 30, 2013, at 5:59 PM, Michał Marczyk wrote: On 30 January 2013 23:32, Chas Emerick c...@cemerick.com wrote: On Jan 30, 2013, at 12:23 PM, Michael Fogus wrote: RuntimeException EvalReader not allowed when *read-eval* is false. The problem is that the second eval gets (the actual

Re: *read-eval* vulnerability

2013-01-30 Thread Chas Emerick
This is exactly the thread that I meant to start a couple of weeks ago. Thanks for giving me the kick in the pants, Takahiro. :-) What brought the issue to the fore for me: * a greatly increased interest in security issues due to my own work's requirements * the most recent arbitrary code

Re: *read-eval* vulnerability

2013-01-30 Thread Chas Emerick
I think the objective is to make read, read-string, etc. safe. Explicit use of eval is what it is...short of sandboxing, you're opting into all that eval implies. - Chas Michael Fogus mefo...@gmail.com wrote: RuntimeException EvalReader not allowed when *read-eval* is false. The problem is

Re: *read-eval* vulnerability

2013-01-30 Thread Chas Emerick
On Jan 30, 2013, at 12:23 PM, Michael Fogus wrote: RuntimeException EvalReader not allowed when *read-eval* is false. The problem is that the second eval gets (the actual + function 1 2 3) which invokes the right pathway triggering the exception. You can trigger the same exception by:

Re: do background threads sometimes swallow exceptions?

2013-01-29 Thread Chas Emerick
On Jan 29, 2013, at 4:56 PM, Michael Klishin wrote: 2013/1/30 larry google groups lawrencecloj...@gmail.com That is good to know. I have the top level function call wrapped in a try/catch block, but I suppose I'll get better results if I do more of the try/catch at a lower level, closer

Re: Error on redirect when attempting unauthorized entry to Friend route

2013-01-18 Thread Chas Emerick
If you're being redirected to: http://localhost:4/login?login_failed=Yusername=lawrence Then the problem is that you're not using the credentials for one of the users you've specified (e.g. root or jane). - Chas On Jan 17, 2013, at 1:43 PM, larry google groups wrote: How

Re: Unexpected failure (split function)

2013-01-18 Thread Chas Emerick
: This issue appears to be unique to using a Leiningen version 2 REPL. It does not occur if using java -cp clojure.jar clojure.main to get a REPL, nor with Leiningen version 1.7.1. CCing nrepl developer Chas Emerick in case this might be an issue with nrepl, but I haven't attempted

Re: Error on redirect when attempting unauthorized entry to Friend route

2013-01-16 Thread Chas Emerick
On Jan 16, 2013, at 1:45 AM, larry google groups wrote: For anyone else who might make the same mistake I did, I changed this: (GET /admin request (friend/authorize #{::admin} (admin request))) to this: (GET /admin request (friend/authorize #{::admin} {} (admin request))) adding

Re: Error on redirect when attempting unauthorized entry to Friend route

2013-01-16 Thread Chas Emerick
On Jan 16, 2013, at 9:07 AM, larry google groups wrote: I define a var with user info like this: (ns kiosks-clojure.fake-data-for-development (:require [cemerick.friend :as friend] (cemerick.friend [workflows :as workflows] [credentials :as

Re: Error on redirect when attempting unauthorized entry to Friend route

2013-01-16 Thread Chas Emerick
On Jan 16, 2013, at 12:03 PM, larry google groups wrote: I am ignorant about the implications of using :: to namespace vars. The fact that I have ::admin in one namespace: :users {root{:username lawrence :password (creds/hash-bcrypt admin_password)

Re: How do I install guice?

2013-01-14 Thread Chas Emerick
Please change your Friend dependency to [com.cemerick/friend 0.1.3]. Prior versions transitively depended upon a Guice artifact that was hosted on a now-404 Maven repository via Google Code's svn. Friend = 0.1.3 depends only on artifacts available in Clojars and Maven Central, and will remain

Re: How do I install guice?

2013-01-14 Thread Chas Emerick
. Could not find artifact com.google.code.guice:guice:pom:2.0 in alchim.snapshots (http://alchim.sf.net/download/snapshots) On 14 Sty, 11:12, Chas Emerick c...@cemerick.com wrote: Please change your Friend dependency to [com.cemerick/friend 0.1.3]. Prior versions transitively depended

Friend 0.1.3 released

2013-01-13 Thread Chas Emerick
I released [com.cemerick/friend 0.1.3] to Clojars this afternoon. Friend is an extensible authentication and authorization library for Clojure Ring web applications and services: https://github.com/cemerick/friend This release has a mix of fixes and minor enhancements; the changelog is

tools.nrepl 0.2.0 released

2013-01-12 Thread Chas Emerick
I released [org.clojure/tools.nrepl 0.2.0] this morning. The plan (AFAIK) is for this to be transitively rolled into Leiningen 2.0.0 final, which will thus flow through to a variety of toolchains. Thank you to everyone that has helped get nREPL to this point. I am particularly grateful to all

Re: tools.nrepl 0.2.0 released

2013-01-12 Thread Chas Emerick
Hah, I suppose a URL might help for those that aren't familiar with nREPL: http://github.com/clojure/tools.nrepl - Chas On Jan 12, 12:25 pm, Chas Emerick c...@cemerick.com wrote: I released [org.clojure/tools.nrepl 0.2.0] this morning. The plan (AFAIK) is for this to be transitively

nREPL 0.2.0-RC2

2013-01-08 Thread Chas Emerick
I released [org.clojure/tools.nrepl 0.2.0-RC2] last night. Thanks to Tim Pope for raising a couple of issues he encountered through the course of his integrating nREPL into foreplay last month. This will be 0.2.0 final later this week, barring any jarring new bug reports. Also note that nREPL

core.match gotcha

2013-01-06 Thread Chas Emerick
I've recently started using core.match, which has been quite pleasant and successful; thank you to David Nolen, and all others that have contributed. The only hiccup I've had has been around how core.match incorporates bindings from local scope into pattern rows. A stupid example demonstrating

Re: core.match gotcha

2013-01-06 Thread Chas Emerick
On Jan 6, 2013, at 10:48 AM, Ambrose Bonnaire-Sergeant wrote: On a related note, combining a quoted symbol and a named wildcard pattern seems to be buggy. clojure.core.match= (match 'my-sym a a) #CompilerException java.lang.RuntimeException: Unable to resolve symbol: ocr-3612 in this

Re: core.match gotcha

2013-01-06 Thread Chas Emerick
On Jan 6, 10:48 am, Ambrose Bonnaire-Sergeant abonnaireserge...@gmail.com wrote: On a related note, combining a quoted symbol and a named wildcard pattern seems to be buggy. clojure.core.match= (match 'my-sym a a) #CompilerException java.lang.RuntimeException: Unable to resolve symbol:

Re: Writing a simple nrepl middleware and client

2012-12-27 Thread Chas Emerick
Tim, Your middleware never sends a response. Each request message can produce multiple response messages, sent at some later time (i.e. the request/response cycle is fundamentally asynchronous). Handler return values are ignored. So, assoc'ing the result into the request message as the

Re: Need help in geeting cemerick/friend working with openid

2012-12-20 Thread Chas Emerick
a look. Thanks, Murtaza On Thursday, December 20, 2012 12:12:27 AM UTC+5:30, Chas Emerick wrote: The parameter name is 'identifier' (not 'openid_identifier') by default (which you can customize if you want by specifying a :user-identifier-param option in openid/workflow). That said

Re: Need help in geeting cemerick/friend working with openid

2012-12-20 Thread Chas Emerick
was posting data as application/json, that is the reason it was failing. Also thanks for the pointer on realm. Thanks, Murtaza On Thursday, December 20, 2012 4:03:19 PM UTC+5:30, Chas Emerick wrote: Your Clojure code is correct. However, whatever you're using to produce the POST to /openid

Re: Need help in geeting cemerick/friend working with openid

2012-12-19 Thread Chas Emerick
Murtaza, First, you need to either (a) :allow-anon? false in the configuration map you provide to friend/authenticate — it is true by default, or (b) Use an authorization guard (which can include friend/authenticated, which reuses the authorization mechanism to ensure that only authenticated

Re: Need help in geeting cemerick/friend working with openid

2012-12-19 Thread Chas Emerick
The parameter name is 'identifier' (not 'openid_identifier') by default (which you can customize if you want by specifying a :user-identifier-param option in openid/workflow). That said, the NPE you just hit has drawn my attention to an (unrelated) bug in the openid workflow. Thanks! :-) -

Re: Tail call in multi method?

2012-12-17 Thread Chas Emerick
`recur` throws control flow to the nearest `loop` head or fn body, and each method is itself a function, so `recur` within a method body will simply jump to the start of the method, _not_ tail-call the multimethod. e.g.: = (defmulti foo type) #'user/foo = (defmethod foo Long [x]

Re: Tail call in multi method?

2012-12-17 Thread Chas Emerick
On Dec 17, 2012, at 12:39 PM, Ben Wolfson wrote: On Mon, Dec 17, 2012 at 9:32 AM, Chas Emerick c...@cemerick.com wrote: What you're trying to do is really a special case of mutual recursion: because Clojure's methods are separate functions, calling back through the multimethod (and its

[ANN] clojure-sec

2012-12-14 Thread Chas Emerick
Some recent discussions related to my development of Friend have prompted me to create a new group: https://groups.google.com/group/clojure-sec Dedicated to discussing security issues affecting those building applications with Clojure and its variants. I'm sure many of us are building

Re: A Working nrepl-ritz Setup?

2012-12-10 Thread Chas Emerick
On Dec 8, 2012, at 6:37 PM, Charles Comstock wrote: I still encounter some sort of issue where it appears that the documentation querying functions, find-doc, and doc and the like are not being properly brought into the repl namespace, which breaks ctrl-d d until I manually bring that

Re: STM - a request for war stories

2012-12-10 Thread Chas Emerick
On Dec 10, 2012, at 5:39 AM, Marko Topolnik wrote: The very fact that there has been no reply to this for five days may mean something. I can personally attest to STM being very difficult to put to real-life use because there is always that one thing you absolutely need for your problem,

Re: STM - a request for war stories

2012-12-10 Thread Chas Emerick
On Dec 10, 2012, at 8:37 AM, Marko Topolnik wrote: It's true that STM is all or nothing, but it is so over the scope of refs you choose. If there's some side-effecting bit you need to do somewhere, then clearly that's not going to fit within a transaction…but that bit will often fit just

Re: class loaders stack constant grow in REPL

2012-12-10 Thread Chas Emerick
Good catch, guys. Interesting that I never noticed this; likely because Pomegranate's `classloader-hierarchy` function ends up starting its walk from (RT/baseLoader) (which will be changing to the context classloader shortly):

[ANN] New functional programming group (Western Massachusetts)

2012-12-07 Thread Chas Emerick
With help from some friends, I am starting a new FP group here in Western Massachusetts: http://www.meetup.com/Functional-Programming-Connoisseurs/ From the meetup.com description: Open to any and all that have functional and logical tastes in programming languages and data models.

Re: ANN: contrib-repl

2012-12-04 Thread Chas Emerick
On Dec 4, 2012, at 2:52 AM, Laurent PETIT wrote: 2012/12/4 rob r.p.l...@gmail.com: That was my first thought, and considered also generating a project.clj, but after thinking about it I decided I didn't want to encourage this type of behavior beyond REPL experimentation, so I preferred to do

Re: Docs on standard protocols

2012-11-27 Thread Chas Emerick
Having a good Java IDE around (e.g. Eclipse or IntelliJ) certainly helps, though not so much in developing a comprehensive mental model of how everything fits together. Some years ago, Chris Houser worked at building static visualizations of the core Clojure interfaces and abstract

Re: refer-clojure seems to have no effect.

2012-11-22 Thread Chas Emerick
The user namespace is implicitly created with a blanket refer for clojure.core; removing the mapping for e.g. '== in user would require using ns-unmap. Just use a different namespace. - Chas On Nov 22, 2012, at 8:40 AM, Frederik De Bleser wrote: Hi, I'm trying to use core.logic using the

Removing URLClasspath from Pomegranate

2012-11-22 Thread Chas Emerick
Tobias Crawley rightly suggested that Pomegranate's URLClasspath protocol should be factored out into a separate project, so as to provide a common abstraction for interacting with dynamic classloaders. The new project (dynapath @ https://github.com/tobias/dynapath) is already being used by

nREPL status

2012-11-21 Thread Chas Emerick
FYI, an updated cut of high-level nREPL documentation is now available: https://github.com/clojure/tools.nrepl There's a fair bit more I plan on adding, but I think some reorganization into different pages for different topics is warranted at this point before the README gets any more

Re: Run Counterclockwise nREPL on specific port

2012-11-20 Thread Chas Emerick
On Nov 20, 2012, at 3:22 PM, Vladimir Tsichevski wrote: CCW has a 'connect to repl' option under 'Window'. It asks doe an IP and a port number...is this what you're looking for? Exactly! The menu location is quite unusual for Eclipse :-( Heh, this one's on me; I put it in the Window menu.

Re: ANN concerto 0.1.0-SNAPSHOT

2012-11-13 Thread Chas Emerick
Bravo. I suspect there's lots of fertile ground for supporting alternative topologies using custom middlewares and transports. Carry on. :-) - Chas On Nov 13, 2012, at 2:24 PM, Jamie Brandon wrote: Concerto extends nrepl (and nrepl.el) with a broadcast mechanism so that multiple users can

Re: Interactive form workflow with Friend, can't log in

2012-11-12 Thread Chas Emerick
Looks like you're not using the keyword-params middleware, which Friend requires (among others). Please check the last paragraph in the 'Authentication' section here: https://github.com/cemerick/friend/#authentication Once you add that, then the interactive-form middleware will pick

Re: Some Friend documentation and regarding documentation in general

2012-10-28 Thread Chas Emerick
On Oct 28, 2012, at 2:57 PM, Patrik Sundberg wrote: I've looked at this for a bit now. It seems there are some slight inconsistencies in how the redirect info is used: Where the redirect-on-autth? is being set up for the interactive-form workflow it looks to me to be assumed to be a

  1   2   3   4   5   >