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.
In the meantime, there's a few tests that use 0.8 style web sockets.
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
thank you! I will have a look
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).
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?
Please add an issue for tracking purposes. I have not even looked at anything outside the core pedestal/pedestal project.
Without looking, I doubt the code needs much of an upgrade, but it's the testing I don't have time/energy/enthusiasm for.
> 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.
What new capabilities are you hoping to get or use from newer pedestal versions inside of an ion?
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
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.
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.
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.
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.
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.
But there's always more work needed in Pedestal; I'm really happy to see some more changes coming from the community.
Haven't heard about this in a bit, I'm taking a stab at it myself.
> 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?
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
That looks really interesting! I'd love to get away from Jackson.
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?
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).
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.
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.
gotcha, can assess re: ring/subdeps vs. direct cheshire->jackson, to see if it might be worthwhile.