Coder Social home page Coder Social logo

gbrowse's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gbrowse's Issues

Track canvas not resized correctly when subtracks in use

Hi,

We've found that when we apply the following to our gene tracks (e.g. protein coding genes) and a region with just 'Forward' strand features is displayed the image is sliced through the actual glyph. It looks like the bump down of the glyph to avoid the subtrack label hasn't extended the vertical height. It seems fine when both subtracks have data

## this combination on a stranded view
subtrack select         = Strand strand
hide empty subtracks    = 1
subtrack table          = :Forward +1 ;
                          :Reverse -1

If someone can point me in the direction of the code that handles this I'm happy to attempt to fix it.

Regards,
Keiran

Browsing returns different region

I have this problem I cannot find any answer on the net. I setup a GB2 with mysql for a draft genome and its gene annotation. When I browse it, no matter what region I ask I'm given a different one shifted several kilobases downstream, annotation seems correct in structure (when I get manually to the region of interest) but when I ask for the sequence of the gene it returns the bases form the shifted region instead (even if the structure intron/exon is in line with the annotation). Any clue on how make it work?

[EDIT]

I just figured out that also chromosome length is returned wrong from the sistem

Can't remove shared track

A fellow zfinner and I have been testing our new GBrowse2 instance. He uploaded a .wig file, then shared the track with me, and neither he nor I can remove the track from our Custom Tracks tab.

When either of us hits the [X] we get a spinner, but no change.

There's no errors on the apache side, but I do see this in the javascript console:

TypeError: 'null' is not an object (evaluating '$("community_display_offset").value')

Here's the click event code for the [X] link:

< a onclick = "unshareFile('track_eebde9_GSM1133391_chrall.sperm.chr_removed.wig', '')" onmouseover = "GBubble.showTooltip(event,"Remove from my session",0,200)" href = "javascript: void(0)" > [X] < /a>

On first glance, $("community_display_offset") looks like an odd jQuery selector, since it looks like it's referring to a tag rather than a class or id….but I see it all over, so I'm guessing that's not the problem.

We're using GBrowse 2.55, with the user database features turned off.

Using Reset from the File menu clears the shared track, but I'm guessing the expected behavior is that the [X] should remove the shared track.

The length of segment is 1 bp less then the true value

The length of segment is 1 bp less then the true value

Here is a patch to fix it:

  lib/Bio/Graphics/Browser2/Render.pm |    4 ++--
  1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/lib/Bio/Graphics/Browser2/Render.pm b/lib/Bio/Graphics/Browser2/Render.pm
index 0cc268d..3d6d701 100644
--- a/lib/Bio/Graphics/Browser2/Render.pm
+++ b/lib/Bio/Graphics/Browser2/Render.pm
@@ -878,7 +878,7 @@ sub generate_title {
          : @$features == 0                   ? $self->translate('NOT_FOUND',$state->{name})
     : @$features == 1 ? "$description: ".
                   $self->translate('SHOWING_FROM_TO',
-                        scalar $dsn->unit_label($state->{view_stop} - $state->{view_start}),
+                        scalar $dsn->unit_label($state->{view_stop} - $state->{view_start} + 1),
                         $state->{ref},
                         $dsn->commas($state->{view_start}),
                         $dsn->commas($state->{view_stop}))
@@ -921,7 +921,7 @@ sub segment_info_object {
         flip                 => $state->{flip},
         initial_view_start   => $state->{view_start},
         initial_view_stop    => $state->{view_stop},
-        length_label         => scalar $self->data_source->unit_label($state->{view_stop} - $state->{view_start}),
+        length_label         => scalar $self->data_source->unit_label($state->{view_stop} - $state->{view_start} + 1),
         description          => $self->data_source->description,
     );
     if ( $state->{region_size} ) {

individual genes highlightning

Hello,
we are quite new to GBrowse tracks customization, and we are wondering whether it might be possible to highlight individual and specific genes with different colors, once an annotation gff file, converted from a genbank file, has been loaded. The protein coding gene tracks, in fact, shows all the genes with the same color.
Regards

stefano

test failures with new libgd3

Hi,
there is a bug report against the Debian packaged GBrowse which contains the hint:

In my limited understanding, error like

GD Warning: GD2 image support has been disabled
gdImageGd2Ptr error at /usr/lib/x86_64-linux-gnu/perl/5.34/Storable.pm line 285, at /build/gbrowse-2.56+dfsg/t/../lib/Bio/Graphics/Browser2/CachedTrack.pm line 158.

come from the removal of some formats in libgd(3).

My understanding is even more limited and I'm simply forwarding this bug report to you.

Kind regards, Andreas.

subtrack scaling to combined min/max

Hi,

I'm not 100% sure if it is a bug or feature but previously (GBrowse 2.52) the scaling mechanism of several subtracks worked different than in GBrowse 2.54. When scaling wiggle_xyplot to the local min/max it scaled previously all tracks to the same value. Now it scales each subtrack to it's own min/max. The function of GBrowse 2.52 of a combined local min/max was very helpful to judge expression differences of normalized wiggle tracks. Scaling to a fixed value still scales all subtracks to the same value what is great. Is there some possibility to configure/reimplement the feature of combined local min/max for all subtracks?

Thanks a lot for your great work,
Thomas

staggered lines bug

Hi, a WormBase user submitted a GBrowse error.

Original ticket here: https://github.com/WormBase/website/issues/1537

From Curtis:
"FYI - a display anomaly (using Safari 5.1.4 ) –

When genome browser is selected for 'flip' and some tracks are closed – lines are staggered. See screenshot. Downloaded png and svg are fine.

Have fun."

583fb9ae-e79d-11e2-82b0-20f0866b42fc

Long glyph labels scroll off to the left

When a glyph's left end is positioned on one of the fine scrolling virtual screens, then the label is not initially visible unless the user scrolls off to the left. This could be fixed by turning the label (and description) into floating HTML labels.

Problem with make test

When running make test on v2.47, using Bio::Graphics 2.26 on Debian, I have the following errors:

t/00.compile.t ............ ok
t/01.yeast.t .............. ok
t/02.rearchitecture.t ..... ok
t/03.render.t ............. 4/150 Can't call method "FETCH" without a package or object reference at /home/osallou/Desktop/DEBIAN-MED/gbrowse/tarballs/gbrowse-2.47dfsg.orig/t/../lib/Bio/Graphics/Browser2/Render/Slave.pm line 551.
http://localhost:39311; search failed: 500 Server closed connection without sending any data back at /home/osallou/Desktop/DEBIAN-MED/gbrowse/tarballs/gbrowse-2.47
dfsg.orig/t/../lib/Bio/Graphics/Browser2/RegionSearch.pm line 566.
Can't call method "FETCH" without a package or object reference at /home/osallou/Desktop/DEBIAN-MED/gbrowse/tarballs/gbrowse-2.47dfsg.orig/t/../lib/Bio/Graphics/Browser2/Render/Slave.pm line 551.
http://localhost:53177; search failed: 500 Server closed connection without sending any data back at /home/osallou/Desktop/DEBIAN-MED/gbrowse/tarballs/gbrowse-2.47
dfsg.orig/t/../lib/Bio/Graphics/Browser2/RegionSearch.pm line 566.
.......

Errors seem to be relative to remote rendering.

Showing features on reverse strand that are imported via URI "add" parameter

GBrowse does not show a feature on the reverse strand, if added as follows:

http://www.wormbase.org/tools/genome/gbrowse/c_briggsae/?name=chrV:13058784..13065097;add=chrV+Hits+Hits+13062147-13060275

The glyph for "Hits" should indicate that the feature is on the reverse strand, i.e. the glyph should be flipped.

I tried:

  1. reversing the coordinate (13060275-13062147), which does not change anything
  2. adding "flip=1" to the URL, which flips everything
  3. adding "style=...", which breaks everything (the "Hits" track breaks)

Hi Joachim,

I think you can't do that, even though it seems like you should be able to; I suspect it's a bug. The closest to showing it on the reverse strand that I've been able to do via a GET add parameter is to make the style so that it is not stranded (so at least it isn't the opposite of what you wanted), but adding "style=Hits+stranded=0" to the URL, but that seems to be ignored by the Wormbase instance of GBrowse anyway (I don't know what version Wormbase is running); I tested it with 2.54 with the yeast sample database and a URL that looks like this:

http://ec2-50-17-122-22.compute-1.amazonaws.com/cgi-bin/gb2/gbrowse/yeast/?add=chrI+Hits+Hits+151000..150000;style=Hits+glyph=generic+stranded=0

This should be filed as a bug report:

https://github.com/GMOD/GBrowse/issues

Scott

GBrowse2: colon in search string fails the search

In ZFIN, and probably other MODs, there are gene symbols with a colon in them, like si:bac7cse.1 at ZFIN. Searching our GBrowse for such a gene produces a "Not Found" result, though the feature is in GBrowse. The period seems fine by itself in a gene symbol, so it seems like the colon is the culprit. Obviously colon works when searching by genomic coordinates, but it doesn't work when searching with a colon-containing gene symbol.

Expectation:
Searching GBrowse with feature names that include colon should find the features.

Doug Howe
ZFIN Data Curation Manager

Installation fails on SELinux-aware kernel, but with SELinux not enabled

Hi,

I recently encountered an install issue with GBrowse v2.39 on a machine with SELinux support compiled into the kernel, but were SELinux was disabled or otherwise in permissive mode.

The install helper module GBrowseInstall.pm has a fix_selinux() subroutine that looks for "selinux" in /proc/filesystems and then attempts to run /usr/bin/chcon on various install locations.

However, this machine has SELinux kernel support ("nodev selinux" in in /proc/filesystems) but has /selinux/enforce set to zero. Thus, the calls to /usr/bin/chcon fail and installation does not fully complete.

I suggest that fix_selinux() be changed to also check the value in /selinux/enforce when deciding that SELinux is enabled during an install.

This situation remains in the most recent release v2.49 source as well. One suggested patch, tested out on my server with patched v2.39 source, is the following addition to GBrowseInstall.pm starting after line 528:

my $enabled = IO::File->new('/selinux/enforce') or return;
return unless grep /1/,<$enabled>;

Custom tracks with .gff suffix are always treated as GFF2

A custom track uploaded from a file will be loaded with Bio::DB::SeqFeature::Store::GFF2Loader if it has a .gff suffix, even if the file contains "##gff-version 3" as the first line.

Since it is not uncommon for a GFF3 files to have a ".gff" suffix, the loader should detect this.

The following patch accomplishes this for uncompressed .gff files; ideally, this could be accomplished somehow for compressed files as well:

diff --git a/lib/Bio/Graphics/Browser2/UserTracks.pm b/lib/Bio/Graphics/Browser2/UserTracks.pm
index b63915e..7883335 100644
--- a/lib/Bio/Graphics/Browser2/UserTracks.pm
+++ b/lib/Bio/Graphics/Browser2/UserTracks.pm
@@ -754,6 +754,8 @@ sub _guess_upload_type {
               :$filename =~ /\.(?:tar|tgz|tbz|tbz2|zip)(?:\.(gz|bz2))?$/i ? 'archive'
               :undef;

+    # .gff file may be GFF3 if first line contains the gff-version pragma
+    return ('gff3',\@lines,$eol) if $filename =~ /\.gff$/i && $lines[0] =~ /^\#\#gff-version\s+3/;
     return ($ftype,\@lines,$eol) if $ftype;

     # otherwise scan the thing until we find a pattern we know about

errors in pod

Hi,
in v2.42, I found several errors in POD structure, preventing the pod2man transformation, plus a few typo errors.
Follows a patch to fix those errors.
I am not a pod expert, fixes remove errors but you may check what is best appropriate.

Patch to correct POD-generated manual pages - Olivier Sallou - February 2011
--- a/bin/gtf2gff3.pl
+++ b/bin/gtf2gff3.pl
@@ -1320,7 +1320,7 @@

=head1 NAME

-gtf2gff3
+gtf2gff3 - Converts GTF formatted files to valid GFF3 files

=head1 VERSION

@@ -1496,7 +1496,7 @@
=item C<< FATAL: Invalid value passed to strand: strand. >>

This may indicate that your GTF file does not indicate the strand for
-features that require it. Consider using the DEFAULT_STRAND paramater
+features that require it. Consider using the DEFAULT_STRAND parameter
in the config file. It may also indicate a software bug. Please
contact the author.

--- a/bin/wiggle2gff3.pl
+++ b/bin/wiggle2gff3.pl
@@ -2,7 +2,7 @@

=head1 NAME

-wiggle2gff3.pl
+wiggle2gff3.pl - Converts UCSC WIG format files into gff3 files

=head1 SYNOPSIS

--- a/lib/Bio/DB/GFF/Aggregator/match_gap.pm
+++ b/lib/Bio/DB/GFF/Aggregator/match_gap.pm
@@ -34,7 +34,6 @@
should be sufficient for simple nucleotide to nucleotide
alignments.

-################################################################################

=cut

--- a/lib/Bio/DB/GFF/Aggregator/reftranscript.pm
+++ b/lib/Bio/DB/GFF/Aggregator/reftranscript.pm
@@ -1,6 +1,6 @@
=head1 NAME

-package Bio::DB::GFF::Aggregator::reftranscript -- Aggregates references transcripts
+Bio::DB::GFF::Aggregator::reftranscript -- Aggregates references transcripts

=head1 SYNOPSIS

--- a/lib/Bio/Graphics/Browser2/AuthorizedFeatureFile.pm
+++ b/lib/Bio/Graphics/Browser2/AuthorizedFeatureFile.pm
@@ -23,7 +23,6 @@

=head2 METHODS

-=over 4

=cut

--- a/lib/Bio/Graphics/Browser2/DataBase.pm
+++ b/lib/Bio/Graphics/Browser2/DataBase.pm
@@ -63,12 +63,16 @@
$CACHE->delete($key);
}

+=over
+
=item Bio::Graphics::Browser2::DataBase->clone_databases()

Call this after a fork in the child process to make sure that all open
databases have had a chance to clone themselves if they need
to. Otherwise you will get random database failures.

+=back
+
=cut

sub clone_databases {
--- a/lib/Bio/Graphics/Browser2/Plugin.pm
+++ b/lib/Bio/Graphics/Browser2/Plugin.pm
@@ -238,7 +238,7 @@

The purpose of this methods is to suppress the 'Configure...'
or 'Find...' title that is printed at the top of the page when the
-plugin is loaded. It will return false unless overriden by a plugin where
+plugin is loaded. It will return false unless overridden by a plugin where
this behaviour is desired.

=item $type = $self->type()
--- a/lib/Bio/Graphics/Browser2/Region.pm
+++ b/lib/Bio/Graphics/Browser2/Region.pm
@@ -3,6 +3,12 @@

provide method for fetching and manipulating the current

region or regions.

+=head1 NAME
+
+Bio::Graphics::Browser2::Region -- Provide method for fetching and manipulating regions
+
+=cut
+
use strict;
use warnings;
use Bio::Graphics::Browser2::Shellwords;
--- a/lib/Bio/Graphics/Browser2/Render.pm
+++ b/lib/Bio/Graphics/Browser2/Render.pm
@@ -3,6 +3,12 @@
use strict;
use warnings;

+=head1 NAME
+
+Bio::Graphics::Browser2::Render -- Provide methods to render regions
+
+=cut
+
use JSON;
use Digest::MD5 'md5_hex';
use CGI qw(:standard param request_method header url iframe img span div br center url_param);
--- a/lib/Bio/Graphics/Browser2/RenderPanels.pm
+++ b/lib/Bio/Graphics/Browser2/RenderPanels.pm
@@ -2,6 +2,13 @@
use strict;
use warnings;

+=head1 NAME
+
+Bio::Graphics::Browser2::RenderPanels-- Provide methods to render a panel
+
+=cut
+
+
use GD 'gdTransparent','gdStyled';

use Bio::Graphics;
--- a/lib/Legacy/Graphics/Browser.pm
+++ b/lib/Legacy/Graphics/Browser.pm
@@ -4,6 +4,12 @@

This is an old version of Bio::Graphics::Browser retained for gbrowse_syn

It is on the path to deprecation

+=head1 NAME
+
+Legacy::Graphics::Browser-- Old version, deprecated
+
+=cut
+
=head1 METHODS

The remainder of this document describes the methods available to the
--- a/lib/Bio/Graphics/Browser2/DataSource.pm
+++ b/lib/Bio/Graphics/Browser2/DataSource.pm
@@ -31,6 +31,10 @@
}
}

+=head1 NAME
+
+Bio::Graphics::Browser2::DataSource -- DataSource to access data
+
=head1 SYNOPSIS

=head1 DESCRIPTION
@@ -149,6 +153,8 @@
delete $CONFIG_CACHE{$self->config_file};
}

+=back
=head2 userdata()

$path = $source->userdata(@path_components)
@@ -852,6 +858,8 @@
croak "Do not call make_link() on the DataSource. Call it on the Render object";
}

+=over
+
=item $db = $dsn->databases

Return all named databases from [name:database] tracks.
@@ -1086,6 +1094,8 @@
%DB_SETTINGS = ();
}

+=back
+
=head2 generate_image

($url,$path) = generate_image($gd);

Customizing order of data sources in v2.40+

The data sources are displayed in a alphabetical order in the data source drop down box. The only way to customize the ordering is by adding a prefix to the description in GBrowse.conf that changes the order, i.e. worm, human will become 01.worm, 02.human. However, these prefixes also show up in the data source window. It would be great if there was a optional "order" tag in the stanza for specifying the order of data sources. Thanks

-Surya

Wrong identifier in gbrowse_details fasta

On the gbrowse_details page for an alignment, the id of the target is used in the fasta line, implying (well, actually stating) that the sequence is of the query, whereas that sequence is always of the reference. I think this happens with all alignments, but here is an example using BAM data:

http://www.rosaceae.org/gb/gbrowse_details/prunus_persica?ref=scaffold_2;start=4858736;end=4858808;name=HWI-EAS121%3A5%3A37%3A1256%3A1338%230;class=match;feature_id=HWI-EAS121%3A5%3A37%3A1256%3A1338%230%3B1%3B4858736%3B4858808%3B1;db_id=okinawa%3Adatabase

(note the T in the 6th position is from the reference.)

In addition to fixing this, it might be nice to add the query sequence fasta to the gbrowse_details page when it's available.

Opening two or more tabs in quick succession corrupts location of viewport

FlyBase has had a dozen reports from users who are having trouble with following GBrowse links that point to specific location points. For example,

http://flybase.org/cgi-bin/gbrowse2/dmel/?ref=2R;start=14479585;stop=14483603;
http://flybase.org/cgi-bin/gbrowse2/dmel/?ref=2L;start=15260611;stop=15264625;

After opening links such as these in their own tab and in quick succession
so that Tab 1 is still loading when Tab 2 initiates a request, the
view shown in Tab 1 is corrupted. Tab 1 shows the correct URL in the
browser address bar, but the region shown corresponds to the region
for Tab 2. The tab title and the GBrowse region title also display
the incorrect region.

e.g.
' D. melanogaster: 4.015 kbp from 2L:15,260,611..15,264,625

instead of

' D. melanogaster: 4.019 kbp from 2R:14,479,585..14,483,603

Reloading Tab 1 corrects the corrupted view. If you click each link
after waiting for the tab to load it does not exhibit this behavior.

I've replicated this on the WormBase GBrowse 2.x server using the
links below, so I'm fairly certain that this is a general GBrowse 2 bug and not specific to the
FlyBase installation.

http://www.wormbase.org/tools/genome/gbrowse/c_elegans_PRJNA13758/?ref=III&start=9050076..9061680

http://www.wormbase.org/tools/genome/gbrowse/c_elegans_PRJNA13758/?ref=III&start=8060076..8071680

File::Temp not supporting :seekable?

A user reported a test failure when installing GBrowse 2.33 for the compile test of wiggle2gff3.pl indicating that File::Temp didn't support :seekable. Perhaps it was an old version? We can put a minimum version required if we can sort out when this option was available.

cds glyph producing incorrect translations

In several GBrowse instances around the net (WormBase, arabidopsis, paramecium for example), the cds glyph is producing incorrect translations for second and subsequent exons in the display. That is, for whatever the first exon in order of translation that appears in the details panel (it doesn't have to be the first exon in the transcript), the translation is correct, but after that exon, the translation is incorrect. See these examples from WormBase:

screen shot 2015-03-12 at 12 58 17 pm
screen shot 2015-03-12 at 12 55 57 pm

Note that the incorrect translations that appear seem to come from other portions of the same transcript translated in an incorrect frame. (I determined this be transcribing the AA sequence and then doing a tblastn against the elegans genome.) So it seems that something is going wrong with coordinate mapping. Also note that in the second image, the translations in the second exons are exactly the same even though they are splicing to different places in the genome.

I tried to test the underlying BioPerl functionality by writing a "in silico" splicing and translation script, where the script pulled mRNA features from a SeqFeature::Store database and put the CDS pieces together and translated it, but that worked fine.

Live examples of where this is happening elsewhere:

Arabidopsis:
http://paramecium.cgm.cnrs-gif.fr/gb2/gbrowse/ptetraurelia_mac/?start=11267;stop=11367;ref=scaffold_1;width=750;version=100;flip=0;grid=1;id=b9f0de601f367c68c264ebe77c96bae4;l=Translation%1ECDS%1EGenes

Paramecium:
http://tairvm17.tacc.utexas.edu/cgi-bin/gb2/gbrowse/arabidopsis/?start=1507795;stop=1507994;ref=Chr1;width=800;version=100;flip=0;grid=1;id=0a5edc2236a0c2faa054303a7a2510af;l=FrameTranslation%1ECDS%1EProteinCoding

Invalid utf8 character string: ' ' bp_seqfeature_load.pl

I am trying to load gff file to mysql 8 and keep getting this error. I changed character class from utf8 to latin1 and so on nothing helped.

bp_seqfeature_load.pl -u root  -p xxx  -c -f -d  hg38_cis_eQTL hg19_all_eqtl_segment_Myers.gff
loading hg19_all_eqtl_segment_Myers.gff...
Building object tree... 0.04s5s                                                                                                          
Loading bulk data into database...DBD::mysql::db do failed: Invalid utf8 character string: ''

Any idea?

Suggestions to simplify the installation process

  1. It would be useful if the installation process could be run in a non-interactive mode, reading either a file or environment variables for install paths. This would greatly facilitate scripted installs - just check in a configuration file into your app's version control, source it, then install GBrowse (for example). Perhaps it can already do this via the .def file it writes?
  2. I think the install should be changed to NOT assume root privileges are available, and to encourage installation into unique non-privileged paths for each version. This would alleviate many problems that people have with library conflicts.

Cannot get overview image from gbrowse_img

I'm trying to generate an overview-style image with gbrowse_img, but I cannot seem to work as I expected.

The documentation says "If you use multiple name options, then this script will generate an overview image showing the position of each landmark." However, when I construct a URL like this:

[gbrowse_img url]?name=SYMBOL1&name=SYMBOL2

The resulting image is just the region for SYMBOL1.

The documentation also says "Setting overview=1 will force the overview to be shown in all cases". So, I also tried:

[gbrowse_img url]?name=SYMBOL1&overview=1

Again, it just shows the detail panel for SYMBOL1.

h_feat doesn't highlight features in gbrowse_img when feature name has uppercase

With gbrowse_img from GBrowse 2.52, the h_feat URL parameter doesn't highlight the specified feature when the name has uppercase characters. This can be demonstrated using the "yeast" data source, where the following URL highlights the "YAR003W" feature red:

http://localhost/gb2/gbrowse_img/yeast/?name=chrI:151500..171499;h_feat=yar003w@red

but the following doesn't:
http://localhost/gb2/gbrowse_img/yeast/?name=chrI:151500..171499;h_feat=YAR003W@red

However, the uppercase version works in plain gbrowse:

http://localhost/gb2/gbrowse/yeast/?name=chrI:151500..171499;h_feat=YAR003W@red

failing to find DNA sequence with memory adaptor

I want to look at this next week, but don't want to forget, so I'm making an issue of it. In the security-bug-fixes branch, the yeast chromosome data can't be found even though it's where it's supposed to be. Perhaps a problem with DB_File?

GBrowse display errors

I have found many display errors like this. if the reads can alignment match, it will be orange or bisque bgcolor. But when I zoom in to 200bp enough observed base sequence, I found many base sequence display errors, it was a error arrangement. But it was the reverse compliment sequence of the real sequence.
the detail dispaly is like this:
http://7xubqr.com1.z0.glb.clouddn.com/gbrwose_dispaly_errors.png

my GBrowse is here: http://211.69.128.148/cgi-bin/gb2/gbrowse/soybean/
an example location: NC_016088.2:14,195,894..14,196,026

problems in GBrowse installation

Dear all,

We are installing GBrowse 2.54 on our server. The server configuration is as follows:
Linux node2 2.6.18-274.el5 #1 SMP Fri Jul 22 04:43:29 EDT 2011 x86_64 x86_64 x86_64 GNU/Linux

We have followed the instructions in the web link: http://gmod.org/wiki/GBrowse_2.0_Prerequisites and installed all the pre-requisites.

When we used the commond:
sudo perl -MCPAN -e 'install Bio::Graphics::Browser2'
it gives the following test error message, which complains that $png is not initialized before use? Could someone have the same issue and know how to fix it? Thanks a lot.

contents.
LDS/GBrowse-2.54.tar.gz
./Build -- OK
Running Build test
NOTE: Run ./Build reconfig to change existing configuration.
/etc/httpd/conf.d/z_gbrowse2.conf is already installed. Please run ./Build apache_conf to see this file's recommended contents.
t/00.compile.t ............ ok
t/01.yeast.t .............. ok
t/02.rearchitecture.t ..... ok
t/03.render.t ............. 121/150 Use of uninitialized value $png in substitution (s///) at t/03.render.t line 442.
Use of uninitialized value $png in -e at t/03.render.t line 443.
Use of uninitialized value $png in substitution (s///) at t/03.render.t line 453.
Use of uninitialized value $png in -e at t/03.render.t line 454.
t/03.render.t ............. Failed 4/150 subtests
t/04.remoteserver.t ....... Sometimes this test gets 'stuck'. If this happens, kill the test and Build test again.
t/04.remoteserver.t ....... Failed 9/47 subtests
t/05.deferredrendering.t .. 4/19 Use of uninitialized value in -e at t/05.deferredrendering.t line 147, <> line 45.
t/05.deferredrendering.t .. Failed 2/19 subtests
t/06.featuresearch.t ...... ok
t/07.karyotype.t .......... ok
t/08.calign.t ............. ok

Test Summary Report

t/03.render.t (Wstat: 0 Tests: 150 Failed: 4)
Failed tests: 122-123, 125-126
t/04.remoteserver.t (Wstat: 0 Tests: 39 Failed: 1)
Failed test: 39
Parse errors: Bad plan. You planned 47 tests but ran 39.
t/05.deferredrendering.t (Wstat: 0 Tests: 19 Failed: 2)
Failed tests: 16-17
Files=9, Tests=440, 23 wallclock secs ( 0.10 usr 0.03 sys + 16.20 cusr 4.97 csys = 21.30 CPU)
Result: FAIL
Failed 3/9 test programs. 7/440 subtests failed.
LDS/GBrowse-2.54.tar.gz
./Build test -- NOT OK
//hint// to see the cpan-testers results for installing this module, try:
reports LDS/GBrowse-2.54.tar.gz
Running Build install
make test had returned bad status, won't install without force

GBrowse2: h_feat doesn't highlight features in gbrowse_img when feature name has a dash

We have a morpholino track in ZFIN. Morpholinos are named with a dash in the name like MO1-pax2a. I can fetch an image from gbrowse2 for such a feature, but I can't get the h_feat highlighting to produce any highlight when there is a dash in the feature name.

Expectation: h_feat would highlight features even if they have a dash in the feature name.

gtf2gff3.pl doesn't work with recent versions of Ensembl

Hi,

I've found that some transcripts don't get converted correctly when using GTF files downloaded from Ensembl since they started attaching the correct bio-type to the genes/transcripts.

I have a set of files I can email to an appropriate account, details of them are below.

In the examples e58 versions result in correct protein coding records that display in GBrowse fine. Under e71+ BRAF (plus many others) doesn't display under GBrowse if you choose a source of protein_coding . I think this is because the same ENSG can link to protein_coding and, in this example, nonsense_mediated_decay and retained_intron. In this case the gene record is tagged as retained_intron.

I think the solution is to have a gene record for each but I'm not too sure if this is possible as this will result in 3 gene entries for the same ENSG (but each would be for a different source and potentially a different length).

Hope I've provided sufficient info to get this looked at quickly as it's preventing us from upgrading our Ensembl version in the browser.

Kind regards,

Keiran Raine
Principal Bioinformatician
Cancer Genome Project
Wellcome Trust Sanger Institute

BRAF_e58.gtf/gff3 are the GTF records and corresponding gff3 generated using the default cfg found on sequenceontology.org.

BRAF_e71.gtf/gff3 as above.

grep_for_ENST00000496384.txt is the result of grepping the two gff3 files for what the filename describes... this suggest this bit is fine

grep_for_ID=ENSG00000157764.txt is the result of grepping the two gff3 files for what the filename describes...in e71 the gene has been marked as a retained intron.

CGI gbrowse_img does not create sessionIds

I have problems with "gbrowse_img" URLs under my local installation using

  • centos 6.5
  • building perl v.5.18.1
  • installed latest cpan, bioperl and gbrowse using cpan:
  • as of 14/10/14: CPAN 2.05, BioPerl-1.6.923., GBrowse-2.55

If I clear the browsers cache (and apparently the gbrowse cookie which stores the session id called "gbrowse_sess") and directly go to a ../gbrowse_img/.. "add" URL
(e.g.:

/gb2/gbrowse_img/yeast/?name=chrI%3A80%2C000..120%2C000;add=chrI+oli+pelz+100100..100200

)
I get a sessionid error message:

[Fri Oct 17 10:05:54 2014] [error] [client 192.108.26.43] Sessionid unavailable at /usr/local/lib64/perl5/Bio/Graphics/Browser2/UserDB.pm line 502.

If I clear the browse cache, then go to a ../gbrowse/.. URL WITHOUT THE ADD URL (e.g. with firebug cookie inspector open: (e.g.:

/gb2/gbrowse_img/yeast/?name=chrI%3A80%2C000..120%2C000

) I see that there it creates the missing "gbrowse_sess" cookie.
If I than go to a ../gbrowse_img/.. URL with ADD parameter it works because the cookie has been set before.
So the problem is that there is code in the gbrowse which creates a session id cookie only when browsing to the standard gbrowse pages and not in gbrowse_img with "add" parameter.

Since our website makes requests to our gbrowse server through ../gbrowse_img/.. URLS only using the ADD parameter
my suggested solution would be to create the missing session id and cookie on the ../gbrowse_img/.. requests if it is not available (e.g. from clearing browser), etc.

Try on your own (tested in Firefox 33):
clear browser cache OR "gbrowse_sess" cookie, than:

http://hostname/gb2/gbrowse_img/yeast/?name=chrI%3A80%2C000..120%2C000;add=chrI+oli+pelz+100100..100200

not working!
than:

http://hostname/gb2/gbrowse/yeast/ (works!)

than again url from point one:

http://hostname/gb2/gbrowse_img/yeast/?name=chrI%3A80%2C000..120%2C000;add=chrI+oli+pelz+100100..100200

now it works!

Can someone confirm this is a bug or fix this?

I tried calling

gbrowse_new_sessionid.pl 

before calling UserDB than I get

[..]
[Fri Oct 24 11:19:08 2014] [error] [client 192.108.26.43] Couldn't make /opt/gbrowse2/lib/userdata/yeast/a2eeb61970fea9b177e3fb7ef98501e0/My_Track/SOURCES directory: No such file or directory at /usr/local/lib64/perl5/Bio/Graphics/Browser2/DataLoader.pm line 270.

So I need to create the whole bunch of session initalization such as creating a session directory.

Best,
Oliver

gbrowse accepts a "dbid" URL parameter, but gbrowse_details accepts "db_id"

gbrowse accepts a "dbid" URL parameter; however, gbrowse_details requires "db_id". To avoid confusion, it would be beneficial for gbrowse_details to also accept "dbid", while also accepting "db_id" for backward compatibility; e.g.:

--- cgi-bin/gbrowse_details.orig    2012-10-19 20:09:03.000000000 +0000
+++ cgi-bin/gbrowse_details 2013-02-08 21:35:56.275912837 +0000
@@ -131,7 +131,7 @@
     my $start = param('start');
     my $end   = param('end');
     my $f_id  = param('feature_id');
-    my $db_id = param('db_id');
+    my $db_id = param('dbid') || param('db_id');
     my $rmt   = param('remote');

     $self->state->{dbid} = $db_id if $db_id; # to search correct database

only first occurrence of a match group parameter is replaced

GBrowse allows regular expressions in data source name configurations as described in Using Pipes in the GBrowse.conf Data Source Name

Unfortunately, only the first occurrence of a match group parameter is replaced in the path variable. Consider the following example (slightly modified from the wiki):

[=~modENCODE_preview_v(\d+)]
description = modENCODE preview database
path        = /usr/local/modencode/bin/preview.pl $1 $1 |

Even this case does not make much sense, it shows the problem quit well. If you then request the url http: //your.host/gb2/gbrowse/modENCODE_preview_v42, the path will be created as following:

/usr/local/modencode/bin/preview.pl 42 $1

The second parameter is not replaced by its value.

cgi-bin/das needs Date::Parse-->Build.PL req

This is partially just to try out the git issues, but also list a real issue: someone reported today that a GBrowse 2.33 install failed because the compile test for cgi-bin/das failed, because Date::Parse wasn't present. I've never seen this before, so presumably it needs to be added to the Build.PL requires list, though I'm wondering if it's in a prereqs required list.

SVG rendering doesn't work in 2.53

SVG rendering fails with "the rendering process crashed" - cannot seem to track down how this crashing beyond that. Happens with both render farm and local rendering.

Using 2.53 or master or development branches and Bio-Graphics 2.33.
Happens with truetype on or off.

gbrowse_clean.pl doesn't always remove old sessions

It seems to me that the gbrowse_clean script is not quite as smart as it ought to be. That is, with regards to session variables, the GBrowse.conf file says in the comments that it will pick defaults for you, and while it does seem to do that correctly when the CGI is running (that is, GBrowse correctly stores the session database is a reasonable place), the gbrowse_clean script doesn't seem to know how to do this. A workaround is to uncomment the two session variables that appear first in GBrowse.conf. That is, uncomment these two lines:

session driver = driver:file;serializer:default

session args = Directory /var/lib/gbrowse2/sessions

and verify of course that the directory listed is where the session database is actually stored.

"enable" parameter doesn't accept multiple tracks

The "GBrowse Configuration/URL schema" documentation (http://gmod.org/wiki/GBrowse_Configuration/URL_schema) states that for the "enable" and "disable"parameters, multiple tracks can be specified by specifying the track names separated by "+" or "-" characters; however, this does not appear to work; e.g., with the default "yeast" data source:

http://localhost/gb2/gbrowse/yeast/?enable=ncRNA-LTRs

Using multiple "enable" or "disable" parameters does appear to work; however:

http://localhost/gb2/gbrowse/yeast/?enable=LTRs;enable=ncRNA

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.