Releases: machty/ember-concurrency
Releases · machty/ember-concurrency
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)
0.8.1
perf + sync start
0.8.0
- POSSIBLE BREAKING CHANGE: the internal task scheduler
has been rewritten to be more performant, but to also
more immediately start executing task functions. Prior
to this version,perform()
ing a task wouldn't actually
start executing the task function until theactions
queue
on the run loop; this behavior was inconsistent with the timing
of async functions, and meant that certain lifecycle hooks
that depended on logic being run synchronously couldn't be
used with ember-concurrency Tasks (because they already
missed their window of execution). This is unlikely to
break anyone's apps, but it's possible some apps out there
have subtle timing dependencies on tasks running within
run loop queues, so it's better to announce this as a possible
breaking change. (#107) - Derived state: Task Instances now have an additional
isSuccessful
andisError
property (#119) - Derived state: Tasks expose
performCount
that tracks
how many times a task has been performed. - waitForEvent and waitForQueue for pausing the task until
a jQuery / Ember event occurs, or until a particular
run loop queue has been reached.