{"action":"created","issue":{"url":"https://api.github.com/repos/meetecho/janus-gateway/issues/1029","repository_url":"https://api.github.com/repos/meetecho/janus-gateway","labels_url":"https://api.github.com/repos/meetecho/janus-gateway/issues/1029/labels{/name}","comments_url":"https://api.github.com/repos/meetecho/janus-gateway/issues/1029/comments","events_url":"https://api.github.com/repos/meetecho/janus-gateway/issues/1029/events","html_url":"https://github.com/meetecho/janus-gateway/pull/1029","id":264917119,"number":1029,"title":"Integrate support for building JavaScript modules within the build system","user":{"login":"cmacq2","id":13215950,"avatar_url":"https://avatars0.githubusercontent.com/u/13215950?v=4","gravatar_id":"","url":"https://api.github.com/users/cmacq2","html_url":"https://github.com/cmacq2","followers_url":"https://api.github.com/users/cmacq2/followers","following_url":"https://api.github.com/users/cmacq2/following{/other_user}","gists_url":"https://api.github.com/users/cmacq2/gists{/gist_id}","starred_url":"https://api.github.com/users/cmacq2/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/cmacq2/subscriptions","organizations_url":"https://api.github.com/users/cmacq2/orgs","repos_url":"https://api.github.com/users/cmacq2/repos","events_url":"https://api.github.com/users/cmacq2/events{/privacy}","received_events_url":"https://api.github.com/users/cmacq2/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":36,"created_at":"2017-10-12T12:10:33Z","updated_at":"2018-03-28T16:14:37Z","closed_at":"2017-10-20T15:38:06Z","author_association":"CONTRIBUTOR","pull_request":{"url":"https://api.github.com/repos/meetecho/janus-gateway/pulls/1029","html_url":"https://github.com/meetecho/janus-gateway/pull/1029","diff_url":"https://github.com/meetecho/janus-gateway/pull/1029.diff","patch_url":"https://github.com/meetecho/janus-gateway/pull/1029.patch"},"body":"Integrate support for building JavaScript modules within the build system\r\n\r\nBuilding JavaScript modules is opt-in, i.e. disabled by default.\r\nVarious 'flavours' of JavaScript module syntax are supported:\r\n\r\n - ECMAScript (es)\r\n - CommonJS (cjs)\r\n - Immediately Invoked Function Expression (iife)\r\n - Universal Module Definition (umd)\r\n\r\nTo enable a particular flavour one of the `--enable-javascript-*-module` flags may be passed with an argument of `yes` during `./configure`:\r\n\r\n - `--enable-javascript-es-module`\r\n - `--enable-javascript-common-js-module`\r\n - `--enable-javascript-iife-module`\r\n - `--enable-javascript-umd-module`\r\n\r\nAdditionally, `configure.ac` is further extended to look for an available version of `npm` if any of the supported module flavours are enabled. If no `npm` can be found and a module flavour is enabled, `./configure` will now fail with an error message accordingly. *Nota bene*: this check for `npm` applies if and only if modules are actually enabled, therefore by default Janus will still build without `npm`.\r\n\r\nWhen modules are enabled, generated modules will be built in `./npm/bundles` (during `make`) and installed to `$PREFIX/share/janus/javascript` (during `make install`). Additionally `janus.js` itself is now always installed to `$PREFIX/share/janus/javascript` as well (even if no modules are enabled). The idea is that `$PREFIX/share/janus/javascript` acts as the installation location for the generically re-usable JavaScript libraries which are part of Janus."},"comment":{"url":"https://api.github.com/repos/meetecho/janus-gateway/issues/comments/376945354","html_url":"https://github.com/meetecho/janus-gateway/pull/1029#issuecomment-376945354","issue_url":"https://api.github.com/repos/meetecho/janus-gateway/issues/1029","id":376945354,"user":{"login":"lminiero","id":3684796,"avatar_url":"https://avatars1.githubusercontent.com/u/3684796?v=4","gravatar_id":"","url":"https://api.github.com/users/lminiero","html_url":"https://github.com/lminiero","followers_url":"https://api.github.com/users/lminiero/followers","following_url":"https://api.github.com/users/lminiero/following{/other_user}","gists_url":"https://api.github.com/users/lminiero/gists{/gist_id}","starred_url":"https://api.github.com/users/lminiero/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/lminiero/subscriptions","organizations_url":"https://api.github.com/users/lminiero/orgs","repos_url":"https://api.github.com/users/lminiero/repos","events_url":"https://api.github.com/users/lminiero/events{/privacy}","received_events_url":"https://api.github.com/users/lminiero/received_events","type":"User","site_admin":false},"created_at":"2018-03-28T16:14:37Z","updated_at":"2018-03-28T16:14:37Z","author_association":"OWNER","body":"As I was saying on the group, it would be fine by me, but we'd have to change the [description](https://github.com/meetecho/janus-gateway/blob/master/npm/package.json#L3) to clarify the `package.json` file is for the JS hooks and not Janus itself. Suggestions on what to put there are welcome."}}
{"actor":{"display_login":"lminiero"}}