untangled

NEW CHANNEL: #fulcro
tony.kay 2017-06-20T00:01:27.893299Z

I wish mine would have failed. We really need to know the specific condition under which it fails.

tony.kay 2017-06-20T00:14:06.004457Z

that code appeared in alpha42

tony.kay 2017-06-20T00:14:28.007569Z

I’m not sure it will compile, but try backing your version of Om down to alpha41

tony.kay 2017-06-20T00:14:39.009290Z

you’ll want to stop figwheel, clean, etc

tony.kay 2017-06-20T00:14:47.010260Z

@bbktsk

2017-06-20T00:36:19.179506Z

@tony.kay No such var: om/app-state, compiling:(untangled/client/util.cljc:32:20), so I guess I should downgrade untangled a little bit too? How far?

tony.kay 2017-06-20T00:49:40.281972Z

strange…I thought that had been there a while

tony.kay 2017-06-20T00:50:06.285421Z

that should compile

tony.kay 2017-06-20T00:50:10.285822Z

that function is there

tony.kay 2017-06-20T00:50:22.287447Z

you sure you cleaned out the generated js folder?

tony.kay 2017-06-20T00:57:31.343072Z

@bbktsk does everything have an ident but root?

2017-06-20T00:59:28.358638Z

yup, cleaned, still the same.

2017-06-20T00:59:31.359104Z

let me check.

2017-06-20T01:02:20.384791Z

yes, everything’s got ident.

tony.kay 2017-06-20T01:06:20.416724Z

app-state has been a function for a while. not understanding why you’re seeing that

tony.kay 2017-06-20T01:06:42.419501Z

you know that lein clean does not clean resources by default, right?

tony.kay 2017-06-20T01:07:08.422760Z

OH

tony.kay 2017-06-20T01:07:09.422862Z

wait

tony.kay 2017-06-20T01:07:14.423390Z

I know…the cljc stuff

tony.kay 2017-06-20T01:07:25.424862Z

it is looking for it on the clj side, which it is not in alpha41

tony.kay 2017-06-20T01:07:36.426425Z

bummer

tony.kay 2017-06-20T01:09:33.440862Z

Your router: is that an untangled router?

2017-06-20T01:10:28.447927Z

yes, it is.

tony.kay 2017-06-20T01:10:54.451195Z

just for giggles, copy that Ident fucntion onto the sub-screens

tony.kay 2017-06-20T01:11:45.457589Z

I’ve been debating this one internally: the union component needs the ident in order to route, but do the children being routed also need the ident function?

tony.kay 2017-06-20T01:11:58.459159Z

I suspect the answer might be “yes”

tony.kay 2017-06-20T01:12:17.461576Z

and that is all that is diff in your case

2017-06-20T01:13:04.467852Z

you mean use the same function for both router and subscreens?

tony.kay 2017-06-20T01:13:21.470063Z

yes, it has to be the same or routing cannot work

tony.kay 2017-06-20T01:13:35.471932Z

I normally leave it off the subscreens, since it is used through the router

tony.kay 2017-06-20T01:14:05.475894Z

but it doesn’t hurt anything for the subscreens to also have it declared

tony.kay 2017-06-20T01:14:19.477613Z

I’m wondering if it hurts incremental rendering for them to NOT have the ident

tony.kay 2017-06-20T01:23:59.553097Z

Hm. I updated my example to use a router, adn everything still works fine.

2017-06-20T01:26:04.569784Z

Still the same here.

2017-06-20T01:27:03.577381Z

I’m just wondering, why is there that shortcut in Bean’s path? What puts it there?

tony.kay 2017-06-20T01:27:14.578722Z

well, I’m stumped. I can’t get it to break, and you can’t get it to work 😕

tony.kay 2017-06-20T01:27:41.582409Z

I pushed my updates to that load-sample branch in case you want to look

tony.kay 2017-06-20T01:27:48.583240Z

see if there is anything different

2017-06-20T01:30:21.603384Z

I will check that out. Also, I will try to put together a simple test case to demonstrate the issue.

tony.kay 2017-06-20T01:31:30.612935Z

ok. I’m bummed you hit a snag like this. usually I’m able to help solve them pretty quickly

2017-06-20T01:33:15.626748Z

Do not worry! It’s been fun 😎 I just hope it’s not some kind of stupid mistake on my side, you’ve spent so much time on this. Appreciate it a lot!

tony.kay 2017-06-20T01:34:04.633059Z

welcome. I want it to be as bug free as possible. I kind hope it is a mistake 😉

tony.kay 2017-06-20T01:35:23.642756Z

the “shortcut” is common. It’s possible to talk about a subtree starting at some ident. I had never dumped the paths before, but it seems to do it all over the place.

tony.kay 2017-06-20T01:35:31.643843Z

I thought it was only with pathopt turned on

tony.kay 2017-06-20T01:37:29.658557Z

Interestingly, with pathopt OFF, it doesn’t do it as much

tony.kay 2017-06-20T01:37:33.659154Z

but it still does it some

tony.kay 2017-06-20T01:39:11.671684Z

take that back…seems to have no effect.

tony.kay 2017-06-20T01:39:49.676477Z

@bbktsk AH…Untangled isn’t passing pathopt through properly

tony.kay 2017-06-20T01:39:55.677265Z

give me a sec

2017-06-20T01:40:23.680858Z

I’m just looking at that 😎

2017-06-20T01:40:30.681741Z

:reconciler-options {}

tony.kay 2017-06-20T01:41:12.686973Z

I just turned off pathopt in the application. It is just an optimization, and one that Om isn’t seeming to want to support…so, I don’t mind disabling it

tony.kay 2017-06-20T01:41:16.687584Z

it is up on clojars

tony.kay 2017-06-20T01:41:24.688559Z

try refreshing deps and seeing if anything changes

tony.kay 2017-06-20T01:44:48.714024Z

I’m betting that fixes it

tony.kay 2017-06-20T01:45:18.718075Z

strange that we haven’t hit that more, if it is broken

2017-06-20T01:49:31.749808Z

YES!

2017-06-20T01:49:36.750446Z

It’s working!

tony.kay 2017-06-20T01:49:41.750976Z

bummer, but agreed…YES

2017-06-20T01:49:41.751017Z

Probably.

2017-06-20T01:50:22.756349Z

I’m way past my bedtime now, so chances are I’m just hallucinating or messing something up.

2017-06-20T01:50:39.758622Z

I’ll check again tommorow and let you know.

tony.kay 2017-06-20T01:50:42.758938Z

ok

tony.kay 2017-06-20T01:50:43.759055Z

night

2017-06-20T01:50:47.759535Z

But it’s looking good 😎

2017-06-20T01:50:49.759826Z

Yay! 😎

2017-06-20T01:51:07.762138Z

😃

tony.kay 2017-06-20T01:51:10.762524Z

the algo I’m see in Om Next makes me think that pathopt won’t work

tony.kay 2017-06-20T01:51:19.763656Z

which is why I had the idea to turn it off

tony.kay 2017-06-20T01:51:27.764537Z

good that we caught that turning it off wasn’t working 🙂

😬 1
2017-06-20T01:52:02.769015Z

What? There’s no way to insert huge animated gif of absurdly happy person into Slack channel? Bummer 😎

tony.kay 2017-06-20T01:52:25.772025Z

:bananadance:

2017-06-20T01:53:07.777409Z

:bmo:

2017-06-20T01:53:26.779901Z

Bye for now. Will let you know tomorrow.

tony.kay 2017-06-20T01:53:35.781058Z

ok

tony.kay 2017-06-20T02:07:15.885617Z

So, general note to channel: Om Next pathopt seems to be generally broken (as of about alpha 42 at least). It is an undocumented optimization feature that Untangled was using from the early days, but it seems to not be something Om Next is too worried about. I’m changing the default from true to false on this option, and it has cleared up one mysterious bug in my own code, and it looks like it was the solution to the above problem. Unfortunately, Untangled’s option processing of pathopt got broken a while back and no one noticed…and there is no way in the old versions to turn pathopt off! I’ve pushed an updated untangled-client library with the fix, but I cannot push to the navis namespace. So, if you want this fix without moving to the combo lib use awkay/untangled-client "0.8.1"

tony.kay 2017-06-20T02:07:40.888557Z

The combo lib snapshot has the fix already

tony.kay 2017-06-20T02:09:13.899548Z

bummer…that was stale. ignore 0.8.1. I’ll release it as 0.8.2

tony.kay 2017-06-20T02:14:48.939020Z

OK: [awkay/untangled-client "0.8.2"] on clojars. No longer using pathopt

tony.kay 2017-06-20T02:16:15.949561Z

[awkay/untangled "1.0.0-SNAPSHOT"] (the new combo lib) also updated

gardnervickers 2017-06-20T04:13:05.730949Z

@tony.kay Are there other mechanisms to avoid querying from root when a component has an ident it can root it’s query from now?

2017-06-20T18:08:36.239901Z

I’ve got a legacy application that I’d really like to transition to untangled, however I won’t be able to change the database, for now, which is mongodb. Is it worth it, even though I’d be stuck with mongo?

wilkerlucio 2017-06-20T19:05:43.518589Z

@uwo you can write a parser to fetch data from anywhere you want, I wrong a blog post describing how to do that, it might be useful for you: https://medium.com/@wilkerlucio/implementing-custom-om-next-parsers-f20ca6db1664

cjmurphy 2017-06-20T23:34:00.011309Z

Looking at the source from Untangled Getting Started, the Root component has a :ui/person-id: https://github.com/awkay/untangled-getting-started/blob/master/src/main/app/basic_ui.cljs#L84, which I can't see being used anywhere.