-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update manifests by default #102
Update manifests by default #102
Conversation
FYI we should do the package operations in a separate Julia process. So for example, you'd have something like this: function update_manifests()
list_of_manifest_files = blah blah blah # use walkdir
for f in list_of_manifest_files
@info "Updating manifest: $f"
run(`$(Base.julia_cmd()) -e 'import Pkg; Pkg.activate("$(f)")'; Pkg.update()`)
end
end |
Also, we'll need at least some kind of test |
Can you explain why this needs to happen in a new process? |
Here are some snippets from Kristoffer in a Slack conversation in #pkg-usage on Thursday:
|
Works for me 😄 |
Here's a question for you. If both
|
Hm, I'm not sure if there's a difference. But AFAIK, just doing |
104: Automatically update all Manifest files r=DilumAluthge,christopher-dG a=DilumAluthge Closes #102 This is an expanded version of the excellent work by @christopher-dG in #102. This PR adds the following on top of the work in #102: 1. Adds tests. 2. Makes sure that we support custom registries. 3. Run jobs in a "sandbox" that does not have access to most environment variables. That way, if a package has a malicious build step, for example, they cannot steal your GitHub token. Co-authored-by: Dilum Aluthge <[email protected]>
This finds all Manifest.toml files, activates their environments, and runs
Pkg.update
.There is a platform-specific
find
invocation in there, I suppose it should probably go away if we have something like #85. It could be implemented instead withwalkdir
or Glob.jl (although vtjnash/Glob.jl#19 is needed).