lukeed / taskr

A fast, concurrency-focused task automation tool.
MIT License
2.53k stars 74 forks source link

Implemented isolated context for Fly plugins #198

Closed hzlmn closed 8 years ago

hzlmn commented 8 years ago

Basically it isolate each plugin with shallow copy of fly instance, then it get differences of original fly instance and context that was used by plugins.

Then safely inject changes, and if changes was produced on sealed prop (like root, because we dont want anyone to rewrite this context) it's throws an exception

@lukeed @jbucaran

hzlmn commented 8 years ago

Seems like there are some minor issues with tape like tests without end and plan count missmatch. Should I fix it?

lukeed commented 8 years ago

@hzlmn The non-plugin tests should still be passing. I just did a fresh clone & install and the plans & counts are fine.

What it probably signifies is that your promises aren't resolving properly, and so the test never "knows" it's finished.

hzlmn commented 8 years ago

@lukeed What promises do you mean?

hzlmn commented 8 years ago

@lukeed My bad, I added t.end() in async tests, and that is why tape skipped async tests.

hzlmn commented 8 years ago

I am closing this. I gonna submit new one a bit cleaner and with some improvements

lukeed commented 8 years ago

@hzlmn Hey sorry, I didn't have a whole lot of spare time to review it. I'll be better about your next one