announcements

Project/library announcements ONLY - use threaded replies for discussions. Do not cross post here from other channels. Consider #events or #news-and-articles for other announcements.
Candid 2021-04-19T04:34:27.456200Z

jokerย v0.17.0 is released:ย https://github.com/candid82/joker/releases/tag/v0.17.0

๐Ÿƒ 12
Karol Wรณjcik 2021-04-19T08:38:18.457900Z

Proudly annoucing new version (0.1.18) of [holy-lambda](https://github.com/FieryCod/holy-lambda) a simple micro framework which turns your code into AWS Lambda functions for both JVM and native runtime. Notable changes: - Interceptors support https://github.com/FieryCod/holy-lambda/blob/master/examples/hello-lambda/src/hello_lambda/core.clj - Fixes for a project template. You can now generate a project with lein new holy-lambda <name-of-the-project> - Basic support for GraalVM EE (PGO optimizations in-process) - Easier way of generating native configurations via (agent/in-context). Docs about native-configurations (in-progress) - Unify responses. Response can be either null (for event ack) or a map of [:body, :isBase64Encoded :headers :multiValueHeaders] (breaking change) - Rename gen-main to entrypoint. Move to fierycod.holy-lambda.native-runtime (breaking change) - Use new group name for all artifacts (old one could not be verified :() io.github.FieryCod/holy-lambda - Add some docs EDIT: You can now also join a slack channel #holy-lambda ๐Ÿ™‚

๐Ÿ‘ 8
1
โค๏ธ 3
Tomas Brejla 2021-04-19T08:55:50.458300Z

Since you added GraalVM EEsupport.. Are there any noticable differences between CE and EE-compiled versions? Different performance characteristics, utilization of resources,..?

slipset 2021-04-19T09:26:50.460Z

Please donโ€™t use clojure.data.json 2.2.0 there is a serious data-loss bug in it. The offending commit has been reverted, but Iโ€™m waiting for a new release. Iโ€™m terribly sorry for this. Thanks to @thheller for reporting the bug.

๐Ÿ‘ 10
2
1
โค๏ธ 10
Karol Wรณjcik 2021-04-19T09:36:39.460200Z

I don't know yet. This or next month I will make some benchmarks for: โ€ข holy-lambda-ce โ€ข holy-lambda-ee โ€ข holy-lambda-ee-with-pgo-optimizations , compare them with other runtimes and write a summary in doc/ ๐Ÿ™‚ My bet is that there will be some real differences for complex applications, but you have to wait a little bit for a proof ๐Ÿ™‚

๐Ÿ‘ 3
๐Ÿ‘ 1
nilern 2021-04-19T11:06:45.468500Z

Introducing Eximia, the state of the art Clojure XML processor ๐Ÿ˜‰ Roughly 4x faster than the usual options. Small codebase. With XML namespace support and secure defaults. https://github.com/nilern/Eximia

๐Ÿ‘ 16
2
1
โค๏ธ 1
borkdude 2021-04-19T11:19:44.469400Z

@nilern Looks cool. In the README you refer to clojure.xml (Clojure 1.10.3), what is this?

borkdude 2021-04-19T11:20:19.469900Z

Is that the built-in namespace? That's pretty much deprecated in favor of data.xml I think

nilern 2021-04-19T11:28:53.470200Z

Yes and yes https://clojure.atlassian.net/browse/CLJ-2583

nilern 2021-04-19T11:30:59.470400Z

But I doubt that that is common knowledge

borkdude 2021-04-19T11:31:53.470700Z

I think not mentioning clojure.xml contributes to the process of deprecation. Many people probably don't know it even exists ;)

borkdude 2021-04-19T11:32:44.470900Z

Any chance those speed-ups can end up in clojure.data.xml proper? @slipset has been doing some nice work on clojure.data.json. Perhaps @alexmiller is open to have someone contribute to clojure.data.xml in a similar fashion?

borkdude 2021-04-19T11:33:42.471100Z

clojure.data.xml hasn't really seen a lot of work on it for a while, it would be nice to get someone who knows this stuff on it maybe

nilern 2021-04-19T11:34:41.471300Z

I thought maybe they would at least get a stable release out if I do this

nilern 2021-04-19T11:37:38.471500Z

The laziness in data.xml does have substantial performance and complexity costs but I think there is some low-hanging fruit there nevertheless

alexmiller 2021-04-19T13:11:06.472400Z

Sure, happy to look at stuff like I've been doing with Erik in data.json. The important thing is to break it into manageable (smaller better) chunks, defined well with tickets, and build patches for each. I can then evaluate those on a regular basis (often on Fridays I have a little more time for things like this). I would want to communicate with Herwig on that stuff but I have not a lot of luck getting in touch with him recently.

nilern 2021-04-19T13:17:06.472800Z

One specific thing I noticed is reusing XMLInput/OutputFactories. It's probably the reason Eximia is 15x faster than data.json on tiny inputs

slipset 2021-04-19T13:17:51.473Z

json?

nilern 2021-04-19T13:18:09.473200Z

Oops. s/json/xml/

๐Ÿ™‚ 1
alexmiller 2021-04-19T13:29:03.474800Z

org.clojure/data.json 2.2.1 is now available - addresses a serious bug in 2.2.0 (rolls back the change)

๐Ÿ‘ 12
1
1
katox 2021-04-19T16:35:42.479300Z

PGMig 0.7.0 is out. Check it out if you use .cljmigrations using SCI. The native image compiled binary should be now on par with uberjar but still much faster. https://github.com/leafclick/pgmig/releases/tag/v0.7.0

4
7
vemv 2021-04-19T18:42:24.480600Z

Great work ๐Ÿ‘ Probably it would be a good idea to have some sort of roundtrip/equivalence test against clojure.data.xml

nilern 2021-04-19T19:48:42.481300Z

Perhaps. Although with namespaced XML they aren't going to be equivalent anyway.

๐Ÿ‘ 1
Jeremy 2021-04-19T23:38:55.483800Z

Hi everyone. Iโ€™ve written a https://github.com/jdf-id-au/talkfor https://netty.io/ to try to make websockets easy to use from Clojure without bringing in lots of dependencies. Intro post on https://clojureverse.org/t/netty-http-websockets-wrapped-in-core-async-jdf-talk/7535.

19