Difference between revisions of "New features"

From VistrailsWiki
Jump to navigation Jump to search
(Adds dont_stop_on_first_error (2.1 feature))
 
(11 intermediate revisions by 2 users not shown)
Line 1: Line 1:
This is a list of work-in-progress features, or features that haven't been released in a 2.0.x version.
This is a list of work-in-progress or unreleased features. See also the [[Development Branches|list of development branches]].*


== To be released in 2.1 ==
== Features not on v2.1 branch ==


These are in the 2.1 beta and will be released soon.
These features are on master but not on the v2.1 branch. (v2.1..master)


=== Core ===
=== Packages ===
 
Tabledata now has writer modules, BuildTable, Microsoft Excel support, JSON, join/select/project
 
SQL package now uses SQLAlchemy. COMPATIBILITY: not compatible, because now returns a Table.
 
GMaps package
 
RemoteQ package


==== vistrails prefix [ready] ====
HTTPDirectory, SSHDownloader, URLEncode, URLDecode, Cross, StringFormat, ReadFile
'vistrails.' prefix added to package names.


This allows to use VisTrails as a library, it obsoletes the "init_for_library.py" hack.
=== Improved module/parameter/widget configuration APIs ===


==== Multi-line string parameters [ready] ====
rename-api, ???
The parameter editor allows to enter multi-line strings. It can be toggled between single-line and multi-line mode.


==== Bundles [needs work] ====
=== Allows default values to be set by Python value ===
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''')
=== Associate with .vt and .vtl files on Linux ===


==== Automatic conversion [ready, documented] ====
=== Schema and migrations for startup.xlm ===
Connecting incompatible ports is possible if a Converter subclass exists for these specific types.


Documented in the users' guide.
=== Don't leak temporary files ===


==== Enumeration for module ports [ready, demonstrated for PythonCalc] ====
=== Suspending modules and the job monitor ===
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] ====
=== Package upgrades get chained ===
In users' guide.


==== Not stopping on the first error [ready, undocumented] ====
=== Automatic loops and streaming ===
Adds a "Workflow/Stop on first error" option; disabling it will allow execution to continue if one module fails (for modules that didn't depend on it).


This is fairly trivial and might not need documentation.
???


=== Packages ===
=== Keeps input/output port of unconnected port when ungrouping ===


==== controlflow [ready] ====
=== Allows reloading a disabled package ===
* 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] ====
=== Export cells in different formats ===
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.
=== Exporting version tree to graphviz DOT format ===


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


==== (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/
=== Debugger for code or package issues ===


==== (new) tabledata [ready] ====
=== Output modules ===
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 [https://github.com/troelsfr/BatchQ BatchQ].


Still work in progress.
=== Module Parmeter Widgets ===


== Other features ==
== 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
These features are not on master yet but rather on different branches. (--branches --not master)


=== Core ===
=== Core ===
Line 78: Line 71:


Replaces parallelflow.
Replaces parallelflow.
==== New subworkflows (design phase) ====
See [[SubworkflowsDesign]]

Latest revision as of 13:41, 1 October 2014

This is a list of work-in-progress or unreleased features. See also the list of development branches.*

Features not on v2.1 branch

These features are on master but not on the v2.1 branch. (v2.1..master)

Packages

Tabledata now has writer modules, BuildTable, Microsoft Excel support, JSON, join/select/project

SQL package now uses SQLAlchemy. COMPATIBILITY: not compatible, because now returns a Table.

GMaps package

RemoteQ package

HTTPDirectory, SSHDownloader, URLEncode, URLDecode, Cross, StringFormat, ReadFile

Improved module/parameter/widget configuration APIs

rename-api, ???

Allows default values to be set by Python value

Associate with .vt and .vtl files on Linux

Schema and migrations for startup.xlm

Don't leak temporary files

Suspending modules and the job monitor

Package upgrades get chained

Automatic loops and streaming

???

Keeps input/output port of unconnected port when ungrouping

Allows reloading a disabled package

Export cells in different formats

Exporting version tree to graphviz DOT format

Control parameters

???

Debugger for code or package issues

Output modules

???

Module Parmeter Widgets

Other features

These features are not on master yet but rather on different branches. (--branches --not master)

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.

New subworkflows (design phase)

See SubworkflowsDesign