{"action":"created","issue":{"url":"https://api.github.com/repos/google/google-api-nodejs-client/issues/1169","repository_url":"https://api.github.com/repos/google/google-api-nodejs-client","labels_url":"https://api.github.com/repos/google/google-api-nodejs-client/issues/1169/labels{/name}","comments_url":"https://api.github.com/repos/google/google-api-nodejs-client/issues/1169/comments","events_url":"https://api.github.com/repos/google/google-api-nodejs-client/issues/1169/events","html_url":"https://github.com/google/google-api-nodejs-client/pull/1169","id":322967368,"number":1169,"title":"refactor: isolate the googleapis-common module","user":{"login":"JustinBeckwith","id":534619,"avatar_url":"https://avatars2.githubusercontent.com/u/534619?v=4","gravatar_id":"","url":"https://api.github.com/users/JustinBeckwith","html_url":"https://github.com/JustinBeckwith","followers_url":"https://api.github.com/users/JustinBeckwith/followers","following_url":"https://api.github.com/users/JustinBeckwith/following{/other_user}","gists_url":"https://api.github.com/users/JustinBeckwith/gists{/gist_id}","starred_url":"https://api.github.com/users/JustinBeckwith/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JustinBeckwith/subscriptions","organizations_url":"https://api.github.com/users/JustinBeckwith/orgs","repos_url":"https://api.github.com/users/JustinBeckwith/repos","events_url":"https://api.github.com/users/JustinBeckwith/events{/privacy}","received_events_url":"https://api.github.com/users/JustinBeckwith/received_events","type":"User","site_admin":false},"labels":[{"id":341622627,"url":"https://api.github.com/repos/google/google-api-nodejs-client/labels/cla:%20yes","name":"cla: yes","color":"009800","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2018-05-14T20:24:07Z","updated_at":"2018-05-14T20:55:10Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/google/google-api-nodejs-client/pulls/1169","html_url":"https://github.com/google/google-api-nodejs-client/pull/1169","diff_url":"https://github.com/google/google-api-nodejs-client/pull/1169.diff","patch_url":"https://github.com/google/google-api-nodejs-client/pull/1169.patch"},"body":"This change entirely isolates the shared code required for all APIs from the rest of the module.  It still includes these files in the overall build, but also introduces a lower build specifically for the new module. This is another step on the way to #806. "},"comment":{"url":"https://api.github.com/repos/google/google-api-nodejs-client/issues/comments/388959686","html_url":"https://github.com/google/google-api-nodejs-client/pull/1169#issuecomment-388959686","issue_url":"https://api.github.com/repos/google/google-api-nodejs-client/issues/1169","id":388959686,"user":{"login":"JustinBeckwith","id":534619,"avatar_url":"https://avatars2.githubusercontent.com/u/534619?v=4","gravatar_id":"","url":"https://api.github.com/users/JustinBeckwith","html_url":"https://github.com/JustinBeckwith","followers_url":"https://api.github.com/users/JustinBeckwith/followers","following_url":"https://api.github.com/users/JustinBeckwith/following{/other_user}","gists_url":"https://api.github.com/users/JustinBeckwith/gists{/gist_id}","starred_url":"https://api.github.com/users/JustinBeckwith/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JustinBeckwith/subscriptions","organizations_url":"https://api.github.com/users/JustinBeckwith/orgs","repos_url":"https://api.github.com/users/JustinBeckwith/repos","events_url":"https://api.github.com/users/JustinBeckwith/events{/privacy}","received_events_url":"https://api.github.com/users/JustinBeckwith/received_events","type":"User","site_admin":false},"created_at":"2018-05-14T20:55:10Z","updated_at":"2018-05-14T20:55:10Z","author_association":"MEMBER","body":"Great questions! \r\n\r\n> Is the idea that googleapis-common would be published as a standalone package, and that this repo is now a monorepo?\r\n\r\nYES!\r\n\r\n> If so, let's use an established pattern of shared sub-module being in packages/googleapis-common subdirectory rather than ad-hoc src/shared.\r\n\r\nI'm 100% on board with that.  I am trying to make these changes incrementally.  Today, the top level build/test/publish commands will continue to work, exactly as they used to.  I'd like to propose landing this first, and working towards the properly named packages.  Mostly, I'm worried about breaking the top level build.\r\n\r\n> If monorepos are the way to go, have you considered using https://github.com/lerna/lerna?\r\n\r\nYup!  This is a point in time thing.  Once I get all the sub-packages working independently, we will remove the top level build and use something like lerna to orchestrate the publish and linking. \r\n\r\n> Oh, and next time, can you please sequester autogenerated code changes into a separate commit. Reviewing changes is a lot harder when manual changes are intermixed with gobs of generated changes.\r\n\r\nSorry!  Will do next time.  \r\n\r\n![shame](https://media.giphy.com/media/vX9WcCiWwUF7G/giphy.gif)\r\n\r\n\r\n"}}
{"actor":{"display_login":"JustinBeckwith"}}