-
-
Notifications
You must be signed in to change notification settings - Fork 5.7k
test: Automatically install Revise for revise- targets
#58559
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
Conversation
This was supposed to be in #58559, but I accidentally forgot to check it in.
| $(call PRINT_JULIA, $(call spawn,RELOCATEDEPOT="" $(JULIA_EXECUTABLE)) $(TEST_JULIA_OPTIONS) ./runtests.jl $(TEST_SCRIPT_OPTIONS) $@) | ||
|
|
||
| revise-relocatedepot: revise-% : | ||
| revise-relocatedepot: revise-% : dep_revise |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This doesn't appear to be a legal target?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If you're talking about the dependency, you're correct, I ended up deciding it should do this on the julia side - I'll remove the typo. If you're talking about the two :, that's apparently something called a static pattern rule, which I didn't know about.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The static pattern is fine (and pre existing). It is a convenience feature for avoiding calling subst in this example
This was supposed to be in #58559, but I accidentally forgot to check it in.
Our docsystem has the ability to install a local working copy of documenter, complete with manifest/project and local depot to keep things isolated from user packages. I recently made all of this work out of tree, and in #58559 added the same mechanism for the installation of revise in test-revise-*. However, then I realized that the docsystem also has the ability to install a copy of Reivse. Clearly a third copy of all of this is excessive. Instead, unify all the manifests into `deps/jlutilities`, so that the same Revise project/manifest is used for both doc and test. Similarly, only use one depot at `buildroot/deps/jlutilities/depot` that both systems share.
Our docsystem has the ability to install a local working copy of documenter, complete with manifest/project and local depot to keep things isolated from user packages. I recently made all of this work out of tree, and in #58559 added the same mechanism for the installation of revise in test-revise-*. However, then I realized that the docsystem also has the ability to install a copy of Reivse. Clearly a third copy of all of this is excessive. Instead, unify all the manifests into `deps/jlutilities`, so that the same Revise project/manifest is used for both doc and test. Similarly, only use one depot at `buildroot/deps/jlutilities/depot` that both systems share.
This fixes #50256, by automatically installing a private copy of
Reviseinto test/deps, similar to the mechanism for Documenter in make.jl. As in #58529, I made sure that this worked with both in-tree and out-of-tree builds.