Implement Node.js for Linux#306
Conversation
to subprocess stdin.
to subprocess stdin.
Conflicts: appshell/config.h
…. fix for Brackets-node path.
There was a problem hiding this comment.
These defines are presently unused but will likely be used by GTK calls in the same way they are used on Windows & OS X. So in the meantime, I have simply commented them out.
|
+1 to merge. Grunt |
|
Thanks @timburgess. We still need to wait for #305 to land. I'll merge this pull soon after. |
There was a problem hiding this comment.
I'll add a TODO here and add a task to the user story.
|
I was able to build Brackets with this branch and the -3 is definitely gone! 👍 |
|
Merging. Awesome work @timburgess! Also thanks for reviewing my gyp and grunt changes. Thanks @JeffryBooher for confirming the bug fix. This. Is. Big. 🙌 |
Implement Node.js for Linux
|
No problem. Glad it is now in master and hopefully should kill a lot of the recent Linux functionality questions.. |
|
@jasonsanjose I'd value being listed in the Sprint 30 Release Notes as a contributor ;-) |
|
Yikes! I guess I missed this one because I re-submitted the pull request. Sorry about that! I've updated the release notes https://github.com/adobe/brackets/wiki/Release-Notes:-Sprint-30. |
|
FYI, if what happened is that you did a merge/squash and so lost the original commit, in future you can specify |
|
Nope, wasn't a squash. I think we normally just look at the pull request author vs. the commit author. |
|
Ah. Maybe when reopening a pull request, we could put the original author in the title of the new one just so we'll notice it when scanning for the release notes. |
|
Good idea! |
Implement Node.js for Linux
Based on an earlier pull request from @timburgess, #278. This also includes commits from #305 that fix the installer build. Finally, I've updated the gyp and grunt scripts to include node.
Original description:
This is some initial work in getting the node process up & running in Linux.
With this code, brackets-shell kicks off a mutexed launch thread that starts the Node executable in a subprocess.
As per the latest linux setup script, Node is launched from brackets-shell/deps/node/bin/node.
A file descriptor in the startup thread is piped to STDIN in the subprocess.
I have experimented with passing input to the node process to eval(). This works but Node appears to buffer it's output if it detects that STDIN is not a terminal. If I run node in interactive mode i.e. 'node -i' it stops buffering but produces a lot more output than I think is wanted.
I'd appreciate getting some feedback on how to run Node as then I can add code to setup a pipe from the subprocess STDOUT to a thread that reads the output.