Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Repo info
Activity
  • Sep 12 2021 12:30
    fahtative commented #26
  • Sep 12 2021 12:17
    fahtative commented #26
  • Sep 12 2021 12:17
    fahtative commented #26
  • Sep 12 2021 12:13
    fahtative commented #26
  • Sep 12 2021 12:01
    fahtative commented #26
  • Sep 12 2021 12:01
    fahtative commented #26
  • Sep 12 2021 11:59
    fahtative commented #26
  • Sep 12 2021 11:59
    fahtative commented #26
  • Nov 30 2020 19:39
    metasoarous closed #34
  • Nov 30 2020 19:39
    metasoarous commented #34
  • Nov 16 2020 05:16
    metasoarous commented #34
  • Nov 14 2020 12:15
    jpmonettas commented #34
  • Nov 14 2020 12:14
    jpmonettas synchronize #34
  • Nov 14 2020 00:59
    metasoarous commented #34
  • Nov 14 2020 00:58
    metasoarous commented #34
  • Nov 14 2020 00:57
    metasoarous commented #34
  • Jul 22 2020 12:14
    jpmonettas commented #34
  • Jul 21 2020 21:34
    metasoarous commented #34
  • Jul 11 2020 13:34
    jpmonettas synchronize #34
  • Jul 07 2020 12:12
    xlfe commented #35
Urban
@UrKr
So unfortunately it's too hectic at work, and my time-management isn't good enough, so I can't really work on rum integration at the moment.
a question though
my database is a bunch of entities which represent instructions for an engine on the backend to do some calculation based on the instructions
so for a given class of instructions I get all the eids with an attribute which all those instructions have
with posh/q
then I do a bunch of posh/pulls on the eids in the parent component and pass the entities into some component which renders the instructions in some way
so this turns out to be a bit slow because there's a pull for each eid
Urban
@UrKr
I could pass the eids down and posh/pull within the child components so that when some entity was edited, only that component would rerender
the problem is, that the initial posh/q which gets all the eids will rerun whenever I edit any of the entities
when in reality it would only need to rerun when an entity is added or retracted
so in essence
I have a posh/q which gets all the eids I want
I then get the data for those eids with a bunch of posh/pulls
Urban
@UrKr
when that data gets edited however the expensive posh/q reruns
even though it's going to get the same list of eids because no entity was added or retracted
Christopher Small
@metasoarous
@UrKr There was some talk about bringing back manual pattern matching, which would let you specify that the q should only be rerun if a transaction looked like it was going to create a new entity that you'd want to match on. I don't know if that ever happened, but it would be worth looking into.
Urban
@UrKr
@metasoarous I think that would definitely be a good opt-in optimization. Wouldn't even be much of a pain to use.
javier abanses
@nrfm
Hi, is making posh self-host compatible in the roadmap?
Christopher Small
@metasoarous
@nrfm Actually, @bamarco is working on this right now. You mean being able to persist data client side right? (in local storage or whatever)
javier abanses
@nrfm
@metasoarous I mean, to be able to be used in a bootstrapped cljs environment like lumo or in my use case a browser based generative UI exploration tool using klipse/replumb + reagent + posh + datascript + spec . Day8/re-frame#325 is a pull request that achieves that for re-frame. Live coding UI in the browser is the ultimate addiction :)
I actually forked posh and started looking into this yesterday... It seems like the clj macros in base_plugin....What is the setup for development of the reagent parts? Reagent is not in the dependecy list... sorry ..maybe i am doing something wrong ...
Christopher Small
@metasoarous
Oh; of course. Sorry. I would love for that to be on the roadmap. I haven't worked much with bootstrapped cljs yet, aside from firing up a planck repl here and there. But I like the bootstrapped work, and see a lot of potential for embedded systems.
Live coding UI in the browser is the ultimate addition
True dat :-)
Reagent is not in the dependency list so that in theory it could be used with another front end framwork
It's been abstracted that way
So you have to require reagent separately if you want to use the reagent namespace
javier abanses
@nrfm
thanks! makes sense. Gonna play around with it and see what i come up with.
Christopher Small
@metasoarous
@nrfm Wonderful! Let us know if you have any questions!
javier abanses
@nrfm
@metasoarous My slow brain will certainly need some guidance. I haven't traveled much in macro land!
What branch should i work off ? I am getting a bunch of errors when compiling from the master branch? this one is the first that pops up, it seems aget is missing an argument.
Christopher Small
@metasoarous
It is worth checking with @alexandergunnarson about branch and stuff, since he was most recently working on things
javier abanses
@nrfm
@metasoarous thanks!
Hi @alexandergunnarson, I am getting a few errors when compiling from master first one is this one , could you give me some orientation on which branch is best to work off? thanks!
Christopher Small
@metasoarous
@nrfm Can you also tell us what macro you're looking at?
javier abanses
@nrfm
posh.lib.ratom/ aget* is the first one that cursive complains about in the master branch. It is being called with 1 argument in the cljs version as per the link above
javier abanses
@nrfm
@metasoarous cljs.core/aget inside aget is being called with 1 argument, not aget itself. the java .get method is getting both arguments passed to aget*
Christopher Small
@metasoarous
Ah; OK. Gotcha. Thanks.
I can't look at that right now, but that will help once I or someone else does have the time to
Keep us posted!
javier abanses
@nrfm
no worries, gonna see where i get with it. fixed a few things already. will report back
Christopher Small
@metasoarous
Good stuff! Cheers!
javier abanses
@nrfm
@metasoarous @alexandergunnarson got it compiling now.
Christopher Small
@metasoarous
Oh! Great! What was the deal?
javier abanses
@nrfm
that aget call missing an argument was breaking compilation. I just fixed that and compiles ok with some warnings that i am looking into now.
Use of undeclared Var posh.lib.ratom/array at line 202 src/posh/lib/ratom.cljc is an example.
they seem to originate from the if-cljs macro. investigating now, need some coffee to un-bend mi mind :)
Christopher Small
@metasoarous
Ah; I see. Good catch; Thank you!
Heh; macro recovery
javier abanses
@nrfm
@alexandergunnarson @metasoarous how do i go about running the tests? I have never run tests in cljc and when running lein test all the tests get run for clojure ok, but the ones in :cljs conditionals get ignored. thanks!
Christopher Small
@metasoarous
@nrfm I haven't done any testing with posh; I would check with @mpdairy. He hasn't been working with the library so much lately, but I believe he set up all the testing stuff.
javier abanses
@nrfm
@metasoarous thanks!
Brian Marco
@bamarco
Anybody that was interested in a rum plugin I wrote a potential roadmap here: mpdairy/posh#27
Matt Parker
@mpdairy
@nrfm Hey, I never set up any tests, @alexandergunnarson set up some for his ratom stuff. I don't think they cover much of posh though
Christopher Small
@metasoarous
@mpdairy Thanks!