Skip to content
This repository has been archived by the owner on Jun 22, 2018. It is now read-only.

Do is unresponsive while a verb is being executed #1

Closed
wekyle opened this issue May 4, 2016 · 2 comments
Closed

Do is unresponsive while a verb is being executed #1

wekyle opened this issue May 4, 2016 · 2 comments
Milestone

Comments

@wekyle
Copy link
Collaborator

wekyle commented May 4, 2016

Beacuse of the way the verb runner is written (that is, synchronously), Do is unable to handle any incoming requests while it's executing a verb sequence.

This may cause problems with Slack connectivity and state when running very long verb sequences.

We should refactor the verb runner to an asynchronous shell execution API, being careful to preserve the waterfall pattern of a sequence's execution.

@wekyle wekyle modified the milestones: 1.0.0, 1.1.0 May 4, 2016
@wekyle
Copy link
Collaborator Author

wekyle commented May 10, 2016

https://www.npmjs.com/package/promise-waterfall

This appears to solve this problem. Moving issue to 1.0.0 milestone!

@wekyle wekyle modified the milestones: 1.0.0, 1.1.0 May 10, 2016
@wekyle
Copy link
Collaborator Author

wekyle commented May 17, 2016

Ended up writing a custom promise 'unwrapper' to support creating an array of promises that execute in a waterfall fashion, while still returning the outputs like a map function would, in dc418f3.

Behind the scenes, we're using child_process.exec instead of child_process.spawnSync now.

Fixed!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

1 participant