Difference between revisions of "Source overview"

From VistrailsWiki
Jump to navigation Jump to search
(Imported from Trac)
(No difference)

Revision as of 17:41, 28 April 2014

Source tree overview

contrib

These are packages that are distributed with VisTrails but are not maintained by the team.

dist

Here lie the scripts used to build the VisTrails binary packages: Inno Setup files (Windows installer), Debian package scripts, py2app and dmg creation (Mac OS). It also contains some media (splash screen sources, icons).

doc

This directory contains the documentation for the project: the users' guide and related build scripts, and various documents (text files and figures). We are using the reStructuredText format and the Sphinx tool, which have become the standard for Python software packages.

examples

This contains all the standard examples distributed with VisTrails (.vt or .xml files, and .py scripts for the API).

examples-internal

These are additional examples that are not as useful, or used internally, and thus are not distributed in VisTrails releases.

extensions

Wrappers allowing the use of VisTrails as an extension for another tool: LaTeX, web server or mediawiki.

scripts

Different scripts that are used, or have been used, while working with the VisTrails source tree.

vistrails

This is the package (in the Python sense) of the application. In it lie all the sources of the program. It has to be on the Python path for VisTrails to run.

With 2.1, we changed the layout of our Python packages: previously, 'core', 'gui', ... would be top-level packages; they are now 'vistrails.core', 'vistrails.gui'. This changes the way the path must be set up, and the syntax that has to be used to import VisTrails packages; safeties are in place to enable old packages that were not adapted to keep functioning (in most cases).

api

core

core is a package that includes all the core functionality of VisTrails. Ideally, no gui or IO code should be here.

VisTrails should be able to run without the gui package or any gui dependency (PyQt).

db

This package contains the schema definitions, the associated tools, and the autogenerated ORM classes.

gui

This contains the GUI of VisTrails, that enables the user to edit and run workflows interactively. It uses PyQt4.

index

?

packages

This contains the core packages that are maintained by the VisTrails team and distributed along with VisTrails.

tests

tests is a package that includes all infrastructure necessary for testing VisTrails. Right now, there is a single standalone script called runtestsuite.py that will run the tests in the entire VisTrails package, reporting errors and modules without tests.

run.py

This package also contains the run.py script which is the entry point of the application. When run, it fixes the Python path for 'vistrails' to be importable and then start the GUI.