2016-03-25 15:43:30 +00:00
CHANGELOG
=========
2017-01-18 14:08:35 +00:00
2019-08-13 22:03:06 +01:00
4.4.0
-----
2019-08-21 16:53:07 +01:00
* Marked all dispatched event classes as `@final`
2019-08-13 22:03:06 +01:00
2018-11-08 15:47:13 +00:00
4.3.0
-----
2019-03-13 16:02:04 +00:00
* Trigger `entered` event for subject entering in the Workflow for the first time.
2018-11-08 16:18:12 +00:00
* Added a context to `Workflow::apply()` . The `MethodMarkingStore` could be used to leverage this feature.
2019-04-06 14:51:37 +01:00
* The `TransitionEvent` is able to modify the context.
2018-12-09 17:01:32 +00:00
* Add style to transitions by declaring metadata:
2019-03-19 05:12:32 +00:00
use Symfony\Component\Workflow\Definition;
use Symfony\Component\Workflow\Metadata\InMemoryMetadataStore;
$transitionsMetadata = new \SplObjectStorage();
$transitionsMetadata[$transition] = [
'color' => 'Red',
'arrow_color' => '#00ff00',
];
$inMemoryMetadataStore = new InMemoryMetadataStore([], [], $transitionsMetadata);
return new Definition($places, $transitions, null, $inMemoryMetadataStore);
2018-10-18 21:44:28 +01:00
* Dispatch `GuardEvent` on `workflow.guard`
* Dispatch `LeaveEvent` on `workflow.leave`
* Dispatch `TransitionEvent` on `workflow.transition`
* Dispatch `EnterEvent` on `workflow.enter`
* Dispatch `EnteredEvent` on `workflow.entered`
* Dispatch `CompletedEvent` on `workflow.completed`
* Dispatch `AnnounceEvent` on `workflow.announce`
2019-03-06 20:59:33 +00:00
* Added support for many `initialPlaces`
2019-06-28 14:01:48 +01:00
* Deprecated `DefinitionBuilder::setInitialPlace()` method, use `DefinitionBuilder::setInitialPlaces()` instead.
2019-03-13 16:02:04 +00:00
* Deprecated the `MultipleStateMarkingStore` class, use the `MethodMarkingStore` instead.
* Deprecated the `SingleStateMarkingStore` class, use the `MethodMarkingStore` instead.
2018-11-08 15:47:13 +00:00
2017-10-30 06:24:47 +00:00
4.1.0
-----
2018-04-29 17:31:06 +01:00
* Deprecated the `DefinitionBuilder::reset()` method, use the `clear()` one instead.
* Deprecated the usage of `add(Workflow $workflow, $supportStrategy)` in `Workflow/Registry` , use `addWorkflow(WorkflowInterface, $supportStrategy)` instead.
* Deprecated the usage of `SupportStrategyInterface` , use `WorkflowSupportStrategyInterface` instead.
2017-10-30 06:24:47 +00:00
* The `Workflow` class now implements `WorkflowInterface` .
* Deprecated the class `ClassInstanceSupportStrategy` in favor of the class `InstanceOfSupportStrategy` .
2017-10-29 17:58:58 +00:00
* Added TransitionBlockers as a way to pass around reasons why exactly
transitions can't be made.
2018-02-08 17:13:25 +00:00
* Added a `MetadataStore` .
2018-04-02 12:38:08 +01:00
* Added `Registry::all` to return all the workflows associated with the
specific subject.
2017-10-30 06:24:47 +00:00
2017-05-19 09:19:00 +01:00
4.0.0
-----
* Removed class name support in `WorkflowRegistry::add()` as second parameter.
2017-07-19 15:45:25 +01:00
3.4.0
-----
2017-08-18 15:07:04 +01:00
* Added guard `is_valid()` method support.
2017-07-19 15:45:25 +01:00
* Added support for `Event::getWorkflowName()` for "announce" events.
2017-04-30 16:11:37 +01:00
* Added `workflow.completed` events which are fired after a transition is completed.
2017-07-19 15:45:25 +01:00
2017-01-18 14:08:35 +00:00
3.3.0
-----
2017-04-05 10:30:54 +01:00
* Added support for expressions to guard transitions and added an `is_granted()`
function that can be used in these expressions to use the authorization checker.
* The `DefinitionBuilder` class now provides a fluent interface.
* The `AuditTrailListener` now includes the workflow name in its log entries.
2017-02-13 10:25:18 +00:00
* Added `workflow.entered` events which is fired after the marking has been set.
2017-01-18 14:08:35 +00:00
* Deprecated class name support in `WorkflowRegistry::add()` as second parameter.
Wrap the class name in an instance of ClassInstanceSupportStrategy instead.
2017-03-08 10:41:18 +00:00
* Added support for `Event::getWorkflowName()` .
2017-04-05 10:30:54 +01:00
* Added `SupportStrategyInterface` to allow custom strategies to decide whether
or not a workflow supports a subject.
2017-04-06 09:44:15 +01:00
* Added `ValidateWorkflowPass` .