Fork me on GitHub
#untangled
<
2016-04-21
>
ethangracer00:04:48

hey all, just added an error handling recipe to the cookbook — let me know if you have any thoughts or questions

ethangracer00:04:26

also, the error stuff is only available in 0.4.7-SNAPSHOT, and your project must require om-alpha32

leontalbot01:04:21

@tony.kay: I've started the tutorial. Well done! Nice to use. It is also my first time with Cursive

leontalbot01:04:26

So far so good

leontalbot01:04:58

so far I found om-next mind-bending...

leontalbot01:04:44

And I'm just at B_UI_Exercices 😉

leontalbot01:04:39

going to sleep. I might watch your CLJ West talk in the bed. But that doesn't mean I expect it to be tiresome 😉

tony.kay15:04:56

@cjmurphy: @currentoor Yeah, watch the CHANGELOG if you're using SNAPSHOT. I'm trying to make sure it stays up to date as we make changes. Trying to not break things, but it is a snapshot simple_smile NOTE: There was a bug I fixed that exposed another bug: recursive queries won't work right now on SNAPSHOT

tony.kay15:04:45

the mark/sweep for sane merging didn't support ..., @adambros is working on it

tony.kay15:04:56

I'm interested in getting stuff added to the cookbook as quickly as possible. I'm trying to personally add a couple a week. If others were to all pick a single recipe a week it would get done super fast. Let me know if any of you have time/interest in doing a recipe and I'd be glad to help you get started and also understand what my plan is for the given recipe

tony.kay16:04:14

Looks like @mahinshaw is going to do Sente/web sockets

currentoor17:04:21

@tony.kay: I'm interested in "Simple CRUD example - Wizard-like form filling" and "Modals".

tony.kay17:04:49

@currentoor: modals is easy (and can be combined with the tabbed-interface-union-query stuff to make a single modal with mutliple UIs). The wizard forms can leverage the same kind of logic, but probably adds in some interesting things like validating a field and making a form act as more of a unit. @adambros is working on some form stuff, so there is probably some synergy there. So, if you wanted to skype about the modal bit I could get you started on that...and follow up later on the form stuff.

currentoor17:04:32

@tony.kay: we've already got a working modal. You're right it was pretty easy. I just wanted to make sure we were doing it correctly and possibly save someone the trouble.

currentoor17:04:01

the form stuff is definitely more nuanced

tony.kay17:04:01

So, modal is mostly about CSS and an overlay to prevent further interaction, or are you blocking it internally?

currentoor17:04:14

nope that's about it

tony.kay17:04:29

yeah...so you're not missing anything there. Either the app state causes the modal to go or not

tony.kay17:04:43

nicely declarative and super simple.

tony.kay17:04:04

(by go I mean render)

currentoor17:04:08

cool, well I'm happy to help @adambros in any way that I can 😄

tony.kay17:04:33

so, yeah. Forms is something lots of ppl are going to want, and I think we're going to make an untangled-components library to put things like that in

tony.kay17:04:50

date picker, validated email form field, form container, etc

adambrosio17:04:19

im currently knee deep in mark/sweep for ‘… & # for recursive limits but im hoping ill be done by today and move on to a validated form (input) component

tony.kay17:04:36

@currentoor: so if you want to make the modal recipe, just send me a PR. There is a script new-recipe...there are instructions in the readme. should be easy to get going. Let me know if you need help

mahinshaw17:04:22

I am currently working on allowing users to integrate websockets as a pluggable network component. In the process, I have to add ways to overload the default routes (i.e. “/api”). Currently we are using bidi for defining routes. Is there any interest in making the route handler pluggable so that one could use an alternative (i.e. compojure)?

tony.kay17:04:28

It think that will be desirable. If it isn't too hard to do at the same time (and doesn't break the defaults) then it would be great

mahinshaw17:04:17

@tony.kay: As a caveat, we may need to either cut a release of server, or publish a snapshot build on clojars

tony.kay17:04:59

can easily do either...let me know

tony.kay17:04:04

I'd prefer we do a snapshot

tony.kay17:04:14

get some experience with it, then do a release

adambrosio17:04:01

@mahinshaw: do :extra-routes or pre-hook not suffice?

mahinshaw17:04:37

nope, because with a websocket, we may want to override “/api"

mahinshaw17:04:03

and also regarding handling of routes, we are tied to bidi, which can be pluggable

adambrosio17:04:27

well so you can have :extra-routes handle /api itself

tony.kay17:04:31

:extra-routes does "suffice"...but making that concern pluggable will make ppl happy

adambrosio17:04:52

we talking about, say using compojure instead?

tony.kay17:04:58

pre-hook is a different concern altogether..e.g. CSRF handling

mahinshaw17:04:57

Even more we want to allow more control if desired, and :extra-routes doesn’t give that

adambrosio17:04:42

okay ill leave you to it

kmandrup17:04:18

Does Untangled support socket sync?

kmandrup17:04:52

"Looks like @mahinshaw is going to do Sente/web sockets" - tell me more simple_smile

mahinshaw17:04:32

@kmandrup: I think to be more explanatory about the web socket integration - The goal is to make the networking stack pluggable with a component that uses websockets. I plan on adding an item to the untangled cookbook, that would demonstrate the usage of websockets.

kmandrup17:04:29

Sweet simple_smile I'm done with REST except for legacy API integrations and perhaps initial load

tony.kay17:04:10

where "initial load" is also a legacy integration 😉

tony.kay21:04:54

@mahinshaw: while you're looking at the network stack: I just found a bug

mahinshaw21:04:48

@tony.kay: What version of server? Is it coming from 0.4.7-SNAPSHOT?

tony.kay21:04:14

I don't know that newer fixes it...but I could be wrong

mahinshaw21:04:30

ok. Good to know. I’ll dig in

ethangracer21:04:26

@mahinshaw @tony.kay at one point we were manually encoding exceptions and removing the stack traces, since that would be a security concern. not sure if we still want to do that

mahinshaw21:04:16

I think we do. We should be running everything through ex-info

mahinshaw21:04:42

Should that not be left up to the implementer?

ethangracer21:04:05

i was having a very hard time figuring out how to do that

ethangracer21:04:24

swapping the react key didn’t work, nor did force-root-rerender

tony.kay21:04:34

app/refresh?

ethangracer21:04:45

didn’t have access to the reconciler

ethangracer21:04:04

didn’t have access to the whole app atom

ethangracer21:04:06

that’s what it was

tony.kay21:04:18

yeah....bit of a quandry there

tony.kay21:04:56

we have a bit of internal untangling to do on the error handling story

mahinshaw21:04:51

Maybe this needs to be a design discussion. Because that needs to happen with regards to swapping out the network component in general

ethangracer21:04:53

yeah, sooner rather than later too. we need it working asap over here

ethangracer21:04:49

definitely willing to do that, and lend a hand with implementation

tony.kay21:04:16

yep....gather round the white board?