Hi Galaxy team,

It seems this one managed to fly below the radar: 
https://bitbucket.org/galaxy/galaxy-central/issue/491/data_column-parameter-bug-cannot-select
 Is there a chance I can re-enable automagic data format conversion in the near 
future?

*Special note for Dan: GenePattern does not have this bug :)

Cheers,

Pi

On Mar 3, 2011, at 7:32 PM, Pieter Neerincx wrote:

> Hi Galaxy Devs,
> 
> I think I found a bug in the handling of data_column parameters in 
> combination with the data parameter they depend on. Unfortunately in some 
> cases the popup menu to select a column number won't get populated. (I did a 
> hg pull yesterday, but that didn't solve the problem.)
> 
> Here's what I have to reproduce the problem:
> 
> 1. Make a new histroy
> 2. Upload a tabular file
> 3. Upload a FASTA file
> 4. Select Text Manipulation -> Merge Columns tool
> 5. Tada, you cannot select a column from the popup menu...
> 
> I've traced the problem to detection of a suitable initial value (history 
> item) for the data parameter on which the data_column parameter depends. With 
> the FASTA file uploaded last it will be selected as the initial value. It's 
> not a tabular file, but it can be automagically converted to tabular 
> (is_convertable( data ) == true). It won't show up though in the popup menu 
> to select a history item for the data parameter. Apparently when the HTML 
> form is generated the FASTA file is skipped and the tabular file is the only 
> one in the popup menu.
> 
> In galaxy/lib/galaxy/tools/parameters/basic.py:
> 
> class DataToolParameter( ToolParameter ):
>    ...
>    def get_initial_value( self, trans, context ):
>        """
>        NOTE: This is wasteful since dynamic options and dataset collection
>              happens twice (here and when generating HTML). 
>        """
>        ...
>        # The line below is number 1366 (in my version of this file.)
>        # This may have bad effects for data_column parameters that depend on 
> this data parameter; removing the 'or is_convertable( data )' will 'fix' it,
>        # but is no good solution as it kills the ability to select data that 
> can be converted automagically to a compatible data type.
>        # The note above may explain why the convertable history item does not 
> show up in the popup menu...
>        #if data.visible and not data.deleted and data.state not in 
> [data.states.ERROR, data.states.DISCARDED] and ( isinstance( data.datatype, 
> self.formats) or is_convertable( data ) ):
>        if data.visible and not data.deleted and data.state not in 
> [data.states.ERROR, data.states.DISCARDED] and isinstance( data.datatype, 
> self.formats ):
> 
> When the data_column parameter is initialized however class 
> ColumnListParameter( SelectToolParameter ) -> def get_column_list( self, 
> trans, other_values ) sees the FASTA file and hence there will be no 
> dataset.metadata.columns and the popup menu remains empty...
> 
> If you have another tabular file in your history selecting that one and then 
> switching back will update and populate the popup menu for the data_column 
> parameter. If the order of the history items in the above example is reversed 
> you also won't see the issue as a data set of the correct format is the 
> "initial value".
> 
> Cheers,
> 
> Pi
> 
> 
> ------------------------------------------------------------------
> Biomolecular Mass Spectrometry & Proteomics group
> Utrecht University
> 
> phone: +31 6 143 66 783
> email: pieter.neeri...@gmail.com
> skype: pieter.online
> 
> visiting address:
> H.R. Kruyt building // room O607
> Padualaan 8 // 3584 CH Utrecht // The Netherlands
> 
> mail address:
> P.O. box 80.082 // 3508 TB Utrecht // The Netherlands
> ------------------------------------------------------------------
> 


-------------------------------------------------------------
mobile: +31 6 143 66 783
e-mail: pieter.neeri...@gmail.com
skype:  pieter.online
-------------------------------------------------------------


___________________________________________________________
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/

Reply via email to