{"action":"created","issue":{"url":"https://api.github.com/repos/facebook/yoga/issues/304","repository_url":"https://api.github.com/repos/facebook/yoga","labels_url":"https://api.github.com/repos/facebook/yoga/issues/304/labels{/name}","comments_url":"https://api.github.com/repos/facebook/yoga/issues/304/comments","events_url":"https://api.github.com/repos/facebook/yoga/issues/304/events","html_url":"https://github.com/facebook/yoga/pull/304","id":197575428,"number":304,"title":"Adds Javascript Support","user":{"login":"arcanis","id":1037931,"avatar_url":"https://avatars.githubusercontent.com/u/1037931?v=3","gravatar_id":"","url":"https://api.github.com/users/arcanis","html_url":"https://github.com/arcanis","followers_url":"https://api.github.com/users/arcanis/followers","following_url":"https://api.github.com/users/arcanis/following{/other_user}","gists_url":"https://api.github.com/users/arcanis/gists{/gist_id}","starred_url":"https://api.github.com/users/arcanis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/arcanis/subscriptions","organizations_url":"https://api.github.com/users/arcanis/orgs","repos_url":"https://api.github.com/users/arcanis/repos","events_url":"https://api.github.com/users/arcanis/events{/privacy}","received_events_url":"https://api.github.com/users/arcanis/received_events","type":"User","site_admin":false},"labels":[{"id":196858700,"url":"https://api.github.com/repos/facebook/yoga/labels/CLA%20Signed","name":"CLA Signed","color":"009900","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":19,"created_at":"2016-12-26T10:58:46Z","updated_at":"2016-12-26T19:15:10Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/facebook/yoga/pulls/304","html_url":"https://github.com/facebook/yoga/pull/304","diff_url":"https://github.com/facebook/yoga/pull/304.diff","patch_url":"https://github.com/facebook/yoga/pull/304.patch"},"body":"- As mentioned in the title, this PR adds Javascript support to Yoga. Two different builds are included in this PR thanks to [nbind](https://github.com/charto/nbind), which conveniently allow to target both Node.js' native addons and browser environments via asmjs with approximately the same codebase. That should solve #215.\r\n\r\n- All tests successfully pass on both codepaths. You can run `yarn test:all` inside the `javascript` directory to test it.\r\n\r\n- Because of a bug in nbind, the [following PR](https://github.com/charto/nbind/pull/57) needs to be merged and a new version released before this one can be safely merged as well.\r\n\r\n- I had to use `double` types instead of `float` in the C++ bindings because of an Emscripten [bug](https://github.com/kripken/emscripten/issues/3592) where symbols aren't correctly exported when using floats.\r\n\r\n- There's some tweaks to do before this PR is 100% ready to merge, but I wanted to have your opinion first. What do you think of this?\r\n\r\n--- \r\n\r\nTo do:\r\n\r\n- [ ] Ensure that Travis run\r\n- [ ] Add missing functions\r\n- [ ] Check measurement functions\r\n\r\n- [x] Recursive frees"},"comment":{"url":"https://api.github.com/repos/facebook/yoga/issues/comments/269235758","html_url":"https://github.com/facebook/yoga/pull/304#issuecomment-269235758","issue_url":"https://api.github.com/repos/facebook/yoga/issues/304","id":269235758,"user":{"login":"mikearmstrong001","id":4076190,"avatar_url":"https://avatars.githubusercontent.com/u/4076190?v=3","gravatar_id":"","url":"https://api.github.com/users/mikearmstrong001","html_url":"https://github.com/mikearmstrong001","followers_url":"https://api.github.com/users/mikearmstrong001/followers","following_url":"https://api.github.com/users/mikearmstrong001/following{/other_user}","gists_url":"https://api.github.com/users/mikearmstrong001/gists{/gist_id}","starred_url":"https://api.github.com/users/mikearmstrong001/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mikearmstrong001/subscriptions","organizations_url":"https://api.github.com/users/mikearmstrong001/orgs","repos_url":"https://api.github.com/users/mikearmstrong001/repos","events_url":"https://api.github.com/users/mikearmstrong001/events{/privacy}","received_events_url":"https://api.github.com/users/mikearmstrong001/received_events","type":"User","site_admin":false},"created_at":"2016-12-26T19:15:10Z","updated_at":"2016-12-26T19:15:10Z","body":"@arcanis the current build seems to be ignoring the \r\n\r\n```\r\n            \"cflags\": [\r\n                \"-s\", \"PRECISE_F32=1\"\r\n            ],\r\n\r\n            \"ldflags\": [\r\n                \"--memory-init-file\", \"0\",\r\n                \"-s\", \"TOTAL_MEMORY=134217728\",\r\n                \"-s\", \"PRECISE_F32=1\"\r\n            ]\r\n```\r\n\r\nfound via `--verbose` on the build command line \r\n\r\nI definitely would like to get like to get a build step in place to prepare a bundle for use in browser as part of this PR or a quick follow up.\r\n"}}
{"actor":{"display_login":"mikearmstrong001"}}