From: Colin <col...@gm...> - 2023-12-12 20:52:39
|
No worries, I'm glad you found this workaround. it is actually really good to hear about any issues people might have with CLI so we can potentially find ways to fix. I know nodejs isn't very common in bioinformatics so for some people installing jbrowse CLI is people's first experience with nodejs, so we want to make sure it's easy. I considered possibly making a single file binary version of jbrowse CLI for example -Colin On Tue, Dec 12, 2023 at 2:37 PM Vaneet Lotay <van...@uc...> wrote: > Sorry this dragged on so long Colin. So I find out that when using ‘npm > install -g’ it installs the @jbrowse/cli tool in 3 different places when > I’m using sudo or root user. One of the places “/usr/local/bin/jbrowse” > was the old v2.6.3 while the other two were the latest v2.9. So I removed > the symlink that was in /usr/local/bin, which actually points to a > directory under /usr/local/lib. Afterwards when trying to run the jbrowse > command it unfortunately only looks in the /usr/local/bin/ directory again, > even though the other two locations where the v2.9.0 was installed are > clearly in my PATH. Anyways I simply recreated that symlink under > /usr/local/bin for JBrowse but pointed it to one of the v2.9.0 executables > in the other location. Now when checking the version I get the right > release #: > > > > jbrowse --version > > @jbrowse/cli/2.9.0 linux-x64 node-v20.10.0 > > > > Hopefully, this workaround functions ok when I upgrade the client tool in > the future, I’ll have to see. > > > > Thanks, > > > > Vaneet > > > > *From:* Colin <col...@gm...> > *Sent:* Monday, December 11, 2023 5:29 PM > *To:* Vaneet Lotay <van...@uc...> > *Cc:* gmo...@li... > *Subject:* Re: [Gmod-ajax] Callback function error with dbxrefs > > > > [△EXTERNAL] > > > > I was mostly referring to how you installed the @jbrowse/cli tool > > > > I think because you have a version of @jbrowse/cli in "/usr/lib/" because > that is listed by npm list -g in your previous post, which suggests to me > that you have used "sudo npm install -g @jbrowse/cli" or run "npm install > -g @jbrowse/cli" under a root or privileged account. This is ok. And, that > one looks like the latest correct version. But, you might also have another > version installed somewhere else too, and that is the v2.6.3 version. Try > identifying where that v2.6.3 version is installed perhaps, with commands > like "which jbrowse" or npm list -g like mentioned previously. And then you > can try uninstalling that version (npm uninstall -g @jbrowse/cli is a valid > command) > > > > Hope that helps :) > > > > -Colin > > > > On Mon, Dec 11, 2023 at 7:12 PM Vaneet Lotay <van...@uc...> > wrote: > > Hey Colin, > > > > Are you referring to how I installed npm or Node.js? Or how I > installed/unpacked JBrowse2? I believe JBrowse2 was done under my user but > perhaps npm was installed using root. I'll have to double check but I > suppose that can cause some discrepancies. > > > > Thanks, > > > > Vaneet > > > > Get Outlook for Android <https://aka.ms/AAb9ysg> > ------------------------------ > > *From:* Colin <col...@gm...> > *Sent:* Monday, December 11, 2023 4:40:06 PM > *To:* Vaneet Lotay <van...@uc...> > *Cc:* gmo...@li... <gmo...@li...> > *Subject:* Re: [Gmod-ajax] Callback function error with dbxrefs > > > > [△EXTERNAL] > > > > The note that you made about running as root may be a clue. You might have > somehow installed it twice, once as a root user, and once as a non-root > user. I would just try to be consistent, e.g. always use the root account > (or equivalently basically, always use "sudo jbrowse ...") or always > unpriviledged. There may be some way to "only install as a root, and then > run the rest of the time as a non-root user" but I can't necessarily advise > on all the cases on how this may affect. You might have installed a version > as a non-root user, for example, my email above actually is an example of > that, my library is in > > /home/cdiesh/.fnm/node-versions/v20.10.0/installation/lib because I use > "fnm" for managing multiple node versions and so that could be where your > v2.6.3 is coming from, and that shadows the system version of v2.9.0 > > > > > > > > > > On Mon, Dec 11, 2023 at 4:47 PM Vaneet Lotay <van...@uc...> > wrote: > > Hey Colin, > > > > I get the same output from the ‘npm install’ command as you except that > it’s “changed 297 packages” instead of added so I assume it’s working but > the version check doesn’t show the new version number. Perhaps this might > give more of a clue to what’s going on, when I run the ‘npm list’ command I > get this: > > > > XenJBrowse2# npm list -g > > /usr/lib > > ├── @jbrowse/cli@2.9.0 > > ├── corepack@0.22.0 > > └── npm@10.2.3 > > > > Interesting that here it lists the latest JBrowse release #, but I’m not > seeing that change in my main JBrowse 2 folder. Does this give any other > clue to what might be going on? I need to switch to root when running the > npm install command to have access to the full suite of npm commands, but > not sure if that conflicts with anything here. > > > > Thanks, > > > Vaneet > > > > *From:* Colin <col...@gm...> > *Sent:* Friday, December 8, 2023 3:29 PM > *To:* Vaneet Lotay <van...@uc...> > *Cc:* gmo...@li... > *Subject:* Re: [Gmod-ajax] Callback function error with dbxrefs > > > > [△EXTERNAL] > > > > Hi there, > > Running the "npm install -g @jbrowse/cli" should get the latest version, > so then, running "jbrowse --version" should report the latest version > (currently, 2.9.0) > > > > So for me > > > > % npm install -g @jbrowse/cli > > added 297 packages in 12s > > 45 packages are looking for funding > run `npm fund` for details > > ~ took 12s > % jbrowse --version > @jbrowse/cli/2.9.0 linux-x64 node-v20.10.0 > > > > I am not sure why this is not happening in your case. You can try running > > > > "npm list -g" > > > > This will list globally installed npm packages and their locations. So for > me, it outputs a folder named > > > > /home/cdiesh/.fnm/node-versions/v20.10.0/installation/lib > > > > And then a folder in that same directory is where all the binaries that > are in your path should be > > > > /home/cdiesh/.fnm/node-versions/v20.10.0/installation/bin > > > > If you have manually manipulated your PATH variable to try to add npm > binaries to your PATH, you might consider adjusting that or removing the > custom PATH for npm entirely (it should be automatic under most > installations) > > > > Note: we removed the gt gff3 -sortlines because it outputted inaccurate > sorting that would be rejected by tabix under certain circumstances. There > was also an awk command and this also was bugged. We replaced it with a new > built-in jbrowse CLI command, the sort-gff > > to try to avoid the external dependency and make it easier to run > (hopefully!) > > > > Let me know if that helps > > -Colin > > > > On Fri, Dec 8, 2023 at 2:53 PM Vaneet Lotay <van...@uc...> > wrote: > > Hey Colin, > > > > Speaking of changes to the doc pages, I noticed someone might have changed > the tutorial page for adding JBrowse tracks? This page: > > > > > https://jbrowse.org/jb2/docs/quickstart_web/#adding-a-gff3-file-with-gff3tabix > > > > I believe it used to say ‘gt gff3 …..’ for the command to initially sort > the gff3. Now it uses the ‘jbrowse sort-gff’ command which I don’t seem to > have in my release of JBrowse tools. This relates to my issue. I > attempted to upgrade JBrowse to the latest release, also it because has > some addons/fixes I’m interested in, but it didn’t seem to work. I used > these commands from the tutorial page: > > > > jbrowse upgrade > > npm install -g @jbrowse/cli > > > > I didn’t receive any errors. However when I try the new jbrowse sort-gff > command it’s not found. My version is still listed as such: > > > > jbrowse --version > > @jbrowse/cli/2.6.3 linux-x64 node-v20.9.0 > > > > Do you know if I’m missing something needed to upgrade to the latest > release? > > > > Thanks, > > > > Vaneet > > > > *From:* Vaneet Lotay <van...@uc...> > *Sent:* Monday, November 27, 2023 4:41 PM > *To:* Colin <col...@gm...> > *Cc:* gmo...@li... > *Subject:* Re: [Gmod-ajax] Callback function error with dbxrefs > > > > [△EXTERNAL] > > > > That was the issue for me, thank you for fixing this! My dbxref links work > fine now. > > > > Vaneet > > > > *From:* Colin <col...@gm...> > *Sent:* Monday, November 27, 2023 3:43 PM > *To:* Vaneet Lotay <van...@uc...> > *Cc:* gmo...@li... > *Subject:* Re: [Gmod-ajax] Callback function error with dbxrefs > > > > [△EXTERNAL] > > > > I made a code fix to this link > https://jbrowse.org/jb2/docs/config_guides/customizing_feature_details/#example-a-generalized-solution-to-dbxrefs > just yesterday after I saw this thread, the diff was > > > > > > old > > ;(typeof self !== 'undefined' ? self : window).JBrowsePluginMyPlugin = { > default: Plugin, // this variable "Plugin" wasn't defined > } > > > > new > > > > > ;(typeof self !== 'undefined' ? self : window).JBrowsePluginMyPlugin = { > default: MyPlugin, // fixed! this refers to class MyPlugin. change to > DbxrefPlugin or whatever the name of your class is > } > > > > On Mon, Nov 27, 2023 at 4:59 PM Vaneet Lotay <van...@uc...> > wrote: > > Hey Colin, > > > > Thanks I did catch that mistake for the plugin name, which I forgot to > change in one place. Now I’ve got this error in the browser: > > > > TypeError: Illegal constructor. > > > > I tried to see what could be causing this but haven’t located it yet. Any > ideas? > > > > Thanks, > > > > Vaneet > > > > > > *From:* Colin <col...@gm...> > *Sent:* Sunday, November 26, 2023 8:03 PM > *To:* Vaneet Lotay <van...@uc...> > *Cc:* gmo...@li... > *Subject:* Re: [Gmod-ajax] Callback function error with dbxrefs > > > > [△EXTERNAL] > > > > Hi there > > I think if you copied from here > https://jbrowse.org/jb2/docs/config_guides/customizing_feature_details/#example-a-generalized-solution-to-dbxrefs > then also have to rename JBrowsePluginMyPlugin -> > JBrowsePluginDbxrefPlugin. You can see that the error message is looking > for that variable name because that is what you named it in your > config.json (it looks for the name JBrowsePlugin+name from the > config.json), so I think that should help > > > > -Colin > > > > > > Footnote: it is definitely a little tricky that you have to meticulously > have the right name for the plugin in so many places. Hopefully in the > future it might not require this if we switch to so called "esm plugins". > ESM plugins are already supported by jbrowse 2 but some browsers don't have > great support for them yet, so they aren't our default example in the > documentation, but we may update our examples to them in the future > > > > On Thu, Nov 23, 2023 at 3:15 PM Vaneet Lotay <van...@uc...> > wrote: > > Hi all, > > > > I followed the same structure that was outlined in the docs section at > jbrowse.org (‘generalized solution to dbxrefs’) with different content > obviously. I created a dbxrefPlugin.js file with a ‘linkout’ function > under a plugin named DbxrefPlugin. When trying to load the genome for > which I’m attempting to use the callback function I see this error: > > > > *Failed to load UMD bundle for DbxrefPlugin, JBrowsePluginDbxrefPlugin is > undefined* > > > > Any idea where I’m going wrong? I can attach some code if it’s not > something simple or obvious I’m missing here. > > > > Just at the preliminary stages of trying to understand how JBrowse2 > functions behind the scenes, so I may have other moments like this in the > future 😊 > > > > Thanks, > > > > Vaneet > > > > > > _______________________________________________ > Gmod-ajax mailing list > Gmo...@li... > https://lists.sourceforge.net/lists/listinfo/gmod-ajax > > |