{"action":"created","issue":{"url":"https://api.github.com/repos/docker/docker/issues/19071","labels_url":"https://api.github.com/repos/docker/docker/issues/19071/labels{/name}","comments_url":"https://api.github.com/repos/docker/docker/issues/19071/comments","events_url":"https://api.github.com/repos/docker/docker/issues/19071/events","html_url":"https://github.com/docker/docker/pull/19071","id":124884207,"number":19071,"title":"Enable incremental builds","user":{"login":"icecrime","id":1564054,"avatar_url":"https://avatars.githubusercontent.com/u/1564054?v=3","gravatar_id":"","url":"https://api.github.com/users/icecrime","html_url":"https://github.com/icecrime","followers_url":"https://api.github.com/users/icecrime/followers","following_url":"https://api.github.com/users/icecrime/following{/other_user}","gists_url":"https://api.github.com/users/icecrime/gists{/gist_id}","starred_url":"https://api.github.com/users/icecrime/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/icecrime/subscriptions","organizations_url":"https://api.github.com/users/icecrime/orgs","repos_url":"https://api.github.com/users/icecrime/repos","events_url":"https://api.github.com/users/icecrime/events{/privacy}","received_events_url":"https://api.github.com/users/icecrime/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/docker/docker/labels/status/1-design-review","name":"status/1-design-review","color":"fef2c0"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":5,"created_at":"2016-01-05T02:49:27Z","updated_at":"2016-01-05T09:17:12Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/docker/docker/pulls/19071","html_url":"https://github.com/docker/docker/pull/19071","diff_url":"https://github.com/docker/docker/pull/19071.diff","patch_url":"https://github.com/docker/docker/pull/19071.patch"},"body":"Remove the `-a` build flag and introduce `-i` in order to reuse previously compiled dependencies. This is more about opening a discussion, because I don't understand why we wouldn't be doing this.\r\n\r\nFrom the [Go documentation](https://golang.org/cmd/go/#hdr-Compile_packages_and_dependencies):\r\n\r\n> The -i flag installs the packages that are dependencies of the target.\r\n\r\nThis is the difference it makes for me:\r\n\r\n```\r\n# First compilation\r\nroot@d6d1ae70e97e:/go/src/github.com/docker/docker# time hack/make.sh binary\r\n\r\nbundles/1.10.0-dev already exists. Removing.\r\n\r\n---> Making bundle: binary (in bundles/1.10.0-dev/binary)\r\nBuilding: bundles/1.10.0-dev/binary/docker-1.10.0-dev\r\nCreated binary: bundles/1.10.0-dev/binary/docker-1.10.0-dev\r\n\r\n\r\nreal    0m52.216s\r\nuser    1m52.800s\r\nsys     0m5.400s\r\n```\r\n\r\n```\r\n# Second compilation\r\nroot@d6d1ae70e97e:/go/src/github.com/docker/docker# time hack/make.sh binary\r\n\r\nbundles/1.10.0-dev already exists. Removing.\r\n\r\n---> Making bundle: binary (in bundles/1.10.0-dev/binary)\r\nBuilding: bundles/1.10.0-dev/binary/docker-1.10.0-dev\r\nCreated binary: bundles/1.10.0-dev/binary/docker-1.10.0-dev\r\n\r\n\r\nreal    0m10.145s\r\nuser    0m18.968s\r\nsys     0m1.144s\r\n```\r\n\r\nAs far as I can tell, updating a source file does trigger a rebuild of the impacted dependency as expected.\r\n\r\nOne thing we might want to do if we decide to proceed with the merge is to ensure that the release script starts by cleaning previously compiled dependencies (or adds a `-a`).\r\n\r\nPing @tianon @jfrazelle!"},"comment":{"url":"https://api.github.com/repos/docker/docker/issues/comments/168941543","html_url":"https://github.com/docker/docker/pull/19071#issuecomment-168941543","issue_url":"https://api.github.com/repos/docker/docker/issues/19071","id":168941543,"user":{"login":"vdemeester","id":6508,"avatar_url":"https://avatars.githubusercontent.com/u/6508?v=3","gravatar_id":"","url":"https://api.github.com/users/vdemeester","html_url":"https://github.com/vdemeester","followers_url":"https://api.github.com/users/vdemeester/followers","following_url":"https://api.github.com/users/vdemeester/following{/other_user}","gists_url":"https://api.github.com/users/vdemeester/gists{/gist_id}","starred_url":"https://api.github.com/users/vdemeester/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/vdemeester/subscriptions","organizations_url":"https://api.github.com/users/vdemeester/orgs","repos_url":"https://api.github.com/users/vdemeester/repos","events_url":"https://api.github.com/users/vdemeester/events{/privacy}","received_events_url":"https://api.github.com/users/vdemeester/received_events","type":"User","site_admin":false},"created_at":"2016-01-05T09:17:12Z","updated_at":"2016-01-05T09:17:12Z","body":"Oh nice :wink: LGTM 🐸"}}