0.3.0 and beyond: Close cooperation with the LabPlot project

Section left in for historical interest. There is no 0.3.x code.

Plans: Use a common backend with two frontends, one with full KDE4 integration (called LabPlot 2.x) and one with no KDE depenencies (pure Qt so to say) for easier cross-platform use (called SciDAVis). (Yes, we know that KDE4 is in principle cross-platform as well. But we find that KDE on Windows and Mac OS X in its current state is not ready to be forced on every SciDAVis user.) This promises a faster development speed for both projects while focussing on slightly different audiences. From the user’s point of view, there will still be two different applications. From the developer’s point of view, there may soon be one common code base which allows the choice of the frontend at compile time.

0.3.0: Aspect-framework/hierarchial project structure, modular structure using Qt's plug-in system, XML file format

Plans: Most notably for users, the way the project contents are shown in the project explorer will change considerably. You will for example be able to change label and comment of a column in the project explorer. Internally, from this release on SciDAVis will be using a flexible data analysis and data storage architecture based on a column-based abstraction of a typed data source and filters modelled after integrated electronic circuits (in the sense that they are a “black box” with a number of input and output ports). The project will internally be stored in a hierarchial tree consisting of what we call ``aspects''. The aspects and related classes will follow a ``5 layer design'' somewhat comparable with the model/view/presenter paradigm. This will greatly improve the long-term maintainability of the application. The application code will be separated into several independent modules interacting through Qt’s plug-in system. This will faciliate adding new features later and also improve the maintainability. The file format for SciDAVis projects will be replaced by a completely XML based one. This allows to use robust XML parsers, much better error handling and easy validity-checking of project files. Loading files in the legacy format will continue to be supported as an import function.

0.5.0: New visualisation engine

Plans: The Qwt library will be replaced by a new engine based on Qt's GraphicsView framework, allowing, among other benefits, the use of floating-point linewidths. This will solve many problems such as ugly gaps between axes and bad scaling. The visualization engine will be optimized to achieve optimum ouput quality. The resolution of the the output will be totally independent of the screen resolutions and the size of the plot windows. Custom page sizes for PDF exports will be supported making exported PDF figures ideal to use with PdfLaTex.

0.7.0: Removal of muParser dependence such that everything can be done in Python, improved plotting

1.0.0: Polishing, bug fixing, bring the handbook up-to-date, relaxNG schema

Possible plans beyond 1.0.0:

The crystal ball becomes really fuzzy from this point on. Que sera, sera. ;-)

Russell Standish 2017-04-06