Changes in / [827484cf:9e11cf5] in sasview
- Files:
-
- 1 added
- 22 deleted
- 12 edited
Legend:
- Unmodified
- Added
- Removed
-
build_tools/conda/bumps/meta.yaml
rb75079b r6a72e1b 1 package: 2 name: bumps 3 version: !!str 0.7.5.4 4 5 source: 6 fn: bumps-0.7.5.4.tar.gz 7 url: https://pypi.python.org/packages/source/b/bumps/bumps-0.7.5.4.tar.gz 8 md5: a47c035fbb18afa5ca53067506a5ff1c 9 # patches: 10 # List any patch files here 11 # - fix.patch 12 13 # build: 14 #preserve_egg_dir: True 15 #entry_points: 16 # Put any entry points (scripts to be generated automatically) here. The 17 # syntax is module:function. For example 18 # 19 # - bumps = bumps:main 20 # 21 # Would create an entry point called bumps that calls bumps.main() 22 23 24 # If this is a new build for the same version, increment the build 25 # number. If you do not include this key, it defaults to 0. 26 # number: 1 27 1 about: {home: 'http://www.reflectometry.org/danse/software.html', license: UNKNOWN, 2 summary: Data fitting with bayesian uncertainty analysis} 3 package: {name: bumps, version: 0.7.5.3} 28 4 requirements: 29 5 build: … … 31 7 - setuptools 32 8 - six 33 34 9 run: 35 10 - python 36 11 - six 37 12 source: 13 fn: bumps-0.7.5.3.tar.gz 14 md5: f17b41412c3c8ad6432a42e42cb926d5 15 url: https://pypi.python.org/packages/source/b/bumps/bumps-0.7.5.3.tar.gz 38 16 test: 39 # Python imports40 17 imports: 41 18 - bumps … … 46 23 - bumps.mystic.examples 47 24 - bumps.mystic.optimizer 48 49 #commands:50 # You can put test commands to be run here. Use this to test that the51 # entry points work.52 53 54 # You can also put a file called run_test.py in the recipe that will be run55 # at test time.56 57 25 requires: 58 - numpy 59 - scipy 60 - matplotlib 61 62 about: 63 home: http://www.reflectometry.org/danse/software.html 64 license: UNKNOWN 65 summary: 'Data fitting with bayesian uncertainty analysis' 66 67 # See 68 # http://docs.continuum.io/conda/build.html for 69 # more information about meta.yaml 26 - numpy 27 - scipy 28 - matplotlib -
build_tools/conda/periodictable/meta.yaml
r55bde35 r6a72e1b 1 package: 2 name: periodictable 3 version: !!str 1.4.1 4 5 source: 6 fn: periodictable-1.4.1.tar.gz 7 url: https://pypi.python.org/packages/source/p/periodictable/periodictable-1.4.1.tar.gz 8 md5: 7246b63cc0b6b1be6e86b6616f9e866e 9 # patches: 10 # List any patch files here 11 # - fix.patch 12 13 # build: 14 #preserve_egg_dir: True 15 #entry_points: 16 # Put any entry points (scripts to be generated automatically) here. The 17 # syntax is module:function. For example 18 # 19 # - periodictable = periodictable:main 20 # 21 # Would create an entry point called periodictable that calls periodictable.main() 22 23 24 # If this is a new build for the same version, increment the build 25 # number. If you do not include this key, it defaults to 0. 26 # number: 1 27 1 about: {home: 'http://www.reflectometry.org/danse/elements.html', license: public 2 domain, summary: Extensible periodic table of the elements} 3 package: {name: periodictable, version: 1.4.1} 28 4 requirements: 29 5 build: … … 32 8 - pyparsing 33 9 - numpy 34 35 10 run: 36 11 - python 37 12 - pyparsing 38 13 - numpy 39 14 source: 15 fn: periodictable-1.4.1.tar.gz 16 md5: 7246b63cc0b6b1be6e86b6616f9e866e 17 url: https://pypi.python.org/packages/source/p/periodictable/periodictable-1.4.1.tar.gz 40 18 test: 41 # Python imports42 19 imports: 43 20 - periodictable 44 45 #commands:46 # You can put test commands to be run here. Use this to test that the47 # entry points work.48 49 50 # You can also put a file called run_test.py in the recipe that will be run51 # at test time.52 53 # requires:54 # Put any additional test requirements here. For example55 # - nose56 57 about:58 home: http://www.reflectometry.org/danse/elements.html59 license: public domain60 summary: 'Extensible periodic table of the elements'61 62 # See63 # http://docs.continuum.io/conda/build.html for64 # more information about meta.yaml -
build_tools/conda/unittest-xml-reporting/meta.yaml
r55bde35 r9701348 1 package: 2 name: unittest-xml-reporting 3 version: !!str 1.10.0 4 5 source: 6 fn: unittest-xml-reporting-1.10.0.tar.gz 7 url: https://pypi.python.org/packages/source/u/unittest-xml-reporting/unittest-xml-reporting-1.10.0.tar.gz 8 md5: f0d04be2b9bff5b744677b576c326620 9 # patches: 10 # List any patch files here 11 # - fix.patch 12 13 # build: 14 #preserve_egg_dir: True 15 #entry_points: 16 # Put any entry points (scripts to be generated automatically) here. The 17 # syntax is module:function. For example 18 # 19 # - unittest-xml-reporting = unittest-xml-reporting:main 20 # 21 # Would create an entry point called unittest-xml-reporting that calls unittest-xml-reporting.main() 22 23 24 # If this is a new build for the same version, increment the build 25 # number. If you do not include this key, it defaults to 0. 26 # number: 1 27 1 about: {home: 'http://github.com/xmlrunner/unittest-xml-reporting/tree/master/', license: BSD 2 License, summary: unittest-based test runner with Ant/JUnit like XML reporting.} 3 build: 4 features: 5 - I dunno. The ability to actually work would be nice feature of this recipe. 6 package: {name: unittest-xml-reporting, version: 1.10.0} 28 7 requirements: 29 8 build: 30 9 - python 31 10 - setuptools 32 - six >=1.4.0 33 11 - six 34 12 run: 35 13 - python 36 - six >=1.4.0 37 14 - six 15 source: 16 fn: unittest-xml-reporting-1.10.0.tar.gz 17 md5: f0d04be2b9bff5b744677b576c326620 18 url: https://pypi.python.org/packages/source/u/unittest-xml-reporting/unittest-xml-reporting-1.10.0.tar.gz 38 19 test: 39 # Python imports40 20 imports: 41 21 - xmlrunner 42 22 - xmlrunner.extra 43 23 - xmlrunner.tests 44 45 #commands:46 # You can put test commands to be run here. Use this to test that the47 # entry points work.48 49 50 # You can also put a file called run_test.py in the recipe that will be run51 # at test time.52 53 # requires:54 # Put any additional test requirements here. For example55 # - nose56 57 about:58 home: http://github.com/xmlrunner/unittest-xml-reporting/tree/master/59 license: BSD License60 summary: 'unittest-based test runner with Ant/JUnit like XML reporting.'61 62 # See63 # http://docs.continuum.io/conda/build.html for64 # more information about meta.yaml -
docs/sphinx-docs/build_sphinx.py
r30d7fb5 rf620870 108 108 build() 109 109 110 110 print "=== Done ===" -
sasview/setup_exe.py
r4172557 r3a39c2e 307 307 # 308 308 packages = [ 309 'matplotlib', 'scipy', ' encodings', 'comtypes',309 'matplotlib', 'scipy', 'pytz', 'encodings', 'comtypes', 310 310 'win32com', 'ho.pisa', 'bumps', 311 311 ] … … 326 326 327 327 # Exclude packages that are not needed but are often found on build systems 328 excludes = ['Tkinter', 'PyQt4', '_ssl', '_tkagg', 'sip' , 'pytz']328 excludes = ['Tkinter', 'PyQt4', '_ssl', '_tkagg', 'sip'] 329 329 330 330 -
src/sas/data_util/nxsunit.py
rb3efb7d r79492222 128 128 temperature = _build_metric_units('kelvin','K') 129 129 temperature.update(_build_metric_units('Kelvin','K')) 130 temperature.update(_build_metric_units('Celcius', 'C')) 131 temperature.update(_build_metric_units('celcius', 'C')) 132 130 133 131 charge = _build_metric_units('coulomb','C') 134 132 charge.update({'microAmp*hour':0.0036}) … … 148 146 """ 149 147 Unit converter for NeXus style units. 148 150 149 """ 151 150 # Define the units, using both American and European spelling. -
src/sas/dataloader/data_info.py
rb3efb7d r79492222 338 338 ## Transmission [float] [fraction] 339 339 transmission = None 340 ## Temperature [float] [ No Default]340 ## Temperature [float] [C] 341 341 temperature = None 342 temperature_unit = None342 temperature_unit = 'C' 343 343 ## Position [Vector] [mm] 344 344 position = None -
src/sas/dataloader/readers/cansas_reader.py
rb3efb7d r79492222 307 307 if 'unit' in attr and new_current_level.get('unit') is not None: 308 308 try: 309 local_unit = attr['unit']310 309 if isinstance(node_value, float) is False: 311 310 exec("node_value = float({0})".format(node_value)) … … 313 312 unitname = new_current_level.get("unit") 314 313 exec "default_unit = data1d.{0}".format(unitname) 315 if local_unit is not None and default_unit is not None and \ 316 local_unit.lower() != default_unit.lower() \ 317 and local_unit.lower() != "none": 314 local_unit = attr['unit'] 315 if local_unit.lower() != default_unit.lower() and \ 316 local_unit is not None and local_unit.lower() != "none" \ 317 and default_unit is not None: 318 318 if HAS_CONVERTER == True: 319 ## Check local units - bad units raise KeyError 320 data_conv_q = Converter(local_unit) 321 value_unit = default_unit 322 i_string = "node_value = data_conv_q" 323 i_string += "(node_value, units=data1d.{0})" 324 exec i_string.format(unitname) 319 try: 320 ## Check local units - bad units raise KeyError 321 Converter(local_unit) 322 data_conv_q = Converter(attr['unit']) 323 value_unit = default_unit 324 i_string = "node_value = data_conv_q" 325 i_string += "(node_value, units=data1d.{0})" 326 exec i_string.format(unitname) 327 except KeyError: 328 err_msg = "CanSAS reader: could not convert " 329 err_msg += "{0} unit {1}; " 330 err_msg = err_msg.format(tagname, local_unit) 331 intermediate = "err_msg += " + \ 332 "\"expecting [{1}] {2}\"" + \ 333 ".format(data1d.{0}, " + \ 334 "sys.exc_info()[1])" 335 exec intermediate.format(unitname, "{0}", "{1}") 336 self.errors.append(err_msg) 337 raise ValueError(err_msg) 338 except: 339 err_msg = \ 340 "CanSAS reader: could not convert the units" 341 self.errors.append(err_msg) 342 return 325 343 else: 326 344 value_unit = local_unit 327 err_msg = "Unit converter is not available.\n" 345 err_msg = "CanSAS reader: unrecognized %s unit [%s];"\ 346 % (node_value, default_unit) 347 err_msg += " expecting [%s]" % local_unit 328 348 self.errors.append(err_msg) 349 raise ValueError, err_msg 329 350 else: 330 351 value_unit = local_unit 331 except KeyError: 332 err_msg = "CanSAS reader: unexpected " 333 err_msg += "\"{0}\" unit [{1}]; " 334 err_msg = err_msg.format(tagname, local_unit) 335 intermediate = "err_msg += " + \ 336 "\"expecting [{1}]\"" + \ 337 ".format(data1d.{0})" 338 exec intermediate.format(unitname, "{0}", "{1}") 352 except: 353 err_msg = "CanSAS reader: could not convert " 354 err_msg += "Q unit [%s]; " % attr['unit'] 355 intermediate = "err_msg += \"expecting [%s]\n %s\" % " + \ 356 "(data1d.{0}, sys.exc_info()[1])" 357 exec intermediate.format(unitname) 339 358 self.errors.append(err_msg) 340 value_unit = local_unit 341 except: 342 print sys.exc_info() 343 err_msg = "CanSAS reader: unknown error converting " 344 err_msg += "\"{0}\" unit [{1}]" 345 err_msg = err_msg.format(tagname, local_unit) 346 self.errors.append(err_msg) 347 value_unit = local_unit 359 raise ValueError, err_msg 348 360 elif 'unit' in attr: 349 361 value_unit = attr['unit'] … … 476 488 data1d, tagname) 477 489 cansas_attrib = \ 478 490 cs_values.current_level.get("attributes").get(key) 479 491 attrib_variable = cansas_attrib.get("variable") 480 492 if key == 'unit' and unit != '': -
src/sas/guiframe/gui_manager.py
r9bbb627 rb9a5f0e 24 24 import logging 25 25 import httplib 26 import webbrowser27 28 26 29 27 from sas.guiframe.events import EVT_CATEGORY … … 1327 1325 def _add_help_menu(self): 1328 1326 """ 1329 add help menu to menu bar. Includes welcome page, about page, 1330 tutorial PDF and documentation pages. 1327 add help menu 1331 1328 """ 1332 1329 # Help menu … … 1339 1336 id = wx.NewId() 1340 1337 self._help_menu.Append(id, '&Welcome', '') 1338 self._help_menu.AppendSeparator() 1341 1339 wx.EVT_MENU(self, id, self.show_welcome_panel) 1342 1340 1343 self._help_menu.AppendSeparator() 1344 id = wx.NewId() 1345 self._help_menu.Append(id, '&Documentation', '') 1346 wx.EVT_MENU(self, id, self._onSphinxDocs) 1341 # Look for help item in plug-ins 1342 for item in self.plugins: 1343 if hasattr(item, "help"): 1344 id = wx.NewId() 1345 self._help_menu.Append(id,'&%s Help' % item.sub_menu, '') 1346 wx.EVT_MENU(self, id, item.help) 1347 1348 # Only show new Sphinx docs link if version of wx supports displaying 1349 # it correctly. 1350 show_sphinx_docs = float(wx.__version__[:3]) >= 2.9 1351 if show_sphinx_docs: 1352 self._help_menu.AppendSeparator() 1353 id = wx.NewId() 1354 self._help_menu.Append(id, '&Sphinx Documentation', '') 1355 wx.EVT_MENU(self, id, self._onSphinxDocs) 1347 1356 1348 1357 if config._do_tutorial and (IS_WIN or sys.platform =='darwin'): … … 2153 2162 def _onSphinxDocs(self, evt): 2154 2163 """ 2155 Bring up Sphinx Documentation. If Wx 2.9 or higher is installed 2156 with proper HTML support then Pop up a Sphinx Documentation dialog 2157 locally. If not pop up a new tab in the default system browser 2158 calling the documentation website. 2164 Pop up a Sphinx Documentation dialog. 2159 2165 2160 2166 :param evt: menu event … … 2162 2168 # Running SasView "in-place" using run.py means the docs will be in a 2163 2169 # different place than they would otherwise. 2164 2165 show_sphinx_docs = float(wx.__version__[:3]) >= 2.9 2166 if show_sphinx_docs: 2167 SPHINX_DOC_ENV = "SASVIEW_DOC_PATH" 2168 if SPHINX_DOC_ENV in os.environ: 2169 docs_path = os.path.join(os.environ[SPHINX_DOC_ENV], "index.html") 2170 else: 2171 docs_path = os.path.join(PATH_APP, "..", "..", "doc", "index.html") 2172 2173 if os.path.exists(docs_path): 2174 from documentation_window import DocumentationWindow 2175 2176 sphinx_doc_viewer = DocumentationWindow(None, -1, docs_path) 2177 sphinx_doc_viewer.Show() 2178 else: 2179 logging.error("Could not find Sphinx documentation at '%' -- has it been built?" % docs_path) 2170 SPHINX_DOC_ENV = "SASVIEW_DOC_PATH" 2171 if SPHINX_DOC_ENV in os.environ: 2172 docs_path = os.path.join(os.environ[SPHINX_DOC_ENV], "index.html") 2180 2173 else: 2181 #For red hat and maybe others who do not have Wx 3.0 2182 #just send to webpage of documentation 2183 webbrowser.open_new_tab('http://www.sasview.org/sasview') 2174 docs_path = os.path.join(PATH_APP, "..", "..", "doc", "index.html") 2175 2176 if os.path.exists(docs_path): 2177 from documentation_window import DocumentationWindow 2178 2179 sphinx_doc_viewer = DocumentationWindow(None, -1, docs_path) 2180 sphinx_doc_viewer.Show() 2181 else: 2182 logging.error("Could not find Sphinx documentation at '%' -- has it been built?" % docs_path) 2184 2183 2185 2184 def set_manager(self, manager): -
src/sas/guiframe/gui_statusbar.py
rb3efb7d r79492222 315 315 if msg == "error": 316 316 e_msg = "Error(s) Occurred:\n" 317 e_msg += "\t" + event.status + "\n\n" 318 e_msg += "Further information might be available in " 319 e_msg += "the Console log (bottom right corner)." 317 e_msg += event.status 320 318 wx.MessageBox(e_msg, style=wx.ICON_ERROR) 321 319 -
src/sas/guiframe/local_perspectives/data_loader/data_loader.py
rb3efb7d r7a04dbb 171 171 file) for file in os.listdir(path)] 172 172 173 def _process_data_and_errors(self, item, p_file, output, message):174 """175 Check to see if data set loaded with any errors. If so, append to176 error message to be sure user knows the issue.177 """178 data_error = False179 for error_data in item.errors:180 data_error = True181 message += "\tError: {0}\n".format(error_data)182 data = self.parent.create_gui_data(item, p_file)183 output[data.id] = data184 return output, message, data_error185 186 173 def get_data(self, path, format=None): 187 174 """ … … 191 178 output = {} 192 179 any_error = False 193 data_error = False194 180 error_message = "" 195 181 for p_file in path: 196 182 info = "info" 197 183 basename = os.path.basename(p_file) 198 _, extension = os.path.splitext(basename)184 root, extension = os.path.splitext(basename) 199 185 if extension.lower() in EXTENSIONS: 200 186 any_error = True … … 208 194 209 195 try: 210 message = "Loading Data... " + str(p_file) + "\n"211 self.load_update(output=output, message=message, info=info)212 196 temp = self.loader.load(p_file, format) 213 197 if temp.__class__.__name__ == "list": 214 198 for item in temp: 215 output, error_message, data_error = \ 216 self._process_data_and_errors(item, 217 p_file, 218 output, 219 error_message) 199 data = self.parent.create_gui_data(item, p_file) 200 output[data.id] = data 220 201 else: 221 output, error_message, data_error = \ 222 self._process_data_and_errors(temp, 223 p_file, 224 output, 225 error_message) 202 data = self.parent.create_gui_data(temp, p_file) 203 output[data.id] = data 204 message = "Loading Data..." + str(p_file) + "\n" 205 self.load_update(output=output, message=message, info=info) 226 206 except: 227 207 any_error = True 228 if any_error or error_message != "": 229 if error_message == "": 230 error = "Error: " + str(sys.exc_value) + "\n" 231 error += "while loading Data: \n%s\n" % str(p_file) 232 error_message = "The data file you selected could not be loaded.\n" 233 error_message += "Make sure the content of your file" 234 error_message += " is properly formatted.\n\n" 235 error_message += "When contacting the DANSE team, mention the" 236 error_message += " following:\n%s" % str(error) 237 elif data_error: 238 base_message = "Errors occurred while loading {0}\n".format(p_file) 239 base_message += "The data file loaded but with errors.\n" 240 error_message = base_message + error_message 241 else: 242 error_message += "%s\n"% str(p_file) 243 info = "error" 244 self.load_update(output=output, message=error_message, 208 if error_message == "": 209 error = "Error: " + str(sys.exc_value) + "\n" 210 error += "while loading Data: \n%s\n" % str(p_file) 211 error_message = "The data file you selected could not be loaded.\n" 212 error_message += "Make sure the content of your file" 213 error_message += " is properly formatted.\n\n" 214 error_message += "When contacting the DANSE team, mention the" 215 error_message += " following:\n%s" % str(error) 216 else: 217 error_message += "%s\n"% str(p_file) 218 info = "error" 219 self.load_update(output=output, message=error_message, 245 220 info=info) 246 221 247 else: 248 message = "Loading Data Complete! " 222 message = "Loading Data Complete! " 249 223 message += log_msg 224 if error_message != "": 225 info = 'error' 250 226 self.load_complete(output=output, error_message=error_message, 251 227 message=message, path=path, info=info) -
test/sasdataloader/test/utest_abs_reader.py
rb3efb7d r35ec279 345 345 self.assertEqual(self.data.filename, filename) 346 346 # The followed should not have been loaded 347 self.assertEqual(self.data.sample.thickness, 0.00103)347 self.assertEqual(self.data.sample.thickness, None) 348 348 # This one should 349 349 self.assertEqual(self.data.sample.transmission, 0.327) 350 350 351 351 self.assertEqual(self.data.meta_data['loader'], "CanSAS 1D") 352 print self.data.errors 353 self.assertEqual(len(self.data.errors), 2) 352 self.assertEqual(len(self.data.errors), 1) 354 353 355 354
Note: See TracChangeset
for help on using the changeset viewer.