{"action":"created","issue":{"url":"https://api.github.com/repos/JuliaLang/julia/issues/13458","labels_url":"https://api.github.com/repos/JuliaLang/julia/issues/13458/labels{/name}","comments_url":"https://api.github.com/repos/JuliaLang/julia/issues/13458/comments","events_url":"https://api.github.com/repos/JuliaLang/julia/issues/13458/events","html_url":"https://github.com/JuliaLang/julia/issues/13458","id":109878182,"number":13458,"title":"Pkg.build should launch a separate Julia process?","user":{"login":"stevengj","id":2913679,"avatar_url":"https://avatars.githubusercontent.com/u/2913679?v=3","gravatar_id":"","url":"https://api.github.com/users/stevengj","html_url":"https://github.com/stevengj","followers_url":"https://api.github.com/users/stevengj/followers","following_url":"https://api.github.com/users/stevengj/following{/other_user}","gists_url":"https://api.github.com/users/stevengj/gists{/gist_id}","starred_url":"https://api.github.com/users/stevengj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stevengj/subscriptions","organizations_url":"https://api.github.com/users/stevengj/orgs","repos_url":"https://api.github.com/users/stevengj/repos","events_url":"https://api.github.com/users/stevengj/events{/privacy}","received_events_url":"https://api.github.com/users/stevengj/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/JuliaLang/julia/labels/packages","name":"packages","color":"02e10c"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-10-05T20:22:48Z","updated_at":"2015-10-06T00:59:46Z","closed_at":null,"body":"I'm wondering if `Pkg.update` should launch a separate Julia process, so that it builds in a \"clean\" Julia environment, similar to `Base.compilecache`.\r\n\r\nOnce you `import Foo`, subsequent `import Foo` calls in the same Julia process just load the `Foo` you already imported, *even if Foo has changed* on disk.   This has caused me lots of problems in `Pkg.update`, apparently because something like the following sequence of events occurs:\r\n\r\n1. `BinDeps` or `Conda` was already loaded in a Julia session\r\n2.  `Pkg.update` updates `BinDeps` or `Conda`\r\n3. Another package is updated and tries to run `Pkg.build` using the new `BinDeps` or `Conda`\r\n4. This fails, because either (a) precompilation on BinDeps fails because of #12508 or (b) it's not precompiled (`Conda` isn't, currently) but `Pkg.build` expects some feature of the latest version that is not present in the already-imported version\r\n\r\nThis would be solved by having `Pkg.update` launch a new Julia process.\r\n\r\ncc: @wildart, @StefanKarpinski "},"comment":{"url":"https://api.github.com/repos/JuliaLang/julia/issues/comments/145712856","html_url":"https://github.com/JuliaLang/julia/issues/13458#issuecomment-145712856","issue_url":"https://api.github.com/repos/JuliaLang/julia/issues/13458","id":145712856,"user":{"login":"stevengj","id":2913679,"avatar_url":"https://avatars.githubusercontent.com/u/2913679?v=3","gravatar_id":"","url":"https://api.github.com/users/stevengj","html_url":"https://github.com/stevengj","followers_url":"https://api.github.com/users/stevengj/followers","following_url":"https://api.github.com/users/stevengj/following{/other_user}","gists_url":"https://api.github.com/users/stevengj/gists{/gist_id}","starred_url":"https://api.github.com/users/stevengj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/stevengj/subscriptions","organizations_url":"https://api.github.com/users/stevengj/orgs","repos_url":"https://api.github.com/users/stevengj/repos","events_url":"https://api.github.com/users/stevengj/events{/privacy}","received_events_url":"https://api.github.com/users/stevengj/received_events","type":"User","site_admin":false},"created_at":"2015-10-06T00:59:46Z","updated_at":"2015-10-06T00:59:46Z","body":"That's true, you could do it just on `Pkg.build`."}}