I fixed my issue by adding a refresh on :sale-router in the load an now everything works. Not really happy about the fix because I don't understand what went wrong
Nope that was not the resolution
@mitchelkuijpers any chance for a minimal replication on untangled-template fork, or is it to much to setup ?
Now I am on it, seems to have something todo with a union query (of untangled-router) and 2 union branches which reference the same key
@claudiu will try to reproduce I want to understand the issue
yep. that way is easy for us to just git clone and play around.
I have fixed it though (luckily)
Ill try to reproduce on top of untangled template
@mitchelkuijpers awesome đ can you say what the fix was ?
or was the refresh on :sale-router the fix
I had a union query and both branches had :current-sale which was pointing to a ident
I changed one to another key so they are different and that fixed it
đ
anyone from http://adstage.io here ? curious if all the admin app is written in untangled đ
@tony.kay Do you by any chance have an untangled data flow diagram similar to the ones that appear in google when searching for redux or re-frame ?
@claudiu - yes, the AdStage admin app was built in untangled, though it hasn't seen much love since we introduced a way to log in directly from our main admin product (Rails + ActiveAdmin)
@therabidbanana is the functionality presented in vistia live adstage demo. The untangled part or rails + active admin ?
Not sure what you're referencing - the medium blog?
therabidbanana: https://adstage-marketing.wistia.com/medias/obveyri4mq this video
Heh, I've never even seen this before - looks like after around 23 minutes is the report product, written in untangled. If there was an admin panel in this video (on phone, hard to search) - it was very likely ActiveAdmin
Really nice product. Seem pretty complex :)
Yeah, there's definitely a lot of surface area to it.
@urbank no, I think youâre still misunderstanding me. I am at a real computer today. Iâll write an example.
@claudiu No, I donât have a data flow diagram. There really isnât much of one: app state goes to UI, mutations update app state. Remotes (as abstract queries and mutations) go to server. Response goes to app state.
tony.kay: think I will need to write one. Had a tech discussion with our main javascript guy and the proposed solution for dataflow is 2 times more complex than this flux one https://uploads.toptal.io/blog/image/601/toptal-blog-image-1412170548235.png
which is 2x more complex than Untangled/Om NextâŚgood point
yep. It's just crazy đ he has a plan for: custom middleware over another middleware. Most be going crazy since I seem to be the only one in the team that has a problem with this :))
ah middlewareâŚit helps in that scenario so it must be the tool for every job. I love it when you have a hammer đ
mutation NAIL! communication NAIL! UI updates NAIL! Testing NAIL!
um guys, I think we could use a screw over hereâŚNAIL!
well :)) personally I have a big problem with the fact that for a simple form, to view every layer I need to open about 10 files :))
but..butâŚnail?
đ
the argument is that it gives you a lot of flexibility đ looking at http://adstage.io our product isn't really that complex to begin with :))
keeps bugging me đ the new website with that width.
You said something about redesign with some designers.
I once asked an engineer to write a 2 player console Blackjack that was testable. He wrote something that was super flexible, but didnât really work and was 1000 lines longâŚwhen it can be done well with full tests in about 200. Yea! Flexible
If it's not on the todolist, I looked a bit and since it's a html/css repo. Should be able to update it and modify a bit
Fetishizing complexity more like it.
Mitchel said he was having his design guy make a new tempalte for me.
agh oky đ so no point in me spending time to hack that one away đ
I should make a BDSM-style âmotivational posterâ that shows developers fetishizing complexity somehow đ
we need more shock value on doing that stupid shit
:))
it is really an Om data flow, other that Untangled provides all the abstractions you need to properly trigger loads via explicit queries
@mitchelkuijpers both branches? OH! That would mean that you ended up with table names that overlapped
because you had two ident functions that were putting two things in the same place. I should update the docs and recommend namespacing all keywordsâŚ.esp. :routera/screen1 instead of just :screen1.
I keep writing things too quickly while forgetting to make the point that in larger apps it is a good idea to namespace things to avoid collisions.
@claudiu You were mentioning you might want to work on the website. @mitchelkuijpers has a designer working on it, but if you wanted to quickly widen it as a temp measure thatâs fine.
yep. Will give it a try. Those images have to be changed apart from that seems reasonable to modify.
the template is pretty nice đ just that width issue đ
Iâve not looked at it on a phone. Does it look ok? If so, it would be nice if it still shrinks for smaller screens?
Its ok on phone but different images
@tony.kay I fixed it by adding a certain refresh key, it is still a weird issue. They did not have the same ident
I tried to reproduce on untangled template but failed
So, that was why I suspected path-opt. It sounded like a path-opt refresh was screwing up, but a root-level refresh was fine
There was a version of Untangled where the path-opt option isnât passed through properlyâŚyou looked at the reconciler to make sure it is actually off?
Also, if you use the same keyword for the two screens, you will have to end up with them in the same top-level table. That is how idents work. So, getting a conflict on ID (e.g. perhaps two are coming back with IDs of nil for some reasonâŚload marker?) then youâd see weirdness because theyâd both be in the same table entry.
Though I donât see why youâd load an entire screenâs state from a server instead of just the persistent bits.
Yeah I also thought of path opt but it is definitely off
@urbank https://github.com/awkay/untangled/blob/develop/src/devguide/untangled_devguide/F_Untangled_Initial_App_State.cljs#L180
added an example of where the link query problem can happen
@tony.kay Heh, ok. I'll try to contribute next time đ
Itâs all good. I appreciate the effort, and Iâm sure you learned something.
Iâve brought untangled-datomic into the new github namespace. Not sure how many ppl use it, but it seems like a worthwhile thing to keep in the ecosystem.