pedestal

jf 2025-06-25T14:48:46.946389Z

does anybody have any sample code for using Pedestal (0.8) with WebSockets? I am looking for something that I can use as a base.

hlship 2025-06-26T21:47:09.150779Z

In the meantime, there's a few tests that use 0.8 style web sockets.

Sam Ferrell 2025-06-25T14:51:43.255239Z

It just so happens that I'm in the middle of upgrading my side project to Pedestal to 0.8.0 which is a pretty barebones WebSocket server: https://github.com/samcf/ogres/pull/197/files

jf 2025-06-25T15:24:20.016439Z

thank you! I will have a look

hlship 2025-06-25T17:17:55.213789Z

I'm planning on a guide for that; I'm working on a guide for SSEs first. And I'm finding issues with how it works in theory vs. in practice (mostly related to CORS and all that).

🙌 1
Sven 2025-06-25T23:16:39.699309Z

https://github.com/pedestal/pedestal.ions does not work w/ pedestal 0.7.x out of the box. Is there a chance that this library could get an upgrade to make it compatible w/ 0.7.x/0.8.x?

hlship 2025-06-26T21:45:46.509019Z

Please add an issue for tracking purposes. I have not even looked at anything outside the core pedestal/pedestal project.

hlship 2025-06-26T21:46:20.452999Z

Without looking, I doubt the code needs much of an upgrade, but it's the testing I don't have time/energy/enthusiasm for.

Sven 2025-06-30T09:02:40.558599Z

> I vaguely know what it’s used for, but I’m not sure I want to take one support & maintenance for it. Should it be moved into the main pedestal project? It is difficult for me to answer these questions 🙂. While pedestal.ions and pedestal-ions-sample belong to https://github.com/pedestal, maybe Datomic team could be interested in having these working w/ the latest pedestal. Maybe @joe.lane has thoughts on this.

Joe Lane 2025-06-30T11:16:07.300079Z

What new capabilities are you hoping to get or use from newer pedestal versions inside of an ion?

Sven 2025-06-30T11:35:39.703459Z

There is no reason why we must update but: 1. We make an effort to keep our dependencies (and downstream dependencies) up to date 2. providing a more enjoyable developer experience by making it possible to use the latest version and small things like Improved REPL-oriented development, compatible with clj-reload - https://github.com/pedestal/pedestal/blob/master/CHANGELOG.md#080---unreleased

Sven 2025-06-30T12:20:00.653289Z

The main question for me here is maybe that should I expect pedestal.ions releases along with pedestal or this functionality is provided as is and there are no plans to actively maintain or update it? As hlship mentioned not being sure about wanting to take on support & maintenance for it then I was wondering if there's someone invested in that and is this even on Datomic team's radar.

hlship 2025-07-10T18:00:56.321299Z

Looks like it's mostly in io.pedestal.http.body-params and io.pedestal.http.response namespaces where cheshire is being explicitly used. If we can change that code and not break tests, its a win.

👍 1
hlship 2025-07-10T18:01:28.480299Z

I would say: keep cheshire as a test dependency for the first phase, then replace cheshire with the new library in tests for the second phase.

👍 1
Ben Kamphaus 2025-07-18T16:50:17.643099Z

awesome to see it in! & sorry to leave you waiting on this @hlship, wouldn’t have been able to start until this weekend due to other work priorities.

hlship 2025-07-18T16:51:05.747849Z

It was an itch I wanted to scratch, and I really wanted to get to the beta-2; trying to keep Pedestal on a yearly cadence.

👍 1
hlship 2025-07-18T16:52:12.577479Z

But there's always more work needed in Pedestal; I'm really happy to see some more changes coming from the community.

hlship 2025-07-15T23:20:58.100469Z

Haven't heard about this in a bit, I'm taking a stab at it myself.

Sven 2025-06-27T16:54:04.847739Z

> Please add an issue for tracking purposes. https://github.com/pedestal/pedestal.ions/issues/7 > ....but it's the testing I don't have time/energy/enthusiasm for. Can I help with something?

Ben Kamphaus 2025-07-08T20:33:04.723729Z

is this the same as the issue in #datomic where the issue is w/cheshire -> jackson dependencies in pedestal? has anyone explored using charred in pedestal instead? (zero depdency json parse/serialize, essentially as fast as jackson) https://github.com/cnuernber/charred

hlship 2025-07-08T20:37:13.475579Z

That looks really interesting! I'd love to get away from Jackson.

hlship 2025-06-29T17:39:02.189279Z

Again, I haven’t looked at pedestal.ions at all; I vaguely know what it’s used for, but I’m not sure I want to take one support & maintenance for it. Should it be moved into the main pedestal project? Are there tests and documentation?

Ben Kamphaus 2025-07-09T20:47:53.209449Z

I could take a stab at doing this and standing up a PR? issue first? contributor agreement of course, too. looks like contributing guide is a bit dated — still current re: steps? https://github.com/pedestal/pedestal/blob/master/CONTRIBUTING.md (not a big deal either way, but we use pedestal pretty heavily at RCRF, happy to contribute back it it’s more of a help than a bother).

hlship 2025-07-09T20:49:13.757509Z

That would be terrific. I have added https://github.com/pedestal/pedestal/issues/936. I need to find time to see what the CLA signing thing is broken.

hlship 2025-07-09T20:50:21.182969Z

I don't remember how much of the JSON related code is inherited from Ring (with its dependencies) vs. strictly Pedestal; this could turn into a yak shave if its necessary to excise more of Ring to make it work.

Ben Kamphaus 2025-07-09T21:34:35.224529Z

gotcha, can assess re: ring/subdeps vs. direct cheshire->jackson, to see if it might be worthwhile.

hlship 2025-07-16T17:19:28.851149Z

https://github.com/pedestal/pedestal/pull/945