CHANGELOG.txt in ruote-2.1.11 vs CHANGELOG.txt in ruote-2.2.0

- old
+ new

@@ -1,8 +1,68 @@ = ruote - CHANGELOG.txt +== ruote - 2.2.0 not yet released + +- Engine#participant(name) returns an instance of any participant +- :filter => 'participant_name' (consume(wi) / filter(fields)) +- listen block and forget issue fixed (Thanks Nando Sola) +- @msg always set in FlowExpression +- aliased 'cancel_process' to 'terminate' +- Engine#leftovers (Thanks Iuri) +- $x, $f:x and $v:y vs ${x}, ${f:x} and ${v:y} (literally) +- :filter common attribute +- Participant#do_not_thread : optional workitem parameter +- filter expression +- LocalParticipant / Receiver #applied_workitem(fei) +- using Sourcify to store block participant's code as a string +- CompositeStorage#delete bug fix (Thanks Claudio) +- ParticipantList#register bug fix (Thanks 'sandbox') +- StorageHistory#wfids and DefaultHistory#wfids +- Engine#history -> DefaultHistory (keeping the last 1000 msgs) +- 'citerator' alias to 'concurrent_iterator' +- Participant#rtimeout(workitem) (optional) +- moved Engine#workitem(fei) to ReceiverMixin +- storage#delete_schedule ignoring nil schedule_id +- Participant #rtimeout instead of #timeout +- StorageParticipant making @options available +- Engine#register, allowing block participants (Thanks Hery) +- fixed Engine#launch_single relaunch issue (Thanks Gonzalo) +- 'rset', an alias for the 'set' expression (Thanks Rebo) +- listen :to => /x/ or "/x/" required for regular expressions +- engine#on_terminate = participant_name / subprocess_name / tree +- listen :to => 'tagname', :upon => 'entering' / 'leaving' +- Ruote::Parser becomes Ruote::Reader +- :if => "${customer} in ${customer_list}", :if => "4 in {4 => 5}" +- Ruote::Workitem .from_json #as_json +- :on_error => redo/retry // undo/pass +- given : a case/switch ruote equivalent +- conditionals : "${x} is empty" and "${x} is null" +- once expression (once, _when, as_soon_as) +- let expression (a sequence with its own variable scope) +- engine.ps(wfid=nil) +- once : made sure child is cancelled as well +- :if => '${f:a} and ${f:b}' +- workitem.tags (workitem['fields']['__tags__'] +- better participant initialization (Thanks Neil Pennell) +- Engine #cancel and #kill (expression or process, whichever) +- subid (sub_wfid) for every expression +- undo and redo : more robust (broken tags) +- cursor : giving a sub_wfid to children (play nice with :forget) +- Ruote.is_tree?(o) .is_definition_tree?(o) consolidated +- engine#on_error = [] registering error notifications and the like +- engine#configuration(key) (counterpart to engine#configure(key, value)) +- implemented the :lose attribute +- implemented the 'lose' expression +- fixed issue with "over" (Thanks Daniel 'hassox' Neighman) +- fixed issue with workitem.command = 'jump to x' (Thanks Fix Peña) +- fixed issue with ProcessStatus#position and errors in ParticipantExpression + (Thanks Eric Smith) +- 'registerp' and 'unregisterp' expressions +- ${r:xxx} when ruby_eval_allowed == false now raises an error + + == ruote - 2.1.11 released 2010/10/01 - Engine#process broken with process where schedule count > 1 (Thanks David) - Engine#launch_single for 1! instance processes (Thanks Eric) - Workitem#command and #command= helpers