Engineering:TCON 2013
Back to TCON:Main, Events
Contents
2013-4-25
Attendees:
Agenda:
- Project Week Kickoff: list projects
Meeting Notes:
2013-04-18
Attendees: Jim, Steve, Nicole, Tina, Andriy, Aiyesha
Agenda:
- Project Week
- Virtual functional pointer tables
See: Hans's test example
Meeting Notes:
2013-04-11
Attendees: Jim, JC, Hans, Nicole, Brad
Meeting notes:
- BRAINS and EMSegment
- Building on Mac
- Project Week: filling in the page
2013-04-04
Attendees: Jim, Nicole, JC, Ayesha
2013-3-28
Attendees: Jim, Steve, Nicole, JC, Ayesha
Agenda:
- Project Week Kickoff:List engineering projects
Meeting Notes:
- discussed general outlines of engineering projects:
- Annotations rewrite
- Brain atlas optimisations (Marianna to do a demo)
- Provenance
- Patient hierarchies
- Sample data - content addressable data, in external data processing in Slicer, cmake file for external data, when write test can decorate the data file name with macro keywords saying it's external
- Next slicer release?
- post namic submission late May
- itkv4 version - use for project week development, not ready for users though
- need to go through the targetted bugs to decide what goes in the next release
- Slicer prereqs
- qt(? or cmake?) version - no time to update it now
- VS2010: cmake-ified python testing, delayed by the double convert and dcmtk build problems, but should be done by project week
2013-3-21
No call today. Several participants in DC. Please join next tcon to kickoff engineering project discussion for project week.
2013-3-14
Attendees: Steve, Ron, Tina, Nicole, Ayesha,
Agenda:
- CHECK YOUR EMAIL (SLICER-DEVELOPERS, NAMIC-ENG) FOR NEW TCON NUMBER
- OpenSSL status update
- Reorg menus in Slicer - deferred to when JC is on the call
- india update (nicole)
- Training Events http://wiki.na-mic.org/Wiki/index.php/Training:Events_Timeline
- Project Week kickoff in two weeks with engineering projects.
2013-3-7
Attendees: Jim, Steve, Tina, Aisha
Agenda:
- CHECK YOUR EMAIL (NAMIC-ENG) FOR NEW TCON NUMBER
2013-2-28
Attendees: Jim, Steve, Tina, Hans, JC, Sunil, Dave
Agenda:
2013-2-21
Attendees: Jim, Steve, Tina, Hans, JC, Sunil, Dave
Agenda:
2013-2-14
Attendees: Nicole, Sunil, Tina, Jim, JC, Ron, Dave,
Agenda:
- utility python script to parse a file to make MRML file for modelmaker - where is the best place to put it (Nicole)
2013-2-7
Attendees: Nicole, Sunil, Tina, Steve, Andriy
Agenda:
- (Ann will review progress report materials with core/site PIs offline)
2013-1-31
Attendees: Jim, Steve, Nicole, Tina, Sunil, Ruiy, Stephen
Agenda:
- Python external libraries discussion (Ron, Steve, JC, Sunil)
- SSL, setuptools, etc.
- Bug report: http://na-mic.org/Bug/view.php?id=2352
- In the next TCON, Ann will review draft of engineering core progress report. All site PIs should plan to attend.
Extending Slicer with more python packages
Different approaches
Multiple and non-exclusive approach can be considered.
- (1) Bundling of package within Slicer installed (i.e. NUMPY)
If the package require compilation steps and is recognized of general interest, it probably make sens to bundle it within Slicer.
- (2) Installation of additional python packages from an *installed* Slicer
Few cases should be considered here:
a) *NO* compilation - *NO* libraries - It means the user does *NOT* have to install any compiler to be able to install the package. It is basically a pure python implementation.
b) *NO* compilation - *WITH* dependencies/libraries - It means the user does *NOT* have to install any compiler *BUT* have to install some external library to be able to install/use the package. This could reveal to be challenging for some user, especially to get the PATH, ... right.
c) *WITH* compilation - *NO* libraries - On unix like system, it is generally easier to install compiler but if we consider that most of our user works on windows, we should probably not require them to install Visual Studio to be able to install a python package ...
- (3) Installation of additional python packages from a *built* Slicer
The researched having a lot of experience in development usually have a build tree of Slicer and know enough to be able to tinker and install things.
Runtime installation
In the python ecosystem, the usage of a tool named pip became the standard regarding installation of additional module and packages. There are currently around 27500 packages available on the Python Package Index. See http://pypi.python.org/pypi
Most of these packages are served from server using https
protocol. To support such protocol, we would have to include the OpenSSL library.
Integrating OpenSSL into Slicer
Considering the license of OpenSSL (BSD style) is compatible with the Slicer one, there should not be any problem distributing it within Slicer. That said, is still presents few challenges.
Build system integration
- Download of the binaries on windows
- Build or download of binaries on macosx/linux
- As part of this integration, integrating a CMake'ified version of python would also make sens.
Some work and testing would be required to make sure everything works as expected.
Legal mention on the download page
We would have to probably have some mention on our page. That said, I found an article mentioning that it should now be fine to distribute strong cryptographic algorithm library within open-source project:
- http://www.theregister.co.uk/2011/01/07/open_source_crypto_curbs/
- https://www.federalregister.gov/articles/2011/01/07/2010-32803/publicly-available-mass-market-encryption-software-and-other-specified-publicly-available-encryption
Certificate Authority
To ensure Slicer is authenticated, we would have to create appropriate certificate and bundle them within Slicer. Some testing/research is required to exactly find out what need to be done. There is also probably a (not ideal) way of ignoring CA ...
2013-01-24
Attendees: Jim, Ron, Nicole, Sunil, JC, Steve
Agenda:
- ITK v4
- ssl issues with python
Minutes:
- ITK v4
- JC found the problem with dcmtk
- Xnat folks need to install some python package => Need openssl to pip install most of the package
- What is the legal aspect of having openssl bundled ?
- OpenSSL is build by CMake folks on all platform ... it could be re-used
- Difference between ITK 3.20.0 and ITK 3.20.1. See https://github.com/Kitware/ITK/compare/v3.20.0...v3.20.1
- Talked about Stan langage. See http://mc-stan.org/
2013-01-17
Attendees: Ron, Steve, Tina, Nicole, JC, Sunil, Dave, Jim
- Project week results review: http://wiki.na-mic.org/Wiki/index.php/2013_Winter_Project_Week
Agenda:
2013-01-10
No call due to 2013_Winter_Project_Week
2013-01-03
Attendees: Jim, Steve, Stephen, Nicole, Tina,
Agenda:
- Project week: http://wiki.na-mic.org/Wiki/index.php/2013_Winter_Project_Week
- Engineering core presentation: http://wiki.na-mic.org/Wiki/index.php/AHM2013-Engineering_Updates