Difference between revisions of "New features"

From VistrailsWiki
Jump to navigation Jump to search
(Parallel execution is now documented)
m (moved New features in 2.1 to New features: Some features won't make it to 2.1)
(No difference)

Revision as of 17:03, 23 August 2013

This is a list of work-in-progress features, or features that haven't been released in a 2.0.x version.

To be released in 2.1

These are in the 2.1 beta and will be released soon.

Core

vistrails prefix [ready]

'vistrails.' prefix added to package names.

This allows to use VisTrails as a library, it obsoletes the "init_for_library.py" hack.

Multi-line string parameters [ready]

The parameter editor allows to enter multi-line strings. It can be toggled between single-line and multi-line mode.

Bundles [needs work]

Fixed and updated the bundle installation system. It allows to automatically install required Python packages when they are first imported without restarting VisTrails or entering commands.

Supports the 'pip' installer (on both UNIX and Windows), apt (through Python binding) and Fedora (with yum -- binding currently broken, only uses cmd)

Automatic conversion [ready, documented]

Connecting incompatible ports is possible if a Converter subclass exists for these specific types.

Documented in the users' guide.

Enumeration for module ports [ready, demonstrated for PythonCalc]

It is possible to declare the possible values on a module's input port; the UI then shows a combobox.

Pausing/cancelling execution [ready, documented]

In users' guide.

Packages

controlflow [ready]

  • Added some modules: Default, Sum, And, Or
  • Added module While (not merged in, branch optimize-module)
  • Fold split into Fold and FoldWithModule
  • Fixed product modules, now have ElementwiseProduct, Dot and Cross

(new) parallelflow [ready, documented]

Provides a way to execute modules or groups on an IPython cluster, via a Map module. Also has IPython UI to set it up, and an API to use IPython in other modules.

Documented in the users' guide. First implemented in Oct, 2012 by Fernando.

Note that it becomes obsolete with multithreaded-interpreter although a lot of code was reused.

(replaces pylab) matplotlib [ready, examples exist]

Replaces pylab with a better interface (specialized modules autogenerated from matplotlib's docstrings).

Lots of examples in examples/matplotlib/

(new) tabledata [ready]

A package allowing to load CSV files and NumPy arrays, to display them as a table and to convert between datatypes.

(new) BatchQ-PBS ("JobSubmission") [work in progress, undocumented]

Task submitting package using BatchQ.

Still work in progress.

Other features

These features are not in the 2.1 beta and probably won't make it to the release. They are on different branches

Core

Parallel execution [work in progress, documented]

(branches: multithreaded-interpreter, multithreaded-interpreter-target-seletion)

Changes to the interpreter allowing the parallel execution of modules in a pipeline.

This is opt-in for modules and thus doesn't break modules that use thread-unsafe code. Supports threads, multiprocessing and IPython clusters.

Replaces parallelflow.