The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

Changes for version 0.15 - 2004-10-17

  • CPAN/Install notes:
    • You should now be able to reference the Workflow module via CPAN with 'install Workflow' and such. Thanks to Michael Schwern (RT bug #8011) and the PAUSE indexing server for the reports.
    • Also thanks to Michael Roberts for releasing the 'Workflow' namespace to this module. If you're interested in workflows I strongly encourage you to check out his wftk (Workflow Toolkit) project along with the Perl interface when it's released.
      • http://www.vivtek.com/wftk.html
  • Build.PL/Makefile.PL:
    • Add Class::Factory as dependency. Thanks to Michael Schwern for the pointer via RT (bug #8010)-- during my presentation to pgh.pm on the Workflow module no less! (I added a reference to the presentation in README and Workflow.pm)
    • Add Class::Observable as dependency for new functionality.
  • eg/ticket/ticket.pl:
    • Ensure we actually delete the SQLite database file if it exists.
  • t/TestUtil.pm:
    • Always store the logfile from testing in the 't/' directory.
  • Workflow:
    • Workflows are now observable. Big thanks to Tom Moertel <tmoertel@cpan.org> for the suggestion. See WORKFLOWS ARE OBSERVABLE in docs.
    • In previous versions most properties were read-only but it wasn't enforced. Now it is.
  • Workflow::Factory:
    • Add the ability to register observers from the 'workflow' configuration and add them to workflows created from fetch_workflow() and create_workflow(). Configuration information available in Workflow.pm.

Modules

Simple, flexible system to implement workflows
Base class for Workflow actions
Metadata about information required by an Action
Workflow action for the terminally lazy
Base class with constructor
Evaluate a condition depending on the workflow state and environment
Inline condition that evaluates perl code for truth
Condition to determine if a user is available
Parse configuration files for the workflow components
Parse workflow configurations as Perl data structures
Parse workflow configurations from XML content
Data blackboard for Workflows, Actions, Conditions and Validators
Base class for workflow exceptions
Generates new workflow and supporting objects
Recorded work on a workflow action or workflow itself
Base class for workflow persistence
Persist workflow and history to DBI database
Pull IDs from databases that autogenerate them
Fetch extra data with each workflow and put it into the context
Persister to fetch ID from a sequence
Persist workflow and history to the filesystem
Persister to generate random ID
Persist workflows using SPOPS
Persister to generate Universally Unique Identifiers
Information about an individual state in a workflow
Ensure data are valid
Validator to ensure certain data are in the context
Ensure a value is one of a declared set of values
Ensure a stringified date matches a given pattern