Skip to content

JBrowse 1.14.0

Compare
Choose a tag to compare
@rbuels rbuels released this 18 Apr 15:37
· 1286 commits to dev since this release

Major improvements

  • JBrowse now behaves much better when embedded in a webpage without using an iframe. See tests/drupal.htm in the JBrowse code for an example of this usage. Thanks to @laceysanderson for her patiently championing this feature all the way through the long road to completion! (issue #777, issue #844, @cmdcolin)

  • There is a new BigBed store type, for opening BigBed files. An example BigBed track configuration:

        [tracks.GENCODE]
        storeClass = JBrowse/Store/SeqFeature/BigBed
        type = CanvasFeatures
        urlTemplate = gencode.bb
        style.label = gene_name,name,id
        style.description = gene_bio_type
    
  • JBrowse now has much better support for UCSC-style BED and BigBed features, via the new BED glyph type for CanvasFeatures. Rather than rendering a complex feature hierarchy like many of the other CanvasFeatures glyphs, the BED glyph draws sub-blocks with thick and thin regions, for compatibility with the UCSC browser. CanvasFeatures will automatically use the JBrowse/View/FeatureGlyph/UCSC/BED glyph type if a feature has no subfeatures, but has blockCount or thickStart attributes. This means that, in practice, a BigBed file will display very well with just the default configuration. Also for compatibility with the UCSC browser, JBrowse will set a BED feature's background color if one is included in the feature data (turn this off by setting itemRgb = false).

Minor improvements

  • The current dataset name is now displayed in the top right portion of the menu bar. (issue #767, @rbuels)

  • prepare-refseqs.pl now accepts a --gff-sizes option to allow defining reference sequence sizes from the ##sequence-region directives in a GFF3 file. @rbuels

  • Some store types now support a topLevelFeatures configuration variable, which allows tracks to treat certain types of features as 'top-level', even the actual track data has them as children of other features. One common use case for this would be if you have gene models in a GFF3 structured as gene→mRNA→exon/CDS/UTR, but you want to display the "mRNA" features as top-level, i.e. ignore the gene container that they are in. Now you can set topLevelFeatures = mRNA in the track configuration, and the track will display only "mRNA" features on the top level, ignoring any other existing top-level features, and ignoring the containing "gene" features. This helps address what seems to be a common pain point of having to "filter" tabix-formatted GFF3 before using it with Apollo. One important caveat is that users that configure tracks to use an "out of band" source of feature density or coverage data, like a separate wiggle file that shows feature density, will have to make sure that the density data is correct for this filter setting if they use it. Thanks to @Yating-L, @nathandunn, and @cmdcolin for valuable discussions. Stores that support topLevelFeatures currently are: GFF3Tabix, GFF3, BED, BEDTabix, GTF, and REST (issue #974, issue #969, @rbuels)

  • JBrowse can now accept additional configuration from a data-config attribute on its container element. This is useful for embedding JBrowse in other sites, particularly in cases where the JBrowse assets and configuration are stored or referenced from a different location from the page displaying the embedded JBrowse. For example: html <div class="jbrowse" data-config='"baseUrl": "../jbrowse"' id="GenomeBrowser" style="height: 600px; width: 100%; padding: 0; border: 0;" > </div> would tell JBrowse to look for its configuration and assets at the relative base URL "../jbrowse". @rbuels

  • JBrowse now has a favicon! (issue #973, @rbuels)

  • Added additional caching code to SequenceChunks and NCList stores, reducing duplicate network requests and increasing performance in some circumstances (issue #855, @cmdcolin)

Bug fixes

  • Fix a bug in which saving exported data to a file was nonfunctional for some export data types. @rbuels

  • Fix a bug in which subfeatures were not always fetched correctly when using the GFF3Tabix store (issue #780, @rbuels)

  • Fixed several bugs with specific cases of relative URLs used in configuration. @rbuels