Re: [galaxy-dev] Question about installing NCBI BLAST+ onto Galaxy

2011-06-30 Thread Peter Cock
On Thu, Jun 30, 2011 at 1:26 AM, George Yianni Michopoulos wrote:
 Hey Peter,

 Thanks so much for your help, your comments helped me realize what
 was wrong. The issue was that I wasn't including the name of the
 database within the path, just the folder it was in!

 Best,
 George Michopoulos


Easily done, I'm glad its working now.

Peter
___
Please keep all replies on the list by using reply all
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

  http://lists.bx.psu.edu/


[galaxy-dev] Using the tool after log in

2011-06-30 Thread shashi shekhar
Hi All,

  I have local instance of galaxy . I want to make changes in such a way
that  after log in, user should able to submit any job or run any tool. Log
in should be compulsory to run any tool including upload tool. Whenever
someone  clicks on tool without log in ,it should display message like You
must be logged in http://192.168.62.51:8089/user/login?webapp=galaxy to
use Galaxy .

Reagrds
shashi shekhar
___
Please keep all replies on the list by using reply all
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

  http://lists.bx.psu.edu/

Re: [galaxy-dev] public datasets/histories with external auth

2011-06-30 Thread Leandro Hermida
Hi Nate and Shantanu,

Thanks so much for the clear guidance, this works and sorry I didn't
read the Apache docs properly

best,
Leandro

On Thu, Jun 30, 2011 at 6:14 AM, Shantanu Pavgi pa...@uab.edu wrote:

 On Jun 29, 2011, at 12:21 PM, Nate Coraor wrote:

 Leandro Hermida wrote:

 Hi Shantanu,

 In your Apache configuration exactly how did you set up an anonymous

 REMOTE_USER just for specific locations like the /datasets/ path?  I'm just

 looking at the Apache docs and the RequestHeader directive has a context of

 the entire VirtualHost and cannot be put into a Location container so I'm

 not sure how to do it.

 Hi Leandro,

 See the optional 'env=' argument and docs on the same for ways to make
 RequestHeader conditional:

    http://httpd.apache.org/docs/current/mod/mod_headers.html#requestheader

 So, depending on the path accessed, you should be able to have
 mod_rewrite set an environment variable specifying which REMOTE_USER
 (real username or fake anonymouse user) should be set.

 You could also just set it as the anonymous user to start with and then
 use 'RequestHeader set' to overwrite it with the real username in the
 case that a real username is available.

 This is all just from glancing at the docs, though, I have not tried any
 of it out, and this sort of Apache trickery is always difficult to get
 right.

 --nate



 Leandro,
 The RequestHeader has a context of 'directory' as well, which includes
 Directory, Location, Files, and Proxy containers [1]. So you should
 be able to use it in Location directive.
 Following is a configuration snippet related to what Nate described in his
 earlier response. We are setting REMOTE_USER variable to anonymous when it's
 not set/empty.
         Location ~ /(datasets|history)/
                 AuthType shibboleth
                 ShibRequireSession off
                 Require shibboleth
                 RewriteCond %{LA-U:REMOTE_USER} =
                 RequestHeader set REMOTE_USER anonymous
         /Location
 Hope this helps.

 1. http://httpd.apache.org/docs/current/mod/directive-dict.html#Context
 --
 Shantanu.


___
Please keep all replies on the list by using reply all
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

  http://lists.bx.psu.edu/


Re: [galaxy-dev] Refreshing/Reloading Files

2011-06-30 Thread Hans-Rudolf Hotz

Hi Paul

Please keep all replies on the list by using reply all


A simple solution, which we use quite a lot, is the following:


we use the dynamic_options attribute, eg:



 inputs
param name=foo type=select label=what
   help=Use tickboxes to select 
   display=radio
   dynamic_options=ds_fooOptions()/
  /inputs
  outputs
data format=fasta name=output label=more foo /

  /outputs
  code file=extra_code_for_foo_list.py /
   help
   /help

 /tool


and then we have a little python script (extra_code_for_foo_list.py) 
with the ds_fooOptions function, which can read your file (ie your 
list of databases), eg



def ds_fooOptions():
List available foos as tuples of (displayName,value)
foos = whatever python code is required to generate the tuples
return foos



I hope this helps, Hans



On 06/29/2011 08:09 PM, Admins de Galaxy wrote:

Hi Hans,

yes that's it. We are offering the list of databases as options to select in
the GUI,
  before executing the script which compares the selected database with the
sequence.

Paul

2011/6/29 Hans-Rudolf Hotzh...@fmi.ch


Hi Paul

You probably need to be a bit more specific...at what stage is this '.txt
file' read (or rather should be read)? - are you offering the (growing) list
of databases as options to select in the GUI?

Hans



On 06/29/2011 10:20 AM, Admins de Galaxy wrote:


Hello everyone,
we have a problem with one of our selfwritten tools.
We have a tool, that compares sequence with a database.
The List of the available databases is  loaded from a .txt file.

One of our other tools, manages that a new database is
added to the .txt file. But Galaxy doesn't recognize the change.

It would be nice if someone could give us an advice.

Best regards

Paul K. Deuster
@ Technische Hochschule Mittelhessen




__**_
Please keep all replies on the list by using reply all
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

   http://lists.bx.psu.edu/






___
Please keep all replies on the list by using reply all
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

 http://lists.bx.psu.edu/


Re: [galaxy-dev] How to set java heap size in Galaxy?

2011-06-30 Thread Roman Valls
Hello Liu,

I'm keeping our mail thread in the mailing list, as advised by its
guidelines on the footer of each mail.

Now, galaxy runs on top of paster, a minimal python webserver, but it
has nothing to do with Java, looks like your out of memory error comes
from your app then.

Have you tried the suggested settings from Marco ? Namely:

java -Xmx512m

I bet there's an environment variable or config setting for Tomcat too
if you're unsure about where your jar's are called.

Hope that helps !
Roman

On 2011-06-29 12:02, liu bo wrote:
 Thank you, Roman.
 Our app invoke a workflow server.
 I guess Galaxy has a self container like Tomcat, that is why we can
 access it via 127.0.0.1 from browser.
 I know in Tomcat, there is a file catalina.sh for setting JAVA_OPTS.
 Is there a similiar file in Galaxy to set JAVA_OPTS?
 Thank you very much.
 
 Regards,
 Bo
 
 On Tue, Jun 28, 2011 at 4:18 AM, Roman Valls brainst...@nopcode.org wrote:
 Hi Liu,

 Does your app execute Picard/GATK at some point ? In that case those
 would be the ones triggering your Java OOM error, in that case Bo's
 suggestion is the way to go. That's my best guess since Galaxy itself
 doesn't use java either (only python AFAIK).

 Regards,
 Roman

 On 2011-06-27 18:44, liu bo wrote:
 Hi Marco,

 Thanks for your kind reply.
 My app is a python file, and there's not an explicit command to run java.
 I just wonder whether there is a file to configure Galaxy, in order to
 set the Java heap size.
 Thank you.

 Best wishes,
 Bo

 On Mon, Jun 27, 2011 at 7:51 PM, Marco Moretto marco.more...@gmail.com 
 wrote:
 Hi Liu,
 if you set up your application in the XML to run with Java, like java -jar
 yourapplication.jar, it is sufficient to add the -Xmx parameter. Something
 like
 java -Xmx512m -jar yourapplication.jar
 Greets
 ---
 Marco


 On 27 June 2011 12:15, liu bo liub...@gmail.com wrote:

 Dear all,

 I have added an application to Galaxy's Tools.
 Now there occurs an error java.lang.OutOfMemoryError: Java heap space.
 Do you know how to set java heap size in Galaxy?
 Thank you very much.

 Best regards,
 Bo
 ___
 Please keep all replies on the list by using reply all
 in your mail client.  To manage your subscriptions to this
 and other Galaxy lists, please use the interface at:

  http://lists.bx.psu.edu/



 ___
 Please keep all replies on the list by using reply all
 in your mail client.  To manage your subscriptions to this
 and other Galaxy lists, please use the interface at:

   http://lists.bx.psu.edu/
 ___
 Please keep all replies on the list by using reply all
 in your mail client.  To manage your subscriptions to this
 and other Galaxy lists, please use the interface at:

  http://lists.bx.psu.edu/

___
Please keep all replies on the list by using reply all
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

  http://lists.bx.psu.edu/


Re: [galaxy-dev] public datasets/histories with external auth

2011-06-30 Thread Nate Coraor
Shantanu Pavgi wrote:
 
 On Jun 28, 2011, at 2:15 PM, Nate Coraor wrote:
 
 Shantanu Pavgi wrote:
 
 I did a test by excluding following URLs from Apache-Shibboleth external 
 authentication and it seems to be working:
 -  /datasets/
 -  /u/username/h/history-name
 - /static/  (css and javascript)
 
 Do I need to exclude any other URLs so that published histories and datasets 
 can be accessed from remote sites without authentication? Also, will it offer 
 read-only access to the galaxy interface? Does it expose any job submission, 
 file-uploads or any other modification/execution operations using web 
 interface?
 
 Hi Shantanu,
 
 These should be sufficient and would not give access to anything job or
 tool related.  However, since /datasets/ is exposed, this means that any
 dataset with no roles associated with the access permission (i.e. a
 public dataset) would be readable by anyone.  Dataset IDs are encoded
 so as not to be easily guessable, but relying on this is essentially
 security by obscurity.
 
 
 Thanks for the reply Nate. We are able to view datasets over to UCSC site if 
 we directly append /dataset URL as a query parameter to the main UCSC URL. 
 But we discovered one more use case where datasets contained in a particular 
 history have a different URL format for UCSC link.
 
 For example, you should be able to access following URL without 
 authentication:
 https://galaxy.uabgrid.uab.edu/history/list_shared?sort=-update_timeoperation=Viewid=24d84bcf64116fe7
 
 Now if you click on dataset-1 and then click on 'display at UCSC main' then 
 the resulting URL is as follows:
 
 https://galaxy.uabgrid.uab.edu/datasets/3423/display_at/ucsc_main?redirect_url=http%3A%2F%2Fgenome.ucsc.edu%2Fcgi-bin%2FhgTracks%3Fdb%3Dmm9%26position%3Dchr1%3A20048750-20608024%26hgt.customText%3D%25sdisplay_url=http%3A%2F%2Fgalaxy.uabgrid.uab.edu%2Froot%2Fdisplay_as%3Fid%3D3423%26display_app%3Ducsc%26authz_method%3Ddisplay_at
 
 This link fails without authentication as we have exposed only /datasets URL 
 pattern. I can manually insert /dataset URL for UCSC 'display_url', however 
 it's not intuitive for end users. I am bit concerned about opening up 
 /root/display_as URL pattern without knowing it's implications. I guess it 
 doesn't expose any jobs or tools related access, but not sure about it. Any 
 comments or suggestions?

display_as is covered under Display at UCSC:

https://bitbucket.org/galaxy/galaxy-central/wiki/Config/ApacheProxy

You can expose it just to UCSC or globally.  Since you're already
exposing /datasets/ globally, doing the same with /root/display_as is
probably not much different.

--nate

 
 
 
 Also, can we prevent particular galaxy-user from carrying out certain 
 actions, e.g. running jobs, file uploads etc.? Since galaxy will create 
 'anonymous' user account based on the REMOTE_USER variable set for 
 unauthenticated requests, I am wondering if such locked-down mode will be 
 possible for a particular galaxy-user.
 
 This cannot be done from within Galaxy, but it shouldn't be necessary
 since these actions are not exposed to the anonymous user.
 
 I think the user is not anonymous here as we have already written REMOTE_USER 
 to 'anonymous' now. The galaxy receives this user as user-login/email as 
 'anonymous@mail.domainmailto:'anonymous@mail.domain'.
 
 Now we are opening up certain URL patterns to be accessed as 
 'anonymous@mail.domainmailto:'anonymous@mail.domain' user. These URL 
 patterns include following formats as mentioned - /datasets, /history, 
 /u/username/hhistory-name, and /static. In addition we may need to expose 
 /root/display_as URL pattern as well. Rest of the site remains protected 
 using real authentication.
 So as long as above URL patterns don't expose any job submission, file 
 uploads or other galaxy tools operations then we should be OK with it. 
 Thoughts?
 
 --
 Thanks,
 Shantanu.
 
___
Please keep all replies on the list by using reply all
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

  http://lists.bx.psu.edu/


[galaxy-dev] fasta integration in galaxy

2011-06-30 Thread B M
Dear All,
I have just finished integrating my blast data to my galaxy local instance,
and now I would like to add my fasta files.

Does anybody know how can I do that ? How should it look in the UI ?

Thanks,
best regards
Ben
___
Please keep all replies on the list by using reply all
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

  http://lists.bx.psu.edu/

[galaxy-dev] output data filter

2011-06-30 Thread Bram Slabbinck

Hi

I'm having an internal data source that is connected to Galaxy (version: 
second last distribution) through the data connection protocol. I have 
some parameters returned from my data source website which are parsed 
with a parameter request translation. Everything works fine except for 
establishing variable static output data 
(https://bitbucket.org/galaxy/galaxy-central/wiki/ToolsMultipleOutput). 
I want to label my output data set according to a parameter value that 
is returned from my data source website. How can I use this parameter as 
a filter because the following statement does not work:


request_param_translation
request_param galaxy_name=dummy remote_name=output missing=test /

outputs
data name=output label=labelX
filter$dummy  == valueX /filter
/data
data name=output label=labelY
filter$dummy != valueX /filter
/data
/outputs

I have also tried without the dollar character (dummy = valueX) as 
stated in the link above but this gives a TypeError in the log. Using 
$dummy.value==valueX does not work either.
If I print the Galaxy variables by Cheetah code ( #silent 
sys.stderr.write( searchList = '%s'\n % (str($searchList))) ), the 
parameter dummy is created. So, how can I use this type of parameter as 
a filter?


thx for any suggestion
regards
Bram

___
Please keep all replies on the list by using reply all
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

 http://lists.bx.psu.edu/


Re: [galaxy-dev] AttributeError: 'list' object has no attribute 'missing_meta' when doing multiple=true input datasets

2011-06-30 Thread Kip Bodi
Hi all,

I'm having the same problem. I have a script that tries to take several
history data sets as a single input:

command interpreter=perlaggregate.pl --out $outfile
$list_of_items_in_history/command

  inputs
param format=txt name=fitness_tables type=data multiple=true
label=Fitness score table, per site/
  /inputs

  outputs
data format=tabular name=outfile /
  /outputs

If I select only one history item it works, but if I press 'ctrl' to select
multiple items, it fails:

File
'/storage/apps/galaxy_dist/eggs/WebError-0.8a-py2.6.egg/weberror/evalexception/middleware.py',
line 364 in respond
  app_iter = self.application(environ, detect_start_response)
File '/usr/lib/python2.6/site-packages/paste/debug/prints.py', line 106 in
__call__
  environ, self.app)
File '/usr/lib/python2.6/site-packages/paste/wsgilib.py', line 543 in
intercept_output
  app_iter = application(environ, replacement_start_response)
File '/usr/lib/python2.6/site-packages/paste/recursive.py', line 80 in
__call__
  return self.application(environ, start_response)
File '/usr/lib/python2.6/site-packages/paste/httpexceptions.py', line 633 in
__call__
  return self.application(environ, start_response)
File '/storage/apps/galaxy_dist/lib/galaxy/web/framework/base.py', line 145
in __call__
  body = method( trans, **kwargs )
File '/storage/apps/galaxy_dist/lib/galaxy/web/controllers/tool_runner.py',
line 68 in index
  template, vars = tool.handle_input( trans, params.__dict__ )
File '/storage/apps/galaxy_dist/lib/galaxy/tools/__init__.py', line 979 in
handle_input
  _, out_data = self.execute( trans, incoming=params, history=history )
File '/storage/apps/galaxy_dist/lib/galaxy/tools/__init__.py', line 1271 in
execute
  return self.tool_action.execute( self, trans, incoming=incoming,
set_output_hid=set_output_hid, history=history, **kwargs )
File '/storage/apps/galaxy_dist/lib/galaxy/tools/actions/__init__.py', line
360 in execute
  for name, value in tool.params_to_strings( incoming, trans.app
).iteritems():
File '/storage/apps/galaxy_dist/lib/galaxy/tools/__init__.py', line 1274 in
params_to_strings
  return params_to_strings( self.inputs, params, app )
File '/storage/apps/galaxy_dist/lib/galaxy/tools/parameters/__init__.py',
line 79 in params_to_strings
  value = params[ key ].value_to_basic( value, app )
File '/storage/apps/galaxy_dist/lib/galaxy/tools/parameters/basic.py', line
110 in value_to_basic
  return self.to_string( value, app )
File '/storage/apps/galaxy_dist/lib/galaxy/tools/parameters/basic.py', line
1457 in to_string
  return value.id
AttributeError: 'list' object has no attribute 'id'

Is using multiple history items as a single input not currently supported,
or is there something else I'm doing wrong?

Cheers,

Kip

On Thu, Jun 9, 2011 at 7:05 AM, Leandro Hermida
soft...@leandrohermida.comwrote:

 Hi again,

 Sorry to ping again about this, just very interested in knowing if
 this is a missing feature in Galaxy or if I had configured something
 wrong.

 Is it possible in Galaxy to have a tool with a multiple=true input
 dataset parameter?  It doesn't seem so?

 best,
 Leandro


 On Tue, May 24, 2011 at 1:31 PM, Leandro Hermida
 soft...@leandrohermida.com wrote:
  Hi Nate,
 
  Thanks for the ping, have fun at the conference!
  On Tue, May 24, 2011 at 11:22 AM, Nate Coraor n...@bx.psu.edu wrote:
 
  Hi Leandro,
 
  The Galaxy Team has recently been preparing for and traveling in advance
  of the Galaxy Community Conference, which begins today.  Unfortunately I
  don't have an answer for you, but when we're all back at work next week,
  someone should be able to respond.
 
  Thanks,
  --nate
 
  Leandro Hermida wrote:
   Hi again,
  
   Very sorry to ask again, just gotten no repsonse, but is this a Galaxy
   bug
   or does anyone have a functioning tool that takes multiple datasets as
   an
   input parameter??? i.e.
  
   param type=data multiple=true ...  /
  
   regards,
   Leandro
  
   On Thu, May 19, 2011 at 7:15 PM, Leandro Hermida
   soft...@leandrohermida.com
wrote:
  
Hi again,
   
I tried changing the format to txt and tabular which I have other
datasets
in my history and still the same error and stack trace in Galaxy.
   
Is it possible at all to have a select multiple of datasets as an
input
parameter??
   
best,
Leandro
   
   
On Thu, May 19, 2011 at 6:59 PM, Leandro Hermida 
soft...@leandrohermida.com wrote:
   
Hi Galaxy developers,
   
Something seems maybe to be wrong with the format=html type... I
forgot
to add before that my tool input param the format=html attribute:
   
param type=data multiple=true format=html name=input1 /
   
In another tool I have it outputs format=html and this works and
displays in Galaxy just fine. I would like to use multiple of these
output
datasets in my history as the input for this other tool but
 something
seems
to be wrong if you try to do this?
   
a bit lost,

Re: [galaxy-dev] AttributeError: 'list' object has no attribute 'missing_meta' when doing multiple=true input datasets

2011-06-30 Thread Kip Bodi
Sorry, I tried to edit that, to make it simpler, but missed the param
block. The 'name' does match the one in the 'command' on my end
(list_of_items_in_history).

On Thu, Jun 30, 2011 at 10:45 AM, Kip Bodi kip.b...@tufts.edu wrote:

 Hi all,

 I'm having the same problem. I have a script that tries to take several
 history data sets as a single input:

 command interpreter=perlaggregate.pl --out $outfile
 $list_of_items_in_history/command

   inputs
 param format=txt name=fitness_tables type=data multiple=true
 label=Fitness score table, per site/
   /inputs

   outputs
 data format=tabular name=outfile /
   /outputs

 If I select only one history item it works, but if I press 'ctrl' to select
 multiple items, it fails:

 File
 '/storage/apps/galaxy_dist/eggs/WebError-0.8a-py2.6.egg/weberror/evalexception/middleware.py',
 line 364 in respond
   app_iter = self.application(environ, detect_start_response)
 File '/usr/lib/python2.6/site-packages/paste/debug/prints.py', line 106 in
 __call__
   environ, self.app)
 File '/usr/lib/python2.6/site-packages/paste/wsgilib.py', line 543 in
 intercept_output
   app_iter = application(environ, replacement_start_response)
 File '/usr/lib/python2.6/site-packages/paste/recursive.py', line 80 in
 __call__
   return self.application(environ, start_response)
 File '/usr/lib/python2.6/site-packages/paste/httpexceptions.py', line 633
 in __call__
   return self.application(environ, start_response)
 File '/storage/apps/galaxy_dist/lib/galaxy/web/framework/base.py', line 145
 in __call__
   body = method( trans, **kwargs )
 File '/storage/apps/galaxy_dist/lib/galaxy/web/controllers/tool_runner.py',
 line 68 in index
   template, vars = tool.handle_input( trans, params.__dict__ )
 File '/storage/apps/galaxy_dist/lib/galaxy/tools/__init__.py', line 979 in
 handle_input
   _, out_data = self.execute( trans, incoming=params, history=history )
 File '/storage/apps/galaxy_dist/lib/galaxy/tools/__init__.py', line 1271 in
 execute
   return self.tool_action.execute( self, trans, incoming=incoming,
 set_output_hid=set_output_hid, history=history, **kwargs )
 File '/storage/apps/galaxy_dist/lib/galaxy/tools/actions/__init__.py', line
 360 in execute
   for name, value in tool.params_to_strings( incoming, trans.app
 ).iteritems():
 File '/storage/apps/galaxy_dist/lib/galaxy/tools/__init__.py', line 1274 in
 params_to_strings
   return params_to_strings( self.inputs, params, app )
 File '/storage/apps/galaxy_dist/lib/galaxy/tools/parameters/__init__.py',
 line 79 in params_to_strings
   value = params[ key ].value_to_basic( value, app )
 File '/storage/apps/galaxy_dist/lib/galaxy/tools/parameters/basic.py', line
 110 in value_to_basic
   return self.to_string( value, app )
 File '/storage/apps/galaxy_dist/lib/galaxy/tools/parameters/basic.py', line
 1457 in to_string
   return value.id
 AttributeError: 'list' object has no attribute 'id'

 Is using multiple history items as a single input not currently supported,
 or is there something else I'm doing wrong?

 Cheers,

 Kip


 On Thu, Jun 9, 2011 at 7:05 AM, Leandro Hermida 
 soft...@leandrohermida.com wrote:

 Hi again,

 Sorry to ping again about this, just very interested in knowing if
 this is a missing feature in Galaxy or if I had configured something
 wrong.

 Is it possible in Galaxy to have a tool with a multiple=true input
 dataset parameter?  It doesn't seem so?

 best,
 Leandro


 On Tue, May 24, 2011 at 1:31 PM, Leandro Hermida
 soft...@leandrohermida.com wrote:
  Hi Nate,
 
  Thanks for the ping, have fun at the conference!
  On Tue, May 24, 2011 at 11:22 AM, Nate Coraor n...@bx.psu.edu wrote:
 
  Hi Leandro,
 
  The Galaxy Team has recently been preparing for and traveling in
 advance
  of the Galaxy Community Conference, which begins today.  Unfortunately
 I
  don't have an answer for you, but when we're all back at work next
 week,
  someone should be able to respond.
 
  Thanks,
  --nate
 
  Leandro Hermida wrote:
   Hi again,
  
   Very sorry to ask again, just gotten no repsonse, but is this a
 Galaxy
   bug
   or does anyone have a functioning tool that takes multiple datasets
 as
   an
   input parameter??? i.e.
  
   param type=data multiple=true ...  /
  
   regards,
   Leandro
  
   On Thu, May 19, 2011 at 7:15 PM, Leandro Hermida
   soft...@leandrohermida.com
wrote:
  
Hi again,
   
I tried changing the format to txt and tabular which I have other
datasets
in my history and still the same error and stack trace in Galaxy.
   
Is it possible at all to have a select multiple of datasets as an
input
parameter??
   
best,
Leandro
   
   
On Thu, May 19, 2011 at 6:59 PM, Leandro Hermida 
soft...@leandrohermida.com wrote:
   
Hi Galaxy developers,
   
Something seems maybe to be wrong with the format=html type... I
forgot
to add before that my tool input param the format=html
 attribute:
   
param type=data multiple=true format=html name=input1 /
 

Re: [galaxy-dev] database migration issue 64 -65 - postgresql

2011-06-30 Thread Greg Von Kuster
Sorry, for some reason, I attached the compiled version of the script to my 
initial message - here's the code...


Migration script to add 'name' attribute to the JSON dict which describes 
a form definition field and the form values in the database. In the 'form_values' 
table, the 'content' column is now a JSON dict instead of a list.


from sqlalchemy import *
from sqlalchemy.orm import *
from migrate import *
from migrate.changeset import *
from sqlalchemy.exc import *
from galaxy.util.json import from_json_string, to_json_string
from galaxy.model.custom_types import _sniffnfix_pg9_hex

import datetime
now = datetime.datetime.utcnow

import sys, logging
log = logging.getLogger( __name__ )
log.setLevel(logging.DEBUG)
handler = logging.StreamHandler( sys.stdout )
format = %(name)s %(levelname)s %(asctime)s %(message)s
formatter = logging.Formatter( format )
handler.setFormatter( formatter )
log.addHandler( handler )

metadata = MetaData( migrate_engine )
db_session = scoped_session( sessionmaker( bind=migrate_engine, autoflush=False, autocommit=True ) )


def upgrade():
print __doc__
metadata.reflect()
try:
FormDefinition_table = Table( form_definition, metadata, autoload=True )
except Exception, e:
log.debug( Loading 'form_definition' table failed: %s % str( e ) )
try:
FormValues_table = Table( form_values, metadata, autoload=True )
except Exception, e:
log.debug( Loading 'form_values' table failed: %s % str( e ) )
def get_value(lst, index):
try:
return str(lst[index]).replace(', '')
except IndexError,e:
return ''
# Go through the entire table and add a 'name' attribute for each field
# in the list of fields for each form definition
cmd = SELECT f.id, f.fields FROM form_definition AS f
result = db_session.execute( cmd )
for row in result:
form_definition_id = row[0]
fields = str( row[1] )
if not fields.strip():
continue
fields_list = from_json_string( _sniffnfix_pg9_hex( fields ) )
if len( fields_list ):
for index, field in enumerate( fields_list ):
field[ 'name' ] = 'field_%i' % index
field[ 'helptext' ] = field[ 'helptext' ].replace(', '').replace('', )
field[ 'label' ] = field[ 'label' ].replace(', '')
fields_json = to_json_string( fields_list )
if migrate_engine.name == 'mysql':
cmd = UPDATE form_definition AS f SET f.fields='%s' WHERE f.id=%i %( fields_json, form_definition_id )
else:
cmd = UPDATE form_definition SET fields='%s' WHERE id=%i %( fields_json, form_definition_id )
db_session.execute( cmd )
# replace the values list in the content field of the form_values table with a name:value dict
cmd = SELECT form_values.id, form_values.content, form_definition.fields \
   FROM form_values, form_definition \
   WHERE form_values.form_definition_id=form_definition.id \
   ORDER BY form_values.id ASC
result = db_session.execute( cmd )
for row in result:
form_values_id = int( row[0] )
if not str( row[1] ).strip():
continue
row1 = str(row[1]).replace('\n', '').replace('\r', '')
values_list = from_json_string( str( row1 ).strip() )
if not str( row[2] ).strip():
continue
fields_list = from_json_string( str( row[2] ).strip() )
if fields_list and type(values_list) == type(list()):
values_dict = {}
for field_index, field in enumerate( fields_list ):
field_name = field[ 'name' ]
values_dict[ field_name ] = get_value(values_list, field_index )
cmd = UPDATE form_values SET content='%s' WHERE id=%i %( to_json_string( values_dict ), form_values_id )
db_session.execute( cmd )

def downgrade():
metadata.reflect()
try:
FormDefinition_table = Table( form_definition, metadata, autoload=True )
except Exception, e:
log.debug( Loading 'form_definition' table failed: %s % str( e ) )
try:
FormValues_table = Table( form_values, metadata, autoload=True )
except Exception, e:
log.debug( Loading 'form_values' table failed: %s % str( e ) )
# remove the name attribute in the content column JSON dict in the form_values table
# and restore it to a list of values
cmd = SELECT form_values.id, form_values.content, form_definition.fields \
   FROM form_values, form_definition \
   WHERE form_values.form_definition_id=form_definition.id \
   ORDER BY form_values.id ASC
result = db_session.execute( cmd )
for row in result:
form_values_id = int( row[0] )
if not str( row[1] ).strip():
continue
values_dict = from_json_string( str( row[1] ) )
if not str( row[2] ).strip():

Re: [galaxy-dev] New galaxy tool shed

2011-06-30 Thread Greg Von Kuster
Hello Marcel,

On Jun 28, 2011, at 5:23 PM, Marcel Schumann wrote:

 Hi Greg,
 
 Just two small points:
 -- the new 'detailed description' cannot yet display linebreaks correctly. 
 Looks a little bit confusing this way (for an example, just have a look a the 
 description text I pasted into the field for CADDSuite) ;-)

This issue has been fixed - thanks for pointing it out.

 -- just to clarify: I actually meant that it would be very helpful if a 
 version-number in the 'old' style (plain version number, not repository hash 
 key) could be shown as well. This would make it easier for users to 
 understand which release-version of the software is in the toolsuite. But 
 otherwise, as a workaround, I could of course just add a version number to 
 the toolsuite's short-description field ...

Yes, attributes like tool_id, version, etc,  fall into the category of 
repository metadata, a new feature which I am currently implementing.  It 
should be available fairly soon.


 
 
 Cheers,
 Marcel
 
 
 On 06/28/2011 10:05 PM, Greg Von Kuster wrote:
 Hello Marcel,
 
 Thanks for your message - see my inline comments below.
 
 On Jun 28, 2011, at 5:55 AM, Marcel Schumann wrote:
 
 Hi Greg, hi Dave,
 
 I just uploaded a current version of CADDSuite for MacOS10.6 (in addition 
 to the version for Linux) to the Galaxy tool shed. Thereby I noticed some 
 problems and possible enhancements. I just wanted to let you know about 
 them; I hope this is somewhat helpful ...
 
 Errors/problems:
 -- If _not_ logged in, clicking on any tool or category will produce 
 Server error !
 
 
 This bug has been corrected - thanks for letting us know about it.
 
 
 -- The new hg based tool shed does not display/support any tool(suite) 
 version any more. I know that this was probably done on purpose, but I 
 guess this will very confusing for users. If publicly available/published 
 software has its own version number, it would be very nice if this could 
 also be shown in the tool shed.
 
 
 Yes, versions are now the repository tip, which is displayed.
 
 
 -- The new tool shed also does not show detailed description texts any more 
 (in contrast to the previous tool shed). However, I guess these description 
 text could be very important for potential users who search for tools for 
 their tasks. Guessing what a tool/toolsuite does by just reading the 
 one-line description currently supported by the new tool shed is of course 
 not very easy ;-)
 
 
 I've added a Detailed description text field for repositories in the tool 
 shed - thanks for requesting this.
 
 
 
 Ideas for enhancements:
 -- It would be nice to have same kind of download counter
 
 
 I've added a field that displays the number of times a repository was 
 downloaded using the pop-up menu options.  Again, thanks for your request.
 
 
 -- some way to enable users to submit feedback or comments would also be 
 great
 
 
 There is already a Rate repository option on the Repository options pop-up 
 menu.  This option allows you to add a 1 - 5 star rating, along with your 
 own Review comments.
 
 
 -- last but not least, I think you should really advertise your tool shed 
 on your homepages. On both getgalaxy.org and usegalaxy.org I never saw any 
 link/description of the tool shed, but it really is a nice way to share 
 tools :-)
 
 
 We'll look into this, thanks!
 
 
 
 
 Cheers,
 Marcel
 
 
 --
 Marcel Schumann
 
 University of Tuebingen
 Wilhelm Schickard Institute for Computer Science
 Division for Applied Bioinformatics
 Room C304, Sand 14, D-72076 Tuebingen
 
 phone:  +49 (0)7071-29 70437
 fax:  +49 (0)7071-29 5152
 email:  schum...@informatik.uni-tuebingen.de
 
 Greg Von Kuster
 Galaxy Development Team
 g...@bx.psu.edu
 
 
 
 
 
 -- 
 Marcel Schumann
 
 University of Tuebingen
 Wilhelm Schickard Institute for Computer Science
 Division for Applied Bioinformatics
 Room C304, Sand 14, D-72076 Tuebingen
 
 phone:  +49 (0)7071-29 70437
 fax:  +49 (0)7071-29 5152
 email:  schum...@informatik.uni-tuebingen.de

Greg Von Kuster
Galaxy Development Team
g...@bx.psu.edu




___
Please keep all replies on the list by using reply all
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

  http://lists.bx.psu.edu/


Re: [galaxy-dev] public datasets/histories with external auth

2011-06-30 Thread Shantanu Pavgi

On Jun 30, 2011, at 6:34 AM, Leandro Hermida wrote:

 Hi Nate and Shantanu,
 
 Thanks so much for the clear guidance, this works and sorry I didn't
 read the Apache docs properly
 
 best,
 Leandro
 
 On Thu, Jun 30, 2011 at 6:14 AM, Shantanu Pavgi pa...@uab.edu wrote:
 
 On Jun 29, 2011, at 12:21 PM, Nate Coraor wrote:
 
 Leandro Hermida wrote:
 
 Hi Shantanu,
 
 In your Apache configuration exactly how did you set up an anonymous
 
 REMOTE_USER just for specific locations like the /datasets/ path?  I'm just
 
 looking at the Apache docs and the RequestHeader directive has a context of
 
 the entire VirtualHost and cannot be put into a Location container so I'm
 
 not sure how to do it.
 
 Hi Leandro,
 
 See the optional 'env=' argument and docs on the same for ways to make
 RequestHeader conditional:
 
http://httpd.apache.org/docs/current/mod/mod_headers.html#requestheader
 
 So, depending on the path accessed, you should be able to have
 mod_rewrite set an environment variable specifying which REMOTE_USER
 (real username or fake anonymouse user) should be set.
 
 You could also just set it as the anonymous user to start with and then
 use 'RequestHeader set' to overwrite it with the real username in the
 case that a real username is available.
 
 This is all just from glancing at the docs, though, I have not tried any
 of it out, and this sort of Apache trickery is always difficult to get
 right.
 
 --nate
 
 
 
 Leandro,
 The RequestHeader has a context of 'directory' as well, which includes
 Directory, Location, Files, and Proxy containers [1]. So you should
 be able to use it in Location directive.
 Following is a configuration snippet related to what Nate described in his
 earlier response. We are setting REMOTE_USER variable to anonymous when it's
 not set/empty.
 Location ~ /(datasets|history)/
 AuthType shibboleth
 ShibRequireSession off
 Require shibboleth
 RewriteCond %{LA-U:REMOTE_USER} =
 RequestHeader set REMOTE_USER anonymous
 /Location
 Hope this helps.
 
 1. http://httpd.apache.org/docs/current/mod/directive-dict.html#Context
 --
 Shantanu.
 


Leandro,

I realized that above mentioned configuration is wrong. It will set 
RequestHeader to 'anonymous' regardless of authentication status. I think 
following config should work (still testing). In our case it resides outside of 
Location directive now. You may need to adjust it according to your setup:

{{{
# Take the  environment variable and set it as a header in the proxy 
request.
RewriteCond %{IS_SUBREQ} ^false$
RewriteCond %{LA-U:REMOTE_USER} (.+)
RewriteRule . - [E=RU:%1]
# Set RU to anonymous if No REMOTE_USER
RewriteCond %{IS_SUBREQ} ^false$
RewriteCond %{LA-U:REMOTE_USER} =
RewriteRule . - [E=RU:anonymous]
# Set RequestHeader 
RequestHeader set REMOTE_USER %{RU}e
}}}


--
Shantanu. 


___
Please keep all replies on the list by using reply all
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

  http://lists.bx.psu.edu/


Re: [galaxy-dev] rgWebLogo3 with Probabilities instead of Entropy

2011-06-30 Thread Ross
Thanks - code to accompany good suggestions is always appreciated :)

I'll write a test and get a patched version on test as soon as I get
some time - travelling all day today - will let you know when it's
done

On Fri, Jul 1, 2011 at 7:20 AM, Assaf Gordon gor...@cshl.edu wrote:
 Hello Ross and Galaxy team,

 May I suggest this small patch, that enables WebLogo to plot either Entropy 
 bits (the current default) or just nucleotides probabilities ?
 It uses the standard -U parameter of weblogo3.

 -gordon



 ___
 Please keep all replies on the list by using reply all
 in your mail client.  To manage your subscriptions to this
 and other Galaxy lists, please use the interface at:

  http://lists.bx.psu.edu/




-- 
Ross Lazarus MBBS MPH;
Associate Professor, Harvard Medical School;
Director of Bioinformatics, Channing Lab; Tel: +1 617 505 4850;
Head, Medical Bioinformatics, BakerIDI; Tel: +61 385321444;

___
Please keep all replies on the list by using reply all
in your mail client.  To manage your subscriptions to this
and other Galaxy lists, please use the interface at:

  http://lists.bx.psu.edu/