SasView Code Camp-II

(Last edited: 06-Apr-2014)


Code Camp-II was held at the Rutherford Appleton Laboratory (RAL), UK, home to ISIS & the Diamond Light Source. The Camp ran from the morning of Monday 31 March until lunchtime on Sunday 6 April 2014 with a 'meet-and-greet' over dinner on the evening of Sunday 30 March.

The local arrangements were kindly made by Steve King (ISIS) with details on the planning page

Purpose of the Code Camp

The high level objectives of the Code Camp were:

  • To learn about the SasView development environment
  • To progress and complete tickets in an encouraging and nurturing expert environment
  • To shape the future development of SasView

In addition, on the first day, a series of specific objectives were set:

  • Address admin issues (Such as build server configuration, ensuring the right people have access to UTK server etc)
  • Work on large key tasks (integration of bumps, restructuring of documentation, compatibility with wx 3.0, refactoring of C models)
  • Address all tickets needed for Release and have the code in a release build state.
  • Address tasks that participants have brought (requests from home institution and personal pet projects)
  • Address tickets on the wish list as time/skill/interest allow


  • Paul Butler (NIST)
  • Paul Kienzle (NIST)
  • Jeff Krzywon (NIST)
  • Mathieu Doucet (SNS)
  • Andrew Jackson (ESS)
  • Torben Nielsen (ESS)
  • Miguel Gonzalez (ILL)
  • Tobias Richter (DLS)
  • Richard Heenan (ISIS)
  • Steve King (ISIS)
  • Peter Parker (ISIS)


Photos from the code camp can be found at:


There were over 100 commits to the SasView code repository, and over 50 tickets were addressed, created or updated during the week.

A survey of which versions of packages were being used was made (ticket #213) and a table of results is available in pdf. Excellent progress was made on migrating to wx 3.0 (ticket #216) but was deemed too large a change to risk on a relase anticipated by the end of the month and so will be actually implemented once the release is made. Likewise, the change to the repository structure to remove the last vestiges of the name *sans* and make the code layout in the development environment more closely match that in the deployed environement (ticket #218) was ready to push but deemed to risky so close to a release. It too will be done after this release. Finally the project to replace the optimizer (ticket #214) is mostly complete but again is viewed as too risky to deploy for this release.

Aside from these, work covering a lot of ground was done during the code camp, including a new release of Refl1D. Much of this is documented to some extent in the commits made this week and in the tickets below.

Importantly, several new developers (Torben Nielsen (ESS), Tobias Richter (Diamond) and Richard Heenan (ISIS)) were introduced to the code and have begun to make contributions. The existing developers made good use of the week to make progress on existing tasks and to address new ones.

There was discussion of the direction that SasView should head in, with a presentation from Mathieu Doucet of his web-based data reduction using Mantid. He proposed a similar approach for SasView and it was agreed that he and Torben would work on some technology demonstrations using the existing SasView code as a backend in order to allow the larger group to make a decision later this year on the way forward. A number of the long-term changes planned for SasView (for example using Bumps as the fitting engine, re-working the data structures to include constraints information, and changing the way that models are interfaced) are also required to enable the development of a web-based system with access to a HPC backend.

The general conclusion was that all participants had had a fruitful week and look forward to the next Code Camp. It has been suggested that we might increase the frequency to every 6 months, but we should at least plan to meet next spring.

Tickets Created and Addressed During the Code Camp

Milestone: SasView 3.0.0 (13 matches)

Ticket Resolution Summary Owner Reporter
#244 fixed Add new core shell ellipsoid model Heenan butler
#242 fixed Add rectangular pizm models Gonzalez Gonzales
#235 fixed Remove the dataset drop down on single fit pages ajj smk78
#233 fixed Fits saved in Cansas format do not fit the cansas format so they cannot be reloaded krzywon krzywon
#232 fixed Should be able to copy parameters in a way that is pasteable to excel etc ajj
#229 fixed change title of simultaneous fit butler butler
#228 fixed Get build working on Mavericks (OS X 10.9) ajj
#225 fixed Provide FAQ on website smk78 smk78
#213 fixed Determine which versions of packages are being used vs nominal requirements ajj ajj
#212 fixed Clicking close button on main window raises exception mathieu mathieu
#210 fixed Problem with Box Averaging in Qx krzywon butler
#204 fixed SasView no longer writing CanSAS XML files compliant with the schema King smk78
#199 fixed Documentation for Pringles model ajj ajj

Milestone: SasView 3.1.0 (9 matches)

Ticket Resolution Summary Owner Reporter
#241 wontfix Simultaneous Fit panel "easy setup" visually broken with wx 3.0 ajj ajj
#234 fixed Add warning about using the dataset drop down on Batch page smk78
#226 fixed Provide description of NIST 2D formats read by SasView butler smk78
#221 fixed Restructure documentation infrastructure - implement King/Parker butler
#220 fixed Restructure documentation infrastructure - agree technology/plan Parker/Jackson/King/Butler butler
#218 fixed Finish code reorg including removal of all mention of sans krzywon butler
#216 fixed Update trunk to wx 3.0 mathieu butler
#215 fixed winFuncs problem butler
#214 fixed Integrate BUMPS as new optimization engine kienzle butler

Milestone: SasView 4.0.0 (1 match)

Ticket Resolution Summary Owner Reporter
#237 fixed provide reader for canSAS 2d (hdf5) format krzywon Tobias Richter

Milestone: SasView 4.1.0 (1 match)

Ticket Resolution Summary Owner Reporter
#240 fixed Fix License.txt ajj butler

Milestone: SasView 5.0.0 (1 match)

Ticket Resolution Summary Owner Reporter
#238 Data objects should be independent of gui pkienzle

Milestone: Admin Tasks (10 matches)

Ticket Resolution Summary Owner Reporter
#239 Need to verify UTK vs. Caltech License ownership butler butler
#227 fixed Need onboarding list butler butler
#224 fixed Build System consistency and robustness - scripts in repo Tobias Richter butler
#223 obsolete Build System consistency and robustness - packages Jackson/Krzywon/Doucet/Torben butler
#222 fixed Build System consistency and robustness- wiki pages Jackson butler
#219 obsolete easy developer setup Parker butler
#217 invalid Verify Correctness of Shulz Zimm Distribution gonzales/butler/ajj/heenan butler
#211 Reorganize users on butler butler
#201 fixed Mac build failures Peter Parker ajj
#200 fixed License Survey butler ajj

Milestone: SasView 5.1.0 (1 match)

Ticket Resolution Summary Owner Reporter
#231 Option to send data to fit panel cloned from existing one ajj

Milestone: SasView Next Release +1 (3 matches)

Ticket Resolution Summary Owner Reporter
#243 Add Pegylated Vesicle Model Gonzalez butler
#236 invalid Add Method to Save and Load Fitting Parameters When Saving/Loading Fits krzywon krzywon
#230 fixed Default "load data" directory to the last one used ajj

Last modified 6 years ago Last modified on Oct 29, 2017 11:36:18 AM