= SasView Code Camp-III = ''(Last edited: 13-Jan-2015)'' == Introduction == The third SasView Code Camp III was held from February 11th to 20th 2015, hosted by the [http://www.europeanspallationsource.se European Spallation Source] and held at the [http://europeanspallationsource.se/data-management-and-software ESS Data Management and Software Centre] in Copenhagen. Local arrangements were made by Torben Nielsen and Thomas Larsen with details on the [wiki:CodeCampIIIPlanning planning page]. == Goals for the Code Camp == * Release 3.1 with minimum requirements: * New Models interface * Wx 3.0 and new documentation in installer version * Fix model documentation format to include implementation and testing * BUMPS cleaned up and PARK removed * Major bugs fixed * some new models added? * IF POSSIBLE * ticket #23 and #262 addressed (acknowledgement and bug report in GUI) * Address tickets #239 and #240 (licensing) * Non Release based Goals: * Easy developer set up - Ticket #219 * Create first draft of priority roadmap (from Monday Discussion) ticket #300 * Report on code camp activities * IF POSSIBLE * Unit testing working properly - ticket #301 * Paper started - ticket #299 * Advances on other projects which could involve providing a design or a report on options etc. == Participants == || Paul Butler (NIST) || Steve King (ISIS) || Andrew Jackson (ESS) || || Jeff Krzywon (NIST) || Peter Parker (ISIS) || Torben Nielsen (ESS) || || Paul Kienzle (NIST) || Richard Heenan (ISIS) || Jurrian Bakker (DUT) || || David Manicke (ANSTO) || Miguel Gonzales (ILL) || Wim Bouwman (DUT) || == Photos == == Progress and Outcomes == The code camp gathered 10 developers working full time for over a week on the sasview code base. Further, the team was joined in the latter half of the camp by 2 new developers (Wim Bouwman and Jurriaan Bakker from TUD) interested in adding support for SESANS data to the SasView package. Several major advances were made The camp began with an introduction by Paul Butler outlining the goals for the week. A [wiki:CodeCampIIIScheduleAndWork schedule and series of work packages] were formulated to guide the work. The first task was to migrate the SasView code repository from SourceForge, which has been problematic of late, to Github. This was successfully accomplished. Migration included redirecting host names, editing trac and web pages, moving web pages hosting from UTK to github as well as updating all the developer machines. In the process the final phase of renaming and reorganizing the folders in the SasView tree was completed. The official build servers and Jenkins site were moved to the DMSC servers and the development finally moved from using the old wx 2.8 to using wx 3.0. With the move to wx 3.0 the documentation re-write started at code camp II at ISIS was completed with a porting of all the non-model documentation to RST files that can be built by sphinx. The new documentation was integrated into the gui simplifying the code in the process. Most of the non-model documentation was also carefully edited and updated. A very large effort to completely restructure the models interface, move models into an independent package and support GPU computing was begun and while not finished progressed far enough that a code branch integrating the new sasmodels package into sasview was created. Approximately a quarter of the existing models were moved to the new package during the code camp. The next steps are to move the remaining models, integrate magnetic models, ensure full test coverage and generate a build with the new package for beta testing. This work was more ambitious than originally envisaged, but it provides major advantages and it was determined that it was better done as one integrated effort rather than piece by piece. == Next Steps == At the end of the camp, the progress on all of the work packages was assessed and it was decided that the migration of models to the new, separate, models package should not hold up a 3.1 release which has other significant enhancements over 3.0. Thus the release plan is for a 3.1 release incorporating the new documentation, the move to wx3.0, bumps as the only optimiser and bug fixes. There will then be a 4.0 release later in the year making use of the new models package which will enable simpler adding of new models and GPU acceleration. == Tickets Created and Addressed During the Code Camp == [[TicketQuery(time=2015-02-11..2015-02-21&or&changetime=2015-02-11..2015-02-21&group=workpackage,desc=1,format=table,col=resolution|summary|owner|reporter)]]