Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mongoose workshop #30

Open
yocontra opened this issue Dec 11, 2013 · 1 comment
Open

Mongoose workshop #30

yocontra opened this issue Dec 11, 2013 · 1 comment

Comments

@yocontra
Copy link

I made a mongoose workshop using workshopper + some modifications

https://github.com/wearefractal/mongoose-adventure

I think some of these modifications can be brought back.

  1. Wrote my own call tracker that writes all calls + stacks to a file.
  2. Wrote an execWrap that sets which functions we want to monitor
  3. Hacked in a setup command that lets me run a one-time setup script before they start the workshop (starts a mongo instance on a certain port)
  4. Added ignoreStdout option. This was a total hack because 99% of the workshops didn't care about stdout they just needed to check the db for records after process.exit() was called
  5. I fixed up some of the error reporting to work with the non-diff errors I'm putting out

You can see an example of what one of my verification scripts looks like here:

https://github.com/wearefractal/mongoose-adventure/blob/master/problems/connecting/setup.js

Making a workshop that wasn't based around stdin/stdout was really difficult. I think it's a common use case and we should try to smooth out the process.

Thoughts?

@yocontra
Copy link
Author

I've also been working on this library called puzzle-box for running solution files and tracking calls within a contextify vm. This would be helpful if we switched (or allowed the option) of doing it in the same process which provides a lot of advantages.

https://github.com/wearefractal/puzzle-box

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

No branches or pull requests

1 participant