Author: bugman Date: Tue Mar 12 14:19:35 2013 New Revision: 18794 URL: http://svn.gna.org/viewcvs/relax?rev=18794&view=rev Log: Python 3 fixes for the model-free analysis specific code. This was causing errors such as: relax> molmol.macro_write(data_type='rex', style='classic', colour_start_name=None, colour_start_rgb=None, colour_end_name=None, colour_end_rgb=None, colour_list=None, file=None, dir='/tmp/tmpuootyr', force=True) Traceback (most recent call last): File "/data/edau/relax/relax-trunk/test_suite/system_tests/model_free.py", line 416, in test_bug_20531_molmol_macro_write_relaxfault2 self.interpreter.molmol.macro_write(data_type='rex', dir=ds.tmpdir, force=True) File "/data/edau/relax/relax-trunk/prompt/uf_objects.py", line 221, in __call__ self._backend(*new_args, **uf_kargs) File "/data/edau/relax/relax-trunk/generic_fns/molmol.py", line 332, in macro_write commands = create_macro(data_type=data_type, style=style, colour_start=colour_start, colour_end=colour_end, colour_list=colour_list) File "/data/edau/relax/relax-trunk/generic_fns/molmol.py", line 209, in create_macro commands = macro(data_type, style, colour_start, colour_end, colour_list) File "/data/edau/relax/relax-trunk/specific_fns/model_free/macro_base.py", line 505, in create_macro self.classic_style(data_type, colour_start, colour_end, colour_list, spin_id) File "/data/edau/relax/relax-trunk/specific_fns/model_free/macro_base.py", line 354, in classic_style self.classic_rex(res_num, spin.rex, colour_start, colour_end, colour_list) File "/data/edau/relax/relax-trunk/specific_fns/model_free/macro_base.py", line 448, in classic_rex frqs.sort() AttributeError: 'dict_values' object has no attribute 'sort' and: relax> grace.write(x_data_type='spin', y_data_type='rex', spin_id=None, plot_data='value', file='rex.agr', dir='/tmp/tmpya6au2', force=True, norm=False) Opening the file '/tmp/tmpya6au2/rex.agr' for writing. Traceback (most recent call last): File "/data/edau/relax/relax-trunk/test_suite/system_tests/model_free.py", line 438, in test_bug_20531_molmol_macro_write_relaxfault2 self.interpreter.grace.write(x_data_type='spin', y_data_type='rex', file='rex.agr', dir=ds.tmpdir, force=True) File "/data/edau/relax/relax-trunk/prompt/uf_objects.py", line 221, in __call__ self._backend(*new_args, **uf_kargs) File "/data/edau/relax/relax-trunk/generic_fns/grace.py", line 400, in write data, set_names, graph_type = get_data(spin_id, x_data_type=x_data_type, y_data_type=y_data_type, plot_data=plot_data) File "/data/edau/relax/relax-trunk/generic_fns/grace.py", line 244, in get_data y_val[j] = y_val[j] / y_return_conversion_factor(y_data_type) File "/data/edau/relax/relax-trunk/specific_fns/api_base.py", line 526, in return_conversion_factor return self.PARAMS.get_conv_factor(param) File "/data/edau/relax/relax-trunk/specific_fns/api_objects.py", line 240, in get_conv_factor return self._conv_factor[name]() File "/data/edau/relax/relax-trunk/specific_fns/model_free/main.py", line 535, in _conv_factor_rex frqs.sort() AttributeError: 'dict_values' object has no attribute 'sort' Modified: trunk/specific_fns/model_free/macro_base.py trunk/specific_fns/model_free/main.py Modified: trunk/specific_fns/model_free/macro_base.py URL: http://svn.gna.org/viewcvs/relax/trunk/specific_fns/model_free/macro_base.py?rev=18794&r1=18793&r2=18794&view=diff ============================================================================== --- trunk/specific_fns/model_free/macro_base.py (original) +++ trunk/specific_fns/model_free/macro_base.py Tue Mar 12 14:19:35 2013 @@ -444,7 +444,7 @@ if hasattr(cdp, 'ri_ids'): frq = cdp.frq[cdp.ri_ids[0]] else: # Take the highest frequency, if all else fails. - frqs = cdp.frq.values() + frqs = list(cdp.frq.values()) frqs.sort() frq = frqs[-1] Modified: trunk/specific_fns/model_free/main.py URL: http://svn.gna.org/viewcvs/relax/trunk/specific_fns/model_free/main.py?rev=18794&r1=18793&r2=18794&view=diff ============================================================================== --- trunk/specific_fns/model_free/main.py (original) +++ trunk/specific_fns/model_free/main.py Tue Mar 12 14:19:35 2013 @@ -531,7 +531,7 @@ # Take the highest frequency, if all else fails. else: - frqs = cdp.frq.values() + frqs = list(cdp.frq.values()) frqs.sort() frq = frqs[-1]