Provides two links for IGV:
1) web - to view with Java web start IGV if the user has no IGV installed
2) local - to view in the user's running IGV instance (requires remote port enabled in IGV)
Add the ability for display applications to be populated dynamically based upon the content of (e.g. tabular) files.
Display application links can be filtered by various attributes, including e.g. dataset dbkey matching from field in a file or an attribute matching a Galaxy application configuration setting.
Param and Data URL values can now be generated dynamically, allowing e.g unique base filenames to be created and used.
See updated xml configurations in /display_applications/ for examples of syntax.
Applications are assigned to specific datatypes (i.e. on an extension basis) via the datatypes_conf.xml file.
View the sample display applications at /display_applications/[ucsc/]*.xml for examples of usage.
Provided sample display applications:
View BAM files (with bai indexes) at UCSC using BigDataUrl support.
ucsc interval as bed viewer - not enabled by default (the old style display app is still used by default; both can be used simultaneously - but this would likely be confusing)
GeneTrack viewer - any interval datatype can now be viewed at GeneTrack, if the application is enabled for a particular datatype; also a valid display application for genetrack datatype.
Display applications can make full use of datatype converters, even allowing explicitly defined multi-step conversions, e.g. interval --> bed --> genetrack; the datatype conversion framework will need to be enhanced to natively support multi-step conversions before this can be done implicitly.
A new datatype, bedstrict, has been defined, the only way to have an item with this datatype is to be created by a tool; metadata cannot be edited; and sniffing this datatype would require aggressively parsing the entirety of the file. A bedstrict file must conform exactly to the BED specification (whereas Galaxy allows BED files to have non-standard columns). These files are suitable e.g. for display at the UCSC genome browser and is used by the new ucsc interval display application.
Add a bed to bedstrict converter, this is used by the ucsc interval display application.
Add a bed to genetrack converter, this is used by the new GeneTrack display application. TODO: If the GeneTrack indexer can be enhanced to accept column assignments, this should be an interval to genetrack converter.
Several performance enhancements available for the ucsc tools, such as bigurl support, potential speed improvement when loading a user's history than the old style for certain displays, e.g. ucsc interval display no longer requires the viewport (position) to be calculated for each relevant history item in a users history; this calculation now occurs on a separate page after the user clicks a view link. Non-strict BED files no longer have their content calculated on the fly and then streamed, etc.
Refer to additional comments in code.