Releases: machty/ember-concurrency
Releases · machty/ember-concurrency
.evented() and task lifecycle events
0.8.18
- Adds
.evented()
task modifier and task lifecycle events
Thanks to @maxfierke for implementing this feature.
waitFor* + Promise helpers
0.8.17
- waitForEvent/Queue/Property helpers now work with the various
promise helpers (e.g.all
andrace
)
waitForProperty value shorthand
0.8.16
- Allow passing a non-Function value to waitForProperty() as
a shortcut for waiting for the observed property to===
that value.
waitForProperty()
0.8.15
- Added waitForProperty() to pause execution until a property
on an Ember Object becomes a certain value.
waitForEvent() support for native DOM EventTargets
- waitForEvent() support for native DOM EventTargets
(instead of just Ember / jQuery objects) (#187)
encapsulated tasks
0.8.12
- Officially release and document "Encapsulated Tasks", which
are tasks that can maintain/mutate their own state without
having direct access to the host object's state. In conjunction
with Derived State, this allows for some nice patterns for
containing state/logic/mutations within the tasks, rather
than requiring that state/events generated by tasks live on /
bleed into the host objects.
more helpful error messages
0.8.7
- Added helpful error when improperly trying to perform a
task viathis.taskName.perform()
cancelation .debug()ging
0.8.6
- Add
.debug()
Task Modifier and EmberENV.DEBUG_TASKS to log
the reason a task is canceled, e.g. "TaskInstance 'doStuff' was
canceled because the object it lives on was destroyed or unrendered"
better cancelation messaging
0.8.3
- Added informative messages as to the root cause of a
TaskCancelation, e.g.
"TaskInstance 'doStuff' was canceled because .cancel() was explicitly called"
"TaskInstance 'doStuff' was canceled because .cancelAll() was explicitly called on the Task"
"TaskInstance 'doStuff' was canceled because it belongs to a 'restartable' Task that was .perform()ed again"
as-sync-as-reasonable
0.8.2
- Reverted some of the changes introduced in 0.8.0; in particular,
while the first "slice" of a task function executes synchronously
when performed, advancing the task is deferred to a run loop queue.
This fixes some regressions caused by the overzealous
as-sync-as-possible scheduling introduced in 0.8.0
(#148, #138)