JBrowse 1.11.0 is out today, with some major new features, and, as
always, quite a lot of smaller bugfixes and improvements.
It can be downloaded from http://jbrowse.org/jbrowse-1-11-0/.
Firstly, JBrowse has added a third track selector type alongside the
existing Simple (small) and Faceted (large) track selectors called
Hierarchical. It looks like the old Simple track selector (which was
the default), except it pays attention to the “category” key in a
track’s metadata, and if it is present, it organizes the tracks into
nested, collapsible panes based on that. Also, instead of the
drag-and-drop paradigm used by the Simple track selector, the
Hierarchical track selector turns tracks on and off by just checking and
unchecking the box next to each track. I think the checkboxes are
probably easier for new users to understand, as well, the Hierarchical
track selector is now enabled by default. Those that prefer the old
Simple selector can always turn it on by setting trackSelector.type to
“Simple” in the jbrowse_conf.json file or the new jbrowse.conf file,
which brings me to my next item.
Secondly, JBrowse now has a additional text configuration format that is
designed to be easier to hand edit, and can coexist and interoperate
with existing JSON configuration files. Users of GBrowse will find the
syntax very familiar, since its design borrows heavily from GBrowse’s
See the post on jbrowse.org for some graphical examples of the new
configuration format: http://jbrowse.org/jbrowse-1-11-0/
And for the final headline feature of this release, JBrowse
CanvasFeatures, CanvasVariants, and Alignments2 tracks can now be
configured to show feature density histograms or coverage plots when
zoomed too far out to display individual features. They can take this
quantitative data from any type of JBrowse data store (including REST
stores), but most users would probably want to use a BigWig store.
One caveat: this isn’t a full-featured quantitative display like a
Wiggle/XYPlot track, so quantitative values need to all be greater than
0, and all you can really change about how it looks is its color.
Here’s an example in the new text configuration syntax of an Alignments2
track that will display either alignments from a BAM file or a coverage
plot from a BigWig file, depending on zoom level.
Of course, there are many smaller improvements and bug fixes. Read on
for the complete release notes.
## Major improvements
* Introduced density/coverage histogram support for CanvasFeatures,
CanvasVariants, and Alignments2 tracks. These track types now
support an optional `histograms` configuration subsection that can
contain a definition for a second datastore that holds quantitative
data (usually either coverage depth or feature density) to be
displayed when zoomed further out than `featureScale` (or if
`featureScale` is not set, the scale determined by the store's
feature density divided by `maxFeatureScreenDensity`). Thanks to
Richard Hayes for pushing hard for this feature.
* Added a new "Hierarchical" track selector that shows tracks in a
hierarchy of collapsible categories, which is now the default track
selector. To assign categories and subcategories to your tracks,
set `category` or `metadata.category` attributes on each configured
tracks in your `trackList.json`. Thanks to the many users who have
requested this at one time or another.
* JBrowse now supports a new plaintext configuration format that
users of GBrowse will find very familiar, since it is designed to
be very similar to it. This syntax is also much easier to
hand-write than JSON. The JSON configuration syntax is not going
away, and will continue to be supported.
Thanks to Erik Derohanian for the original implementation of this
configuration adaptor, and Richard Hayes and Keiran Raine for
motivating the work to polish and more fully integrate it.
* Variables in configuration files can now be based on the contents
of other variables. For example, setting
will try to include a configuration file located at
"/some/custom/path/conf.json". Interpolation is done as the final
step in configuration loading, so variables can come from anywhere
in the configuration.
* When JBrowse is started, if there are no reference sequences found
in the default `dataRoot`, but the dataset selector is configured,
JBrowse shows a simple list of links to available datasets instead
of the "Congratulations, JBrowse is on the web" page. Thanks to
Saulo Aflitos for the idea and its initial implementation.
* For users wishing to convert existing JSON configuration files to
the new format, there is a new script, `bin/json2conf.pl`, that
does a fair job. Run `bin/json2conf.pl -?` for details on how to
* Added a new REST backend for name lookup and autocompletion. See
for details. Thanks to Erik Derohanian for implementing this, and
Ben Booth for suggesting an API design (issue #267).
* Major performance and scalability improvements for
`generate-names.pl`. Now uses a different algorithm that is faster
and more scalable than before, and no longer relies on BerkeleyDB
for temporary storage. This should also alleviate the need to run
generate-names.pl with `--safeMode` in Perl 5.10 and earlier. In
fact, the `--safeMode argument` to generate-names.pl no longer has
any effect. Thanks to Cris Lawrence for pointing out the
continuing need for more scalability.
## Minor improvements
* Detail popups for CanvasVariants and HTMLVariants tracks now
display the reference sequence itself instead of just "ref" in
genotype displays. Thanks to Cris Lawrence for requesting this.
* Added a "save as FASTA" button to default feature detail popups
that downloads a FASTA file with the displayed piece of reference
sequence (issue #299).
* `chunkSizeLimit` for VCF files now defaults to 1 MiB. It used to
be 15 MiB, which was really far too big for browsers to handle.
* Added support for a `--nameAttributes` argument to
`flatfile-to-json.pl` that takes a comma-separated list of feature
attributes to index for name searching and completions, or 'none'
to not make names searchable.
* Added support for a `nameAttributes` variable in `biodb-to-json.pl`
track configurations that can be set to an array of feature
attribute names to to index for name searching and completions, or
'none' to not make names searchable.
* Add a `--category` argument to bin/wig-to-json.pl that can be used
to set the `metadata.category` of a track.
## Bug fixes
* Fixed a bug in NCList data backed in which feature histograms were
often calculated very incorrectly.
* Fixed a bug in the VCF data backend that caused not all VCF
features to be shown in some files at some zoom levels.
Happy browsing. ;-)
JBrowse - http://jbrowse.org
|Free forum by Nabble||Edit this page|