Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 17:34
    codecov[bot] commented #2672
  • 17:28
    codecov[bot] commented #2666
  • 17:20
    cmdcolin commented #2672
  • 17:20
    cmdcolin labeled #2672
  • 17:20
    cmdcolin unlabeled #2672
  • 17:20
    github-actions[bot] labeled #2672
  • 17:19
    cmdcolin opened #2672
  • 17:19

    cmdcolin on dotplot_coloring

    Synthesize the bpToPx function … (compare)

  • 17:14

    cmdcolin on dotplot_coloring

    Dotplot pos/negative coloring Synthesize the bpToPx function … (compare)

  • 17:11
    codecov[bot] commented #2666
  • 17:07
    cmdcolin synchronize #2666
  • 17:07

    cmdcolin on curvey_lines

    Fix lint (compare)

  • 16:40

    cmdcolin on search_drawer

    (compare)

  • 16:38

    cmdcolin on react_art_experiment

    (compare)

  • 16:38

    cmdcolin on export_svg

    (compare)

  • 16:38

    cmdcolin on dont_check_isalive

    (compare)

  • 16:38

    cmdcolin on typescript-hierarchical

    (compare)

  • 16:38

    cmdcolin on text_field_mock

    (compare)

  • 16:35

    cmdcolin on bump_electron

    (compare)

  • 16:35

    cmdcolin on server_side_warning_cleanup

    (compare)

Colin Diesh
@cmdcolin
added to cal:)
Robert Buels
@rbuels
@peterkxie thoughts on #2541?
Shellfishgene
@Shellfishgene
Are csi indexes also supported for tabix (gff) files? I have a gff file that tabix won't do an tbi index for for some reason. When I use add-track with --indexFile=foo.gff.gz.csi it still tries to copy a (non existent) .tbi file.
Shellfishgene
@Shellfishgene
If I use inPlace and the csi index it works...
Colin Diesh
@cmdcolin
i think that add track works with indexFile and csi
$ jbrowse add-assembly test_data/volvox/volvox.fa --out t1 --load copy
Added assembly "volvox" to t1/config.json

$ jbrowse add-track test_data/volvox/volvox-sorted.bam --indexFile=test_data/volvox/volvox-sorted.bam.csi --out t1 --load copy
Added track "volvox-sorted" to t1/config.json

$ ls -1 t1
config.json
volvox.fa
volvox.fa.fai
volvox-sorted.bam
volvox-sorted.bam.csi
using jbrowse cli 1.5.1
Colin Diesh
@cmdcolin
some mega ucsc trackhubs/assembly hubs that could be cool to load
Shellfishgene
@Shellfishgene
Yes, it worked with my bam and cram files, but not with gff and csi.
Shellfishgene
@Shellfishgene
Colin Diesh
@cmdcolin
@Shellfishgene ah thanks much
this should get fixed
Colin Diesh
@cmdcolin
possible issue about estimating bytes downloaded, could be possibly a method for stats estimation GMOD/jbrowse-components#2251
Robert Buels
@rbuels
Oh that’s cool, you gonna go?
Colin Diesh
@cmdcolin
perhaps:)
it's free so why not
Robert Buels
@rbuels
Wonder if we can find some synergies between that working with crazy rearrangements
Colin Diesh
@cmdcolin
surely. even "non crazy"stuff benefits
bbimber
@bbimber
Hello - I'm hoping to get some advice. We're trying to make a plugin that filters variants in a VCF track based on whether specific samples are non-wild type. The logic is not hard (make sure the genotype of samples !== '"./." or "0/0"); however, has ~2500 samples. At least how we're doing this makes a very noticeable lag in loading. I experimented with pre-computing an array of the non-WT samples in the getFeatures() method of a custom VcfTabixAdapter; however, this code is called repeatedly whenever any rendering happens. Is there a place I could hook into the processing of VCF features that would let me efficiently pre-compute some information, and let that information persist? Alternately, is there another way I should think about approaching this problem?
Robert Buels
@rbuels
@bbimber I think a custom adapter is a good approach. What would probably help the performance of this a lot would be adding a cache of the features that your custom adapter is creating, so that the calls to getFeatures don't repeat the fetch/parse/filter steps
that cache would be in the custom adapter
bbimber
@bbimber
are there any existing examples of such a cache?
Robert Buels
@rbuels
i did some looking around just now, i don't see any good examples to template from
i can write an implementation sketch of it quickly, just a seec
bbimber
@bbimber
ok, thanks. is there anything particularly react or mobx-specific to this, vs. generic JS?
Robert Buels
@rbuels
no it's pretty generic js
38 replies
bbimber
@bbimber
@cmdcolin on #2554 you said something interesting I hope you could expand on here. you mention lazy parsing of genotypes. As noted above, we have a VCF with ~2400 samples. We previously never had code that did anything with samples until the details panel was opened. We are trying to implement code that lets the user filter sites based on specific samples having non-WT genotypes, and so we're starting to access genotype data much earlier and do this for all variants. What governs whether genotypes are parsed or not?
Colin Diesh
@cmdcolin
in the current code, the genotypes are always parsed and serialized to json, which is fairly slow
with #2554 , if you were accessing the genotypes for filtering, it would parse the genotypes but would not necessarily serialize to json
bbimber
@bbimber
ok
Colin Diesh
@cmdcolin
in some cases it could also (not implemented now, but if and when) only parse a specific genotype column perhaps
Colin Diesh
@cmdcolin
at some point might be interesting to make a bcf adapter too...
(binary vcf format)
bbimber
@bbimber
One more VCF question: in JBrowse 1 we could look up the VCF header, which is useful since it can translate from the INFO field keys into their labels. Can one do this in JB2? If so, is there by chance an example?
Garrett Stevens
@garrettjstevens
@bbimber if you have the adapter config, you can get the raw header string with our "CoreGetInfo" RPC call, example here: https://github.com/GMOD/jbrowse-components/blob/1d22d290b8974ad21f7ddf8787db10f631d05d8f/packages/core/ui/AboutDialog.tsx#L48-L51. A feature will also have the VCF header data stored in it that you can access, example for INFO here: https://github.com/GMOD/jbrowse-components/blob/00c4e05cca8d054ab3456423b43e1bbd0e24be8c/plugins/variants/src/StructuralVariantChordRenderer/ReactComponent.js#L32-L36
bbimber
@bbimber
Another possibly dumb question: when making a plugin/widget, the component is rendered as a modal. Can I call something to close that window? if the user clicks off the modal it closes, but I dont see how to close it with code
Colin Diesh
@cmdcolin
possibly something like getSession(widgetModel).hideWidget(widgetModel.id)
bbimber
@bbimber
hideWidget(model) works, rather than model.id
Scott Cain
@scottcain
@rbuels @hawrobin @cmdcolin : outreach call? I’m in google hangout
Robert Buels
@rbuels
yep coming
Robin Haw
@hawrobin
Sorry I have a clash today!
Scott Cain
@scottcain
@rbuels @cmdcolin are we really having an outreach call Monday at 9:00am? It’s in my calendar, but I am doubting it.
Robert Buels
@rbuels
Hmm no I don’t know how that got on there
I’ll delete it
Scott Cain
@scottcain
👍
Colin Diesh
@cmdcolin
spotted a jb2 svg export in the wild https://twitter.com/ilyavkirov/status/1467854553563512847