Changesets: Import 2017-06-07 23:51:09

master be33d138

2016-05-31 02:11:39

jcfr

Details Diff
ENH: MeasureStartupTimes: Add option to load only specific modules

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25130 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Applications/SlicerApp/Testing/Python/MeasureStartupTimes.py Diff File

master 7f6df8f0

2016-05-31 02:11:38

jcfr

Details Diff
ENH: MeasureStartupTimes: Add option to include one module at a time

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25129 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Applications/SlicerApp/Testing/Python/MeasureStartupTimes.py Diff File

master 47ff0147

2016-05-31 02:11:35

jcfr

Details Diff
STYLE: Simplify import of Logic/MRML/DisplayableManager python modules

Instead of creating intermediate python scripts, this commit updates
loadable modules wrapping and import mechanism to directly use the
shared library.

The management of PythonQt and VTK*Python module is now identical.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25128 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/QTGUI/qSlicerLoadableModule.cxx Diff File
mod - CMake/SlicerMacroPythonWrapModuleVTKLibrary.cmake Diff File

master c3872ba0

2016-05-31 02:11:33

jcfr

Details Diff
STYLE: Do not explicitly import "freesurfer" into "slicer" module

FreeSurfer classes are expected to be used by explicitly importing the
module.

The classes are not used in either Slicer core or any of the extensions
available in the extensions index.

Slicer core:

$ for class in $(ls -1 ./Libs/FreeSurfer/vtk*.h | cut -d"/" -f4 | cut -d"." -f1); do echo "Looking for $class [$(pwd)]"; ack --py $class; done
Looking for vtkFreeSurferWin32Header [/home/jcfr/Projects/Slicer]
Looking for vtkFSIO [/home/jcfr/Projects/Slicer]
Looking for vtkFSLookupTable [/home/jcfr/Projects/Slicer]
Looking for vtkFSSurfaceAnnotationReader [/home/jcfr/Projects/Slicer]
Looking for vtkFSSurfaceHelper [/home/jcfr/Projects/Slicer]
Looking for vtkFSSurfaceLabelReader [/home/jcfr/Projects/Slicer]
Looking for vtkFSSurfaceReader [/home/jcfr/Projects/Slicer]
Looking for vtkFSSurfaceScalarReader [/home/jcfr/Projects/Slicer]
Looking for vtkFSSurfaceWFileReader [/home/jcfr/Projects/Slicer]


Extensions:

$ for class in $(cd /home/kitware/Dashboards/Nightly/Slicer-0; ls -1 ./Libs/FreeSurfer/vtk*.h | cut -d"/" -f4 | cut -d"." -f1); do echo "Looking for $class [$(pwd)]"; ack-grep --py $class; done
Looking for vtkFreeSurferWin32Header [/home/kitware/Dashboards/Nightly/S-0-E-b]
Looking for vtkFSIO [/home/kitware/Dashboards/Nightly/S-0-E-b]
Looking for vtkFSLookupTable [/home/kitware/Dashboards/Nightly/S-0-E-b]
Looking for vtkFSSurfaceAnnotationReader [/home/kitware/Dashboards/Nightly/S-0-E-b]
Looking for vtkFSSurfaceHelper [/home/kitware/Dashboards/Nightly/S-0-E-b]
Looking for vtkFSSurfaceLabelReader [/home/kitware/Dashboards/Nightly/S-0-E-b]
Looking for vtkFSSurfaceReader [/home/kitware/Dashboards/Nightly/S-0-E-b]
Looking for vtkFSSurfaceScalarReader [/home/kitware/Dashboards/Nightly/S-0-E-b]
Looking for vtkFSSurfaceWFileReader [/home/kitware/Dashboards/Nightly/S-0-E-b]

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25127 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/Python/CMakeLists.txt Diff File

master c1739bf0

2016-05-31 02:11:31

jcfr

Details Diff
STYLE: Update python script to explicitly import teem

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25126 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Libs/vtkITK/Testing/vtkITKArchetypeDiffusionTensorReaderFile.py Diff File
mod - Libs/vtkITK/Testing/vtkITKArchetypeScalarReaderFile.py Diff File
mod - Modules/Scripted/DataProbe/DataProbe.py Diff File
mod - Modules/Scripted/EditorLib/LabelStructureListWidget.py Diff File

master 1b6cd332

2016-05-31 02:11:29

jcfr

Details Diff
STYLE: slicer/__init__: Improve comments

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25125 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/Python/slicer/__init__.py Diff File

master 65115cfa

2016-05-31 02:11:26

jcfr

Details Diff
STYLE: Relocate logging initialization from slicer/__init__ to slicerqt.py

Relocate configuration of the application loggers into the application
initialization script. This is done anticipating the possible introduction
of lazy loading of slicer module attributes.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25124 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/Python/slicer/__init__.py Diff File
mod - Base/Python/slicer/slicerqt.py Diff File

master 626b78f5

2016-05-30 11:25:44

lassoan

Details Diff
BUG: Fixed site name propagation to extension dashboard

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25123 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Extensions/CMake/SlicerBlockUploadExtension.cmake Diff File
mod - Extensions/CMake/SlicerExtensionsDashboardDriverScript.cmake Diff File

master 69d00eab

2016-05-26 19:29:34

jcfr

Details Diff
BUG: Fix loading of PythonQt module from visual studio build tree

This commit fixes a regression introduced in r25115 (STYLE: Simplify
loading of loadable module python modules)

Module like "qSlicer*PythonQt.*" are built in the intermediate directory.

Thanks: Andras Lasso <lasso@queensu.ca>
Thanks: Csaba Pinter <csaba.pinter@queensu.ca>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25122 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/QTGUI/qSlicerLoadableModule.cxx Diff File

master 93db7ee6

2016-05-26 18:34:47

jcfr

Details Diff
STYLE: slicerqt-with-tcl: Remove redundant 'mrmlLogic' package

mrmlLogic is already included in mrml.py

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25121 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/Python/slicer/slicerqt-with-tcl.py Diff File

master cc141426

2016-05-26 18:28:50

jcfr

Details Diff
STYLE: Remove redundant modules 'mrmlLogic' and 'mrmlcli'

These modules are already imported in mrml.py

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25120 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/Python/CMakeLists.txt Diff File
rm - Base/Python/mrmlLogic.py Diff File
rm - Base/Python/mrmlcli.py Diff File

master 3833366b

2016-05-25 15:46:00

jcfr

Details Diff
BUG: Fixes widget and logic python module loading regression

This commit fixes regressions introduced in r25115 and r25116.

* Ensure vtkSlicerCLIModuleLogic (in Base/QTCLI/) python wrapping is loaded.

* Update EMSegment to a version referencing python widget and logic
from the "slicer" namespace.

Reported-by: Andras Lasso <lasso@queensu.ca>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25119 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Applications/SlicerApp/Testing/Cpp/qSlicerApplicationTpyclEMSegmentIntegrationTest.cxx Diff File
mod - Base/Python/CMakeLists.txt Diff File
mod - SuperBuild.cmake Diff File

master 33d2a396

2016-05-24 14:41:32

naucoin

Details Diff
COMP: fix illegal character compiler warning

Change invalid character to an apostrophe in Tables module acknowledgement text.

Fixes the following compiler warning:
Slicer/Modules/Loadable/Tables/qSlicerTablesModule.cxx:95:187: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
...funded by OCAIRO, the Applied Cancer Research Unit program of Cancer Care Ontario, and Department of Anesthesia and Critical Care Medicine, Children<92>s Hospital of Philadelphia.";



git-svn-id: http://svn.slicer.org/Slicer4/trunk@25118 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Modules/Loadable/Tables/qSlicerTablesModule.cxx Diff File

master c8d55be8

2016-05-23 02:14:08

jcfr

Details Diff
PERF: Improve slicer.util.importModuleObjects to avoid repeat same file glob

To justify the added complexity, startup times has been measured
for the last 5 commits and, given the experimental setup, it confirms
that this commit slight reduce the startup time.

Results have been gathered on Ubuntu 15.10 on a workstation with the
following specs: 64GB / M.2 PCIe NVMe SSD / Quad Core 3.80GHz

For each commit, the performance have been measured by averaging
the startup time over 15 runs where disk has been flushed before each
run using:

sudo sysctl vm.drop_caches=1

Results are the following:


* Baseline: ENH: MeasureStartupTimes: Add option to benchmark only regular startup
5.19s

* Improvement 1: PERF: slicer.util.importClassesFromDirectory: Compile regex outside for loop
5.18s

* Improvement 2: STYLE: slicer.util.importModuleObjects: Simplify code
5.16s

* Improvement 3: STYLE: Simplify loading of loadable module python modules
5.18s

* Improvement 4: PERF: Import loadable module python extension only into 'slicer' module
5.19s

* Improvement 5: [THIS COMMIT]
5.07s


Automatic collection of stats have been done using shell script
including code like this one:

8<--8<--8<--8<--8<--8<--8<--8<--8<--8<--8<--8<--8<--8<--8<--
what=improvement-5 &&
commit=1234567 &&
desc="PERF: Improve slicer.util.importModuleObjects to avoid repeat same file glob" &&

echo "" &&
echo "$what: $desc" &&
(cd ~/Projects/Slicer && git reset --hard $commit) &&
cmake . &&
make qSlicerBaseQTCore/fast &&
make qSlicerBaseQTGUI/fast &&
make CopySlicerPythonScriptFiles/fast -B &&
make CompileSlicerPythonFiles/fast -B &&
(~/Projects/Slicer/Applications/SlicerApp/Testing/Python/MeasureStartupTimes.py --normal --drop-cache --repeat 15 ./Slicer) &&
cp ./StartupTimesNormal.json ./StartupTimesNormal-$what.json
8<--8<--8<--8<--8<--8<--8<--8<--8<--8<--8<--8<--8<--8<--8<--

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25117 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/Python/slicer/util.py Diff File

master 628f83fe

2016-05-23 02:14:06

jcfr

Details Diff
PERF: Import loadable module python extension only into 'slicer' module

Since the modules "slicer.moduledm", "slicer.modulelogic", "slicer.modulemrml"
and "slicer.modulewidget" were not used, this commit removes them and avoid
the overhead of updating their respective dictionaries.

It is a follow up of r19775 (STYLE: Prevent future issue related to
refactoring by referencing all MRML node from 'slicer' module.).

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25116 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/Python/CMakeLists.txt Diff File
rm - Base/Python/slicer/moduledm/__init__.py Diff File
rm - Base/Python/slicer/modulelogic/__init__.py Diff File
rm - Base/Python/slicer/modulemrml/__init__.py Diff File
rm - Base/Python/slicer/modulewidget/__init__.py Diff File
mod - Base/Python/slicer/util.py Diff File
mod - Base/QTGUI/qSlicerLoadableModule.cxx Diff File

master 9cb5668f

2016-05-23 02:14:03

jcfr

Details Diff
STYLE: Simplify loading of loadable module python modules

This commit removes the special case and ensures all loadable module
python dependencies (Logic, MRML, MRMLDisplayableManager and Widget) are
loaded using the method "qSlicerLoadableModule::importModulePythonExtensions".

Since prior to this change, moduledm, modulelogic, modulemrml and modulewidget
where imported into slicer from within slicer/__init__.py, this commit
updates "slicer.util.importModuleObjects" to explicitly add the classes
to the slicer module.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25115 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/Python/slicer/moduledm/__init__.py Diff File
mod - Base/Python/slicer/modulelogic/__init__.py Diff File
mod - Base/Python/slicer/modulemrml/__init__.py Diff File
mod - Base/Python/slicer/modulewidget/__init__.py Diff File
mod - Base/Python/slicer/util.py Diff File
mod - Base/QTGUI/qSlicerLoadableModule.cxx Diff File
mod - Base/QTGUI/qSlicerLoadableModule.h Diff File

master acda657d

2016-05-23 02:14:00

jcfr

Details Diff
STYLE: slicer.util.importModuleObjects: Simplify code

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25114 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/Python/slicer/util.py Diff File

master b978865e

2016-05-23 02:13:58

jcfr

Details Diff
PERF: slicer.util.importClassesFromDirectory: Compile regex outside for loop

While no significant improvements could be measured, compiling the regex
only once is a sensible choice.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25113 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Base/Python/slicer/util.py Diff File

master 4095862b

2016-05-23 02:13:56

jcfr

Details Diff
ENH: MeasureStartupTimes: Add option to benchmark only regular startup

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25112 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Applications/SlicerApp/Testing/Python/MeasureStartupTimes.py Diff File

master d9eaf675

2016-05-23 02:13:54

jcfr

Details Diff
ENH: MeasureStartupTimes: Add option to flush disk cache

This commit adds the option "--drop-cache" to the script.

See http://unix.stackexchange.com/questions/87908/how-do-you-empty-the-buffers-and-cache-on-a-linux-system

Only supported only on Linux. If the --drop-cache option is used on
other platform, an exception is raised.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25111 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Applications/SlicerApp/Testing/Python/MeasureStartupTimes.py Diff File
mod - Applications/SlicerApp/Testing/Python/SlicerAppTesting.py Diff File

master 35e29b63

2016-05-23 02:13:52

jcfr

Details Diff
STYLE: Remove obsolete variable VTK_USE_INSTANTIATOR_NEW

Explicitly setting this variable is not required by VTK since
kitware/VTK@1b707d4 from 2002-08-16.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25110 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Libs/MRML/DisplayableManager/CMakeLists.txt Diff File
mod - Libs/MRML/DisplayableManager/Testing/Cxx/CMakeLists.txt Diff File
mod - Modules/Loadable/Annotations/MRMLDM/CMakeLists.txt Diff File
mod - Modules/Loadable/Markups/MRMLDM/CMakeLists.txt Diff File
mod - Modules/Loadable/Transforms/MRMLDM/CMakeLists.txt Diff File
mod - Modules/Loadable/VolumeRendering/MRMLDM/CMakeLists.txt Diff File

master 61afd870

2016-05-23 02:13:48

jcfr

Details Diff
ENH: Update VTK to include vtkPythonUtil tweak

This change prevents crashes observed while investigating the impact of
python module loading on the startup time.

Merge request has been submitted upstream.
See https://gitlab.kitware.com/vtk/vtk/merge_requests/1515

$ git shortlog fe92273..1c30cb0 --no-merges
Jean-Christophe Fillion-Robin (1):
BUG: vtkPythonUtil: Check if vtkPythonMap is valid

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25109 3bd1e089-480b-0410-8dfb-8563597acbee
mod - SuperBuild/External_VTKv6.cmake Diff File

master ffcbce3c

2016-05-23 02:13:47

jcfr

Details Diff
ENH: Update CTK

$ git shortlog a479422..adc88bf --no-merges
Jean-Christophe Fillion-Robin (2):
ENH: Update PythonQt
BUG: ctkAbstractPythonManager: Handle case when PythonQt is not initialized

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25108 3bd1e089-480b-0410-8dfb-8563597acbee
mod - SuperBuild/External_CTK.cmake Diff File

master 877a086a

2016-05-21 20:07:33

pinter

Details Diff
COMP: Fixed build error on windows

Standard output did not accept const string with the << operator:
http://slicer.cdash.org/viewBuildError.php?buildid=831173
If my fix of choice is not satisfactory, please feel free to override.

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25107 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Libs/vtkAddon/vtkAddonTestingUtilities.cxx Diff File
mod - Libs/vtkAddon/vtkAddonTestingUtilities.txx Diff File

master 7a1d7300

2016-05-21 19:03:04

pieper

Details Diff
BUG: 0004191 back out optimization that broke tests

https://github.com/Slicer/Slicer/pull/505

From: Steve Pieper <pieper@isomics.com>

git-svn-id: http://svn.slicer.org/Slicer4/trunk@25106 3bd1e089-480b-0410-8dfb-8563597acbee
mod - Modules/Loadable/Markups/MRMLDM/vtkMRMLMarkupsFiducialDisplayableManager2D.cxx Diff File
mod - Modules/Loadable/Markups/MRMLDM/vtkMRMLMarkupsFiducialDisplayableManager3D.cxx Diff File
 First  Prev  1 2 3 ... 10 ... 20 ... 30 ... 35 36 37 38 39 40 41 ... 50 ... 60 ... 70 ... 80 ... 90 ... 100 ... 110 ... 120 ... 130 ... 133 134 135  Next  Last