===== Commit 2016-03-18 ===== installer - configuration “student” - correction syntaxe python ===== installer ===== * Ajout de la copie des libs Mumps dans l'installer Metafor (testé sous Windows, fait sous Linux, mais pas testé ...) ===== configuration “student” ===== * Correction des fichiers de configuration (*.cmake) orienté Student (il cherchait des NDA inaccessible si on a que oo_meta) * Ajout de fabulous-student.cmake ===== correction syntaxe python ===== Lors de la création de l'installer, les fichiers .py sont tous compilés (=> *.pyc) vu que sous Windows, écrire dans un sous-répertoire de "C:\Program Files\" nécessite des droits d'administration... Or certains tests ne se conforment pas à la syntaxe Python (et font donc des Warnings dans l'installeur Metafor). Exemple de syntaxe à éviter : === Cas 1 (pas de import * dans une fonction!!!) : === * Message : Metafor\RollForming\tests\profilageCintrageSF_10x26x1.py:7: SyntaxWarning: import * only allowed at module level def getMetafor(_parameters): * Cause : def getMetafor(_parameters): global metafor if metafor: return metafor from profilage import * metafor = getMetafor(_parameters) createCintrage(metafor, _parameters) return metafor * Solution : def getMetafor(_parameters): global metafor if metafor: return metafor from profilage import getMetafor from profilage import createCintrage metafor = getMetafor(_parameters) createCintrage(metafor, _parameters) return metafor * solution2 : def getMetafor(_parameters): global metafor if metafor: return metafor import profilage metafor = profilage.getMetafor(_parameters) profilage.createCintrage(metafor, _parameters) return metafor * solution 3 : from profilage import * def getMetafor(_parameters): global metafor if metafor: return metafor metafor = getMetafor(_parameters) createCintrage(metafor, _parameters) return metafor === CAS 2 : === * Message Metafor\apps\remeshing2\baseTests\cont2.py:241: SyntaxWarning: name 'winc1' is assigned to before global declaration global winc1 * Cause : if parameters['remeshing'] == None or parameters['remeshing'].observers == None: winc1 = VizWin() global winc1 winc1.add(dataCurveSet[0]) winc1.setPlotTitle('Number of Nodes in Contact') winc1.setPlotXLabel('Time') winc1.setPlotYLabel('') metafor.addObserver(winc1) * Solution : if parameters['remeshing'] == None or parameters['remeshing'].observers == None: global winc1 winc1 = VizWin() winc1.add(dataCurveSet[0]) winc1.setPlotTitle('Number of Nodes in Contact') winc1.setPlotXLabel('Time') winc1.setPlotYLabel('') metafor.addObserver(winc1) ===== Fichiers ajoutés/supprimés ===== Adding: oo_meta\CMake\ fabulous-student.cmake ===== Tests ajoutés/supprimés ===== --- //[[L.Papeleux@ulg.ac.be|Luc Papeleux]] 2016/03/18 //