IRC channel logs
2023-07-06.log
back to list of logs
<PurpleSym>Very strange. It works with --check too, so it’s definitely reproducible on my end 😕 <rekado>we do have react but in a more recent version <PurpleSym>If I understand the logs correctly it wants 16, but we have 17? <rekado>268 silly placeDep node_modules/react-json-tree react@ OK for: react-json-tree@0.11.2 want: ^15.0.0 || ^16.0.0 <rekado>is that where the demand for 16 comes from? <rekado>I have /gnu/store/80q5v7f7pmbx6famkwnnpjiia1f8cc55-node-react-17.0.1 <rekado>wait, maybe there’s a stray file here <rekado>I had a left-over file from my attempts to upgrade rstudio, named oldnode.scm <rekado>that ended up overwriting definitions <rekado>I thought for a moment that there is more irreproducible behavior in npm <rekado>so, I just started the new rstudio and … it just works for me <rekado>here’s what I do: sudo /gnu/store/s0p60pcq9a7lxdc2crvm2g8iwp7hvxg4-rstudio-server-2023.06.0+421/bin/rserver --server-daemonize=0 --auth-none=1 --server-user=rekado --auth-minimum-user-id=0 <rekado>you said that there’s a backtrace when launching the editor? I opened a new file and an existing file and it displays either just fine. <PurpleSym>Everything else works fine. panmirror really is only that new shiny visual editor. <PurpleSym>I mean, we can just patch it out avoiding that npm hell in the first place… <rekado>I think it’s better to have an rstudio with working plot tab even if it’s missing the visual editor. <rekado>compared to the alternative of an rstudio that can’t show plots <PurpleSym>Do you want to crawl into the GWT dungeon and do that? I don’t have the time to do it today. Maybe tomorrow. <rekado>I’m building rstudio again, this time telling gwt to produce “pretty” javascript <rekado>maybe we’ll get a better backtrace then <civodul>i fearlessly re-enabled guix-cran on guix.bordeaux.inria.fr <civodul>the bad news is that it still fails, due to a cycle involving r-future-tests <civodul>the good news is that it now fails with a proper error instead of eating all the memory <rekado>PurpleSym: the message is not much better (the backtrace is virtually useless) but the error is clearer: Uncaught (in promise) TypeError: this$static.editor_ is null <rekado>I still can’t clone the guix-cran repo from ci.guix.gnu.org <rekado>the firewall change request has been approved but nothing has changed <rekado>the error comes from here: /gnu/store/207lq7sbsrymf9rkzlj7nasjvg4jbwm8-rstudio-2023.06.0+421-checkout/src/gwt/src/org/rstudio/studio/client/panmirror/PanmirrorWidget.java <rekado>syncEditorTheme triggers the error, because it’s the first one to access editor_. <rekado>editor_ is initialized in attachEditor by setting it to its only argument (of type PanmirrorEditor) <rekado>I’ll just follow this chain up to see how it creates that value that quietly fails with null. <rekado>in the same file the “create” method has a PromiseWithProgress where it calls PanmirrorEditor.create and falls back to “null” on failure. <rekado>in PanmirrorEditor.java we only have a type definition for the native JS value <rekado>@JsType(isNative = true, name="Editor", namespace = "Panmirror") <rekado>and that, I think, is where things aren’t quite right <rekado>perhaps the namespace should really be <window> <rekado>we do have window.Panmirror.Editor, and we also have Panmirror.Editor. <rekado>the global Panmirror is expected by Panmirror.java, which specifies that the Panmirror class is a binding with @JsType(isNative = true, namespace = JsPackage.GLOBAL) <PurpleSym>But isn’t window the global namespace in the JavaScript world? <rekado>I’m not sure if it makes a difference to GWT <rekado>but I read a little more in the rstudio sources <rekado>the problem we’re facing is that rstudio uses iframes <rekado>and in the context of the iframe there is no Panmirror <rekado>there’s Panmirror in the window / Top context <rekado>I’m now trying to compare our version with Rstudio from docker