Prgram uses a lot of swap

2017-02-24 Thread Cecil Westerhof
Some time ago a wrote a simple program. It uses the H2 database and seesaw.
It mostly sits idle, but from time to time I use it to fetch info from the
database.
I start it with:
lein run

It uses up quite a bit of swap. It is now running for a little longer as a
week. The lein run process uses 107 MB of swap. And my own program uses 135
MB of swap. I find this a ‘bit’ excessive.

What could be the problem? I am using openSUSE and leiningen 2.6.1.

-- 
Cecil Westerhof

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Prgram uses a lot of swap

2017-02-24 Thread Timothy Baldridge
What are the JVM memory settings set at? And how much physical memory does
the box have?

Timothy

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: how to send SSL certificate in POST request?

2017-02-24 Thread Kevin Corcoran
On Thu, Feb 23, 2017 at 5:11 PM, mascip  wrote:

> Amazing, thank you James, thank you Micheal, it works!
>
> In Perl things are often pretty complex, but in this specific case the
> code is dead easy:
>
> my $client = REST::Client->new(
>   cert => '/path/to/ssl.cert',
>   key => '/path/to/ssl.key');
>
> my $response = $client->POST(
> 'https://.../api/certlogin',
> 'username=' . $username . '&password=' . $->password);
>
>
> -- Pierre Masci
>


Pierre, you might be interested in
https://github.com/puppetlabs/clj-http-client.  It provides an HTTP client
which has an interface like you're describing.  The docs appear to be a bit
lacking, but you can basically write:

(let [client (http/create-client
  {:ssl-cert "/path/to/ssl.cert"
   :ssl-key "/path/to/ssl.key"
   :ssl-ca-cert "/path/to/ssl.cert"})]
  (http/post client "https://.../api/certlogin";))

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: how to send SSL certificate in POST request?

2017-02-24 Thread mascip
Nice :-)

Under the hood it uses (puppetlabs.http.client.common/make-request) . I
found the definition of the protocol, but not the actual implementation of
make-request .
Well, that doesn't matter so much, now I've got something that works!

Thank you again

-- Pierre Masci

On 24 February 2017 at 14:55, Kevin Corcoran  wrote:

> On Thu, Feb 23, 2017 at 5:11 PM, mascip  wrote:
>
>> Amazing, thank you James, thank you Micheal, it works!
>>
>> In Perl things are often pretty complex, but in this specific case the
>> code is dead easy:
>>
>> my $client = REST::Client->new(
>>   cert => '/path/to/ssl.cert',
>>   key => '/path/to/ssl.key');
>>
>> my $response = $client->POST(
>> 'https://.../api/certlogin',
>> 'username=' . $username . '&password=' . $->password);
>>
>>
>> -- Pierre Masci
>>
>
>
> Pierre, you might be interested in https://github.com/
> puppetlabs/clj-http-client.  It provides an HTTP client which has an
> interface like you're describing.  The docs appear to be a bit lacking, but
> you can basically write:
>
> (let [client (http/create-client
>   {:ssl-cert "/path/to/ssl.cert"
>:ssl-key "/path/to/ssl.key"
>:ssl-ca-cert "/path/to/ssl.cert"})]
>   (http/post client "https://.../api/certlogin";))
>
>
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to a topic in the
> Google Groups "Clojure" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/
> topic/clojure/Bh0gl5QEUsI/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


ANN: ClojureScript 1.9.493, another bugfix release

2017-02-24 Thread David Nolen
ClojureScript, the Clojure compiler that emits JavaScript source code.

README and source code: https://github.com/clojure/clojurescript

Leiningen dependency information:

[org.clojure/clojurescript "1.9.493"]

This is a bugfix release.

As always, feedback welcome!

### Fixes
* CLJS-1948: Possible race condition in compiler w/ parallel-build true
* CLJS-1941: `cljs.compiler/cljs-files-in` shouldn't return `.cljc` files
if a `.cljs` file exists for the namespace
* CLJS-1940: Undeclared var warning when invoking a protocol method on a
`js` interop form
* CLJS-1951: Missing 0 and 1 arity versions of interleave
* CLJS-1952: Bump Closure Compiler to Feb 2017 release
* CLJS-1937: Self-host: undeclared cljs.core$macros/mod when compiling
cljs/core.cljs
* CLJS-1936: cljs.analyzer declares vars which are only used in Clojure
* CLJS-1949: Self-host: cljs.compiler/munge doesn't preserve JVM compiler
semantics
* CLJS-1950: Eliminate instances of #^
* CLJS-1943: Self-host: `cljs.pprint`'s macros can't be compiled
* CLJS-1945: cljs.spec/every-impl kind-fn kind-form dead code
* CLJS-1944: Can't spec generate non-vector collections
* CLJS-1946: Self-hosted: don't emit `goog.require` calls for foreign libs
if optimizations different than `:none`
* CLJS-1636: Mark some symbols in core macros ns as private
* CLJS-1939: Fix Node load_file call for foreign-deps
* CLJS-1942: Self-host: `cljs.env.macros` and `cljs.analyzer.macros` can't
be loaded
* CLJS-1935: When calling cljs.spec/valid?, subsequent predicates of
cljs.spec/and are evaluated even when early predicate is unsatisfied

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


How can I re-order rows in a table (hiccup)?

2017-02-24 Thread John Gabriele
I'm using hiccup, and I'd like to build a table, but then have the option 
to re-order it (sort its rows by a column of my choosing). I want a 
`sort-table-by` function.

That is, if I've got


Color   Size
--  
red 2
green   7
blue4


(or, as a data structure: `(def tbl [:table [:tr [:th "Color"] [:th 
"Size"]] [:tr [:td "red"] [:td 2]] [:tr [:td "green"] [:td 7]] [:tr [:td 
"blue"] [:td 4]]])`)

I'd like to be able to do `(sort-table-by tbl 0)` and get


Color   Size
--  
blue4
green   7
red 2


or `(sort-table-by tbl 1)` and get


Color   Size
--  
red 2
blue4
green   7


Where it gets tricky though is when your table has various attribute maps 
in it, and also when some of the values you're sorting on may be links.

A first try at a solution yields ... oh man, {sigh, deep breath} this, 
which doesn't work:
.

Thanks!
-- John

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: How can I re-order rows in a table (hiccup)?

2017-02-24 Thread Gary Trakhman
Generally it's easier to sort the data before it gets put into hiccup table
formatting. Is there any reason not to?

On Feb 24, 2017 5:41 PM, "John Gabriele"  wrote:

> I'm using hiccup, and I'd like to build a table, but then have the option
> to re-order it (sort its rows by a column of my choosing). I want a
> `sort-table-by` function.
>
> That is, if I've got
>
>
> Color   Size
> --  
> red 2
> green   7
> blue4
>
>
> (or, as a data structure: `(def tbl [:table [:tr [:th "Color"] [:th
> "Size"]] [:tr [:td "red"] [:td 2]] [:tr [:td "green"] [:td 7]] [:tr [:td
> "blue"] [:td 4]]])`)
>
> I'd like to be able to do `(sort-table-by tbl 0)` and get
>
>
> Color   Size
> --  
> blue4
> green   7
> red 2
>
>
> or `(sort-table-by tbl 1)` and get
>
>
> Color   Size
> --  
> red 2
> blue4
> green   7
>
>
> Where it gets tricky though is when your table has various attribute maps
> in it, and also when some of the values you're sorting on may be links.
>
> A first try at a solution yields ... oh man, {sigh, deep breath} this,
> which doesn't work:
> .
>
> Thanks!
> -- John
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to the Google Groups
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: How can I re-order rows in a table (hiccup)?

2017-02-24 Thread James Reeves
Generally you'd approach the problem by using an intermediate structure.
For example:

  (def data
{:headers [:color :size]
 :rows[{:color "blue",  :size 4}
   {:color "red",   :size 2}
   {:color "green", :size 7}])

Then you could build a function that translates this data structure into a
Hiccup table:

  (defn ->table [{:keys [headers rows]}]
[:table
 [:tr (for [h headers] [:th (str/capitalize h)])]
 (for [row rows]
   [:tr (for [h headers, :let [v (row h)] [:td h])])])

Then you could write something like:

  (->table (update data :rows (partial sort-by :color))

- James

On 24 February 2017 at 22:41, John Gabriele  wrote:

> I'm using hiccup, and I'd like to build a table, but then have the option
> to re-order it (sort its rows by a column of my choosing). I want a
> `sort-table-by` function.
>
> That is, if I've got
>
>
> Color   Size
> --  
> red 2
> green   7
> blue4
>
>
> (or, as a data structure: `(def tbl [:table [:tr [:th "Color"] [:th
> "Size"]] [:tr [:td "red"] [:td 2]] [:tr [:td "green"] [:td 7]] [:tr [:td
> "blue"] [:td 4]]])`)
>
> I'd like to be able to do `(sort-table-by tbl 0)` and get
>
>
> Color   Size
> --  
> blue4
> green   7
> red 2
>
>
> or `(sort-table-by tbl 1)` and get
>
>
> Color   Size
> --  
> red 2
> blue4
> green   7
>
>
> Where it gets tricky though is when your table has various attribute maps
> in it, and also when some of the values you're sorting on may be links.
>
> A first try at a solution yields ... oh man, {sigh, deep breath} this,
> which doesn't work:
> .
>
> Thanks!
> -- John
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to the Google Groups
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [ANN] Odin 0.2.0 - Query DSL for Clojure

2017-02-24 Thread Didier
How does this compare to Specter?

On Thursday, 23 February 2017 13:34:16 UTC-8, Alan Thompson wrote:
>
> Just came across this - it looks very cool!
> Alan
>
> On Sat, Dec 10, 2016 at 7:14 AM, Timothy Baldridge  > wrote:
>
>> I just released the first official version of Odin (
>> https://github.com/halgari/odin). Odin is a declarative, extensible 
>> query DSL for Clojure that leverages transducers to provide a high amount 
>> of generality while still maintaining acceptable performance. 
>>
>> One of the biggest features of Odin is its ability to rapidly index and 
>> query "normal" Clojure data structures. Here is a quick example of this 
>> feature in practice: 
>>
>> (let [orders [{:customer/name "Sam"
>>:customer/id   3411}
>>   {:customer/id 3411
>>:order/items {1212 3}}
>>   {:customer/id 3411
>>:order/items {2232 2 4242 3}}
>>   {:item/id1212
>>:item/price 40.0}
>>   {:item/id2232
>>:item/price 100}
>>   {:item/id4242
>>:item/price 1.99}]]
>>   (->> (o/for-query
>>  (o/and
>>(d/query orders ?customer :customer/name "Sam")
>>(d/query orders ?customer :customer/id ?id)
>>(d/query orders ?order :customer/id ?id)
>>(d/query-in orders ?order [:order/items ?item-id] ?qty)
>>(d/query orders ?item :item/id ?item-id)
>>(d/query orders ?item :item/price ?price))
>>  (* ?qty ?price))
>>(reduce + 0)))
>>
>> ;; => 325.97
>>
>>
>> In this example we are given a vector of maps, we are then finding a 
>> customer by name,
>>
>> then walking a path through the data to find all the items that customer 
>> ordered, the
>>
>> total price is then calculated via the normal multiply and sum. 
>>
>>
>> There are several other features supported by Odin, including transformation 
>> of data
>>
>> (based on a query), tabling, Datomic support, and much more. 
>>
>>
>> I also did a video series on the development process of Odin if anyone is 
>> interested: 
>> (https://www.youtube.com/watch?v=JyKySmcTR4g)
>>
>> -- 
>> You received this message because you are subscribed to the Google
>> Groups "Clojure" group.
>> To post to this group, send email to clo...@googlegroups.com 
>> 
>> Note that posts from new members are moderated - please be patient with 
>> your first post.
>> To unsubscribe from this group, send email to
>> clojure+u...@googlegroups.com 
>> For more options, visit this group at
>> http://groups.google.com/group/clojure?hl=en
>> --- 
>> You received this message because you are subscribed to the Google Groups 
>> "Clojure" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to clojure+u...@googlegroups.com .
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: ANN: ClojureScript 1.9.493, another bugfix release

2017-02-24 Thread David Nolen
Just cut 1.9.494 to back out some macros that were made unintentionally
private.

On Fri, Feb 24, 2017 at 4:47 PM, David Nolen  wrote:

> ClojureScript, the Clojure compiler that emits JavaScript source code.
>
> README and source code: https://github.com/clojure/clojurescript
>
> Leiningen dependency information:
>
> [org.clojure/clojurescript "1.9.493"]
>
> This is a bugfix release.
>
> As always, feedback welcome!
>
> ### Fixes
> * CLJS-1948: Possible race condition in compiler w/ parallel-build true
> * CLJS-1941: `cljs.compiler/cljs-files-in` shouldn't return `.cljc` files
> if a `.cljs` file exists for the namespace
> * CLJS-1940: Undeclared var warning when invoking a protocol method on a
> `js` interop form
> * CLJS-1951: Missing 0 and 1 arity versions of interleave
> * CLJS-1952: Bump Closure Compiler to Feb 2017 release
> * CLJS-1937: Self-host: undeclared cljs.core$macros/mod when compiling
> cljs/core.cljs
> * CLJS-1936: cljs.analyzer declares vars which are only used in Clojure
> * CLJS-1949: Self-host: cljs.compiler/munge doesn't preserve JVM compiler
> semantics
> * CLJS-1950: Eliminate instances of #^
> * CLJS-1943: Self-host: `cljs.pprint`'s macros can't be compiled
> * CLJS-1945: cljs.spec/every-impl kind-fn kind-form dead code
> * CLJS-1944: Can't spec generate non-vector collections
> * CLJS-1946: Self-hosted: don't emit `goog.require` calls for foreign libs
> if optimizations different than `:none`
> * CLJS-1636: Mark some symbols in core macros ns as private
> * CLJS-1939: Fix Node load_file call for foreign-deps
> * CLJS-1942: Self-host: `cljs.env.macros` and `cljs.analyzer.macros` can't
> be loaded
> * CLJS-1935: When calling cljs.spec/valid?, subsequent predicates of
> cljs.spec/and are evaluated even when early predicate is unsatisfied
>
>

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: [ANN] Odin 0.2.0 - Query DSL for Clojure

2017-02-24 Thread Timothy Baldridge
It's in the QA in the readme, but specter only queries a single path
through the data. Odin supports relations, joins, recursive rules, tabling,
etc.

Currently Specter will probably perform a bit better, but I hope to close
that gap in the future.


Timothy

On Fri, Feb 24, 2017 at 5:10 PM Didier  wrote:

> How does this compare to Specter?
>
>
> On Thursday, 23 February 2017 13:34:16 UTC-8, Alan Thompson wrote:
>
> Just came across this - it looks very cool!
> Alan
>
> On Sat, Dec 10, 2016 at 7:14 AM, Timothy Baldridge 
> wrote:
>
> I just released the first official version of Odin (
> https://github.com/halgari/odin). Odin is a declarative, extensible query
> DSL for Clojure that leverages transducers to provide a high amount of
> generality while still maintaining acceptable performance.
>
> One of the biggest features of Odin is its ability to rapidly index and
> query "normal" Clojure data structures. Here is a quick example of this
> feature in practice:
>
> (let [orders [{:customer/name "Sam"
>:customer/id   3411}
>   {:customer/id 3411
>:order/items {1212 3}}
>   {:customer/id 3411
>:order/items {2232 2 4242 3}}
>   {:item/id1212
>:item/price 40.0}
>   {:item/id2232
>:item/price 100}
>   {:item/id4242
>:item/price 1.99}]]
>   (->> (o/for-query
>  (o/and
>(d/query orders ?customer :customer/name "Sam")
>(d/query orders ?customer :customer/id ?id)
>(d/query orders ?order :customer/id ?id)
>(d/query-in orders ?order [:order/items ?item-id] ?qty)
>(d/query orders ?item :item/id ?item-id)
>(d/query orders ?item :item/price ?price))
>  (* ?qty ?price))
>(reduce + 0)))
>
> ;; => 325.97
>
>
> In this example we are given a vector of maps, we are then finding a customer 
> by name,
>
> then walking a path through the data to find all the items that customer 
> ordered, the
>
> total price is then calculated via the normal multiply and sum.
>
>
> There are several other features supported by Odin, including transformation 
> of data
>
> (based on a query), tabling, Datomic support, and much more.
>
>
> I also did a video series on the development process of Odin if anyone is 
> interested:
> (https://www.youtube.com/watch?v=JyKySmcTR4g)
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
>
> To post to this group, send email to clo...@googlegroups.com
>
>
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
>
> clojure+u...@googlegroups.com
>
>
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to the Google Groups
> "Clojure" group.
>
> To unsubscribe from this group and stop receiving emails from it, send an
> email to clojure+u...@googlegroups.com.
>
>
> For more options, visit https://groups.google.com/d/optout.
>
> --
> You received this message because you are subscribed to the Google
> Groups "Clojure" group.
> To post to this group, send email to clojure@googlegroups.com
> Note that posts from new members are moderated - please be patient with
> your first post.
> To unsubscribe from this group, send email to
> clojure+unsubscr...@googlegroups.com
> For more options, visit this group at
> http://groups.google.com/group/clojure?hl=en
> ---
> You received this message because you are subscribed to the Google Groups
> "Clojure" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to clojure+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>
-- 
“One of the main causes of the fall of the Roman Empire was that–lacking
zero–they had no way to indicate successful termination of their C
programs.”
(Robert Firth)

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: ANN: ClojureScript 1.9.493, another bugfix release

2017-02-24 Thread Rangel Spasov
Hey guys,

I'm getting this error. It seems that it's happening inside the transpiled 
core.async sources. The error carrot at line 1444 points at the semicolon, 
pretty strange.


Feb 24, 2017 8:38:19 PM com.google.javascript.jscomp.LoggerErrorManager println
SEVERE: /Users/raspasov/projects/project123/target/ios/cljs/core/async.js:1444: 
ERROR - Parse error. No newline allowed before '=>'
var inst_33727 = async(inst_33726); (^ points at the semicolon)


Feb 24, 2017 8:38:19 PM com.google.javascript.jscomp.LoggerErrorManager 
printSummary
WARNING: 1 error(s), 4 warning(s)
ERROR: JSC_PARSE_ERROR. Parse error. No newline allowed before '=>' at 
/Users/raspasov/projects/project123/target/ios/cljs/core/async.js line 1444 : 34

I tried both :parallel-build true/false but it doesn't make a difference. It 
works fine on [org.clojure/clojurescript "1.9.473"]


Here's how the async.js source looks like around line 1444.

return cljs.core.cst$kw$recur;
} else {
if((state_val_33738 === (2))){
var state_33737__$1 = state_33737;
return cljs.core.async.impl.ioc_helpers.take_BANG_(state_33737__$1,(4),jobs);
} else {
if((state_val_33738 === (3))){
var inst_33735 = (state_33737[(2)]);
var state_33737__$1 = state_33737;
return cljs.core.async.impl.ioc_helpers.return_chan(state_33737__$1,inst_33735);
} else {
if((state_val_33738 === (4))){
var inst_33726 = (state_33737[(2)]);
var inst_33727 = async(inst_33726);  This is the error line 
number 1444
var state_33737__$1 = state_33737;
if(cljs.core.truth_(inst_33727)){
var statearr_33743_33989 = state_33737__$1;
(statearr_33743_33989[(1)] = (5));

} else {
var statearr_33744_33990 = state_33737__$1;
(statearr_33744_33990[(1)] = (6));

}

return cljs.core.cst$kw$recur;
} else {
if((state_val_33738 === (5))){
var state_33737__$1 = state_33737;
var statearr_33745_33992 = state_33737__$1;
(statearr_33745_33992[(2)] = null);

(statearr_33745_33992[(1)] = (2));


return cljs.core.cst$kw$recur;
} else {
if((state_val_33738 === (6))){
var state_33737__$1 = state_33737;
var statearr_33746_33993 = state_33737__$1;
(statearr_33746_33993[(2)] = null);

(statearr_33746_33993[(1)] = (7));


return cljs.core.cst$kw$recur;
} else {
if((state_val_33738 === (7))){
var inst_33733 = (state_33737[(2)]);
var state_33737__$1 = state_33737;
var statearr_33747_33994 = state_33737__$1;
(statearr_33747_33994[(2)] = inst_33733);

(statearr_33747_33994[(1)] = (3));


return cljs.core.cst$kw$recur;
} else {
return null;
}
}
}
}
}
}
}


On Friday, February 24, 2017 at 4:21:35 PM UTC-8, David Nolen wrote:
> Just cut 1.9.494 to back out some macros that were made unintentionally 
> private.
> 
> 
> On Fri, Feb 24, 2017 at 4:47 PM, David Nolen  wrote:
> 
> 
> ClojureScript, the Clojure compiler that emits JavaScript source code.
> 
> 
> README and source code: https://github.com/clojure/clojurescript
> 
> 
> Leiningen dependency information:
> 
> 
> [org.clojure/clojurescript "1.9.493"]
> 
> 
> This is a bugfix release.
> 
> 
> As always, feedback welcome!
> 
> 
> ### Fixes
> * CLJS-1948: Possible race condition in compiler w/ parallel-build true
> * CLJS-1941: `cljs.compiler/cljs-files-in` shouldn't return `.cljc` files if 
> a `.cljs` file exists for the namespace
> * CLJS-1940: Undeclared var warning when invoking a protocol method on a `js` 
> interop form
> * CLJS-1951: Missing 0 and 1 arity versions of interleave
> * CLJS-1952: Bump Closure Compiler to Feb 2017 release
> * CLJS-1937: Self-host: undeclared cljs.core$macros/mod when compiling 
> cljs/core.cljs
> * CLJS-1936: cljs.analyzer declares vars which are only used in Clojure
> * CLJS-1949: Self-host: cljs.compiler/munge doesn't preserve JVM compiler 
> semantics
> * CLJS-1950: Eliminate instances of #^
> * CLJS-1943: Self-host: `cljs.pprint`'s macros can't be compiled
> * CLJS-1945: cljs.spec/every-impl kind-fn kind-form dead code
> * CLJS-1944: Can't spec generate non-vector collections
> * CLJS-1946: Self-hosted: don't emit `goog.require` calls for foreign libs if 
> optimizations different than `:none`
> * CLJS-1636: Mark some symbols in core macros ns as private
> * CLJS-1939: Fix Node load_file call for foreign-deps
> * CLJS-1942: Self-host: `cljs.env.macros` and `cljs.analyzer.macros` can't be 
> loaded
> * CLJS-1935: When calling cljs.spec/valid?, subsequent predicates of 
> cljs.spec/and are evaluated even when early predicate is unsatisfied

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving em

Re: ANN: ClojureScript 1.9.493, another bugfix release

2017-02-24 Thread Rangel Spasov
Forgot to add: this is my :compiler settings map. 

{:output-to  "index.ios.js"
 :main   "env.ios.main"
 :output-dir "target/ios"
 :static-fns true
 :optimize-constants true
 :parallel-build true
 ;:pretty-print   true
 ;:pseudo-names   true
 :source-map "cljs-source-map.js"
 :optimizations  :advanced
 :externs["externs/externs.js"]
 :closure-defines{"goog.DEBUG" false}}

On Friday, February 24, 2017 at 8:46:03 PM UTC-8, Rangel Spasov wrote:
> Hey guys,
> 
> I'm getting this error. It seems that it's happening inside the transpiled 
> core.async sources. The error carrot at line 1444 points at the semicolon, 
> pretty strange.
> 
> 
> Feb 24, 2017 8:38:19 PM com.google.javascript.jscomp.LoggerErrorManager 
> println
> SEVERE: 
> /Users/raspasov/projects/project123/target/ios/cljs/core/async.js:1444: ERROR 
> - Parse error. No newline allowed before '=>'
> var inst_33727 = async(inst_33726); (^ points at the semicolon)
> 
> 
> Feb 24, 2017 8:38:19 PM com.google.javascript.jscomp.LoggerErrorManager 
> printSummary
> WARNING: 1 error(s), 4 warning(s)
> ERROR: JSC_PARSE_ERROR. Parse error. No newline allowed before '=>' at 
> /Users/raspasov/projects/project123/target/ios/cljs/core/async.js line 1444 : 
> 34
> 
> I tried both :parallel-build true/false but it doesn't make a difference. It 
> works fine on [org.clojure/clojurescript "1.9.473"]
> 
> 
> Here's how the async.js source looks like around line 1444.
> 
> return cljs.core.cst$kw$recur;
> } else {
> if((state_val_33738 === (2))){
> var state_33737__$1 = state_33737;
> return cljs.core.async.impl.ioc_helpers.take_BANG_(state_33737__$1,(4),jobs);
> } else {
> if((state_val_33738 === (3))){
> var inst_33735 = (state_33737[(2)]);
> var state_33737__$1 = state_33737;
> return 
> cljs.core.async.impl.ioc_helpers.return_chan(state_33737__$1,inst_33735);
> } else {
> if((state_val_33738 === (4))){
> var inst_33726 = (state_33737[(2)]);
> var inst_33727 = async(inst_33726);  This is the error line 
> number 1444
> var state_33737__$1 = state_33737;
> if(cljs.core.truth_(inst_33727)){
> var statearr_33743_33989 = state_33737__$1;
> (statearr_33743_33989[(1)] = (5));
> 
> } else {
> var statearr_33744_33990 = state_33737__$1;
> (statearr_33744_33990[(1)] = (6));
> 
> }
> 
> return cljs.core.cst$kw$recur;
> } else {
> if((state_val_33738 === (5))){
> var state_33737__$1 = state_33737;
> var statearr_33745_33992 = state_33737__$1;
> (statearr_33745_33992[(2)] = null);
> 
> (statearr_33745_33992[(1)] = (2));
> 
> 
> return cljs.core.cst$kw$recur;
> } else {
> if((state_val_33738 === (6))){
> var state_33737__$1 = state_33737;
> var statearr_33746_33993 = state_33737__$1;
> (statearr_33746_33993[(2)] = null);
> 
> (statearr_33746_33993[(1)] = (7));
> 
> 
> return cljs.core.cst$kw$recur;
> } else {
> if((state_val_33738 === (7))){
> var inst_33733 = (state_33737[(2)]);
> var state_33737__$1 = state_33737;
> var statearr_33747_33994 = state_33737__$1;
> (statearr_33747_33994[(2)] = inst_33733);
> 
> (statearr_33747_33994[(1)] = (3));
> 
> 
> return cljs.core.cst$kw$recur;
> } else {
> return null;
> }
> }
> }
> }
> }
> }
> }
> 
> 
> On Friday, February 24, 2017 at 4:21:35 PM UTC-8, David Nolen wrote:
> > Just cut 1.9.494 to back out some macros that were made unintentionally 
> > private.
> > 
> > 
> > On Fri, Feb 24, 2017 at 4:47 PM, David Nolen  wrote:
> > 
> > 
> > ClojureScript, the Clojure compiler that emits JavaScript source code.
> > 
> > 
> > README and source code: https://github.com/clojure/clojurescript
> > 
> > 
> > Leiningen dependency information:
> > 
> > 
> > [org.clojure/clojurescript "1.9.493"]
> > 
> > 
> > This is a bugfix release.
> > 
> > 
> > As always, feedback welcome!
> > 
> > 
> > ### Fixes
> > * CLJS-1948: Possible race condition in compiler w/ parallel-build true
> > * CLJS-1941: `cljs.compiler/cljs-files-in` shouldn't return `.cljc` files 
> > if a `.cljs` file exists for the namespace
> > * CLJS-1940: Undeclared var warning when invoking a protocol method on a 
> > `js` interop form
> > * CLJS-1951: Missing 0 and 1 arity versions of interleave
> > * CLJS-1952: Bump Closure Compiler to Feb 2017 release
> > * CLJS-1937: Self-host: undeclared cljs.core$macros/mod when compiling 
> > cljs/core.cljs
> > * CLJS-1936: cljs.analyzer declares vars which are only used in Clojure
> > * CLJS-1949: Self-host: cljs.compiler/munge doesn't preserve JVM compiler 
> > semantics
> > * CLJS-1950: Eliminate instances of #^
> > * CLJS-1943: Self-host: `cljs.pprint`'s macros can't be compiled
> > * CLJS-1945: cljs.spec/every-impl kind-fn kind-form dead code
> > * CLJS-1944: Can't spec generate non-vector collections
> > * CLJS-1946: Self-hosted: don't emit `goog.require` calls for foreign libs 
> > if optimizations different than `:none`
> > * CLJS-1636: Mark some symbols in core macros ns as private
> > * CLJS-1939: Fix Node load_file ca

Raynes' legacy

2017-02-24 Thread James Laver
I'm pleased we've dealt with a new maintainer for a couple of Raynes' 
modules, but Raynes contributed a lot of things and half the community 
depends on one or more of his modules at this point.

My current focus is tentacles, which has been gathering issues and PRs 
recently and is something I'm about to use in a project. If no-one else 
steps forward, we at the irresponsible clojure guild ( 
https://github.com/irresponsible ) will take on the maintenance for it, but 
we don't want to end up causing multiple forks.

I think it would be awesome if *somebody* would step up and take care of 
Raynes' remaining modules. Aside from being his legacy, they're really 
useful and too many of rely on them. Irresponsible is a community-run 
organisation (currently just three of us). If more people were willing to 
pitch in with reviewing PRs and issues and such, we would be happy to 
assume responsibility for releases. In effect, we're happy to keep Raynes' 
work alive rather than bitrotting. But we can't do all of that alone, it's 
just too much work (something other contributors have noted). We are happy 
to give them a home and push releases, but there are simply too many of 
them to take up proper maintenance without more volunteers

So, with that:

1. Does this seem like a good idea?
2. Can you help with reviewing the backlog on Raynes' modules?
3. Is this going to be enough to prevent multiple forks of everything?

Cheers,
James

-- 
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to clojure@googlegroups.com
Note that posts from new members are moderated - please be patient with your 
first post.
To unsubscribe from this group, send email to
clojure+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--- 
You received this message because you are subscribed to the Google Groups 
"Clojure" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to clojure+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.