-
Notifications
You must be signed in to change notification settings - Fork 180
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
Putting asv.conf.json on project top level #308
Conversation
@@ -181,11 +181,11 @@ def get_repo(conf): | |||
if conf.dvcs is not None: | |||
for cls in util.iter_subclasses(Repo): | |||
if getattr(cls, 'dvcs') == conf.dvcs: | |||
return cls(conf.repo, conf.project) | |||
return cls(conf.repo, conf.mirror_dir) |
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 seems like an API change -- I think if conf.mirror_dir
is not provided, it should fall back to the value of conf.project
, whereas it appears that now it will default to (the literal) "project".
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.
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.
It probably doesn't matter, but it seems relatively cheap to maintain the old behavior here so we probably should.
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.
Ok, changed the default value.
e7629af
to
79cd793
Compare
One alternative to |
In the alternative solution, the project url becomes a local filesystem path, right. Doesn't that then mean the responsibility is on the user (or something outside of asv) to make sure that repo is updated? As it stands, asv handles pulling from a remote repo. |
It's the user's responsibility to update the source repo always when using a local path. |
Sorry -- that's right: I haven't used local paths much myself, but that seems like the right thing to do. (i.e. asv manages it entirely or the user manages it and asv treats it as "read-only"). |
Yes, the effect in the end is the same as if there was no mirror repository when the path is local. The only difference AFAICS is that you can't use the |
Actually, it probably doesn't hurt to have both |
Dropped the |
Planning to merge soon. |
I think the Python 2.6 failure on AppVeyor is just a spurious something... I've restarted. |
The appveyor builds have sporadic failures with "error 5: permission denied" on rmtree-ing build environments. We have the one knownfailure test that exhibits this reliably on some (but not all) python versions, but apparently similar issue can appear elsewhere. It's unclear how specific this is to appveyor; I don't recall being able to repro them locally, and don't have a VM at hand currently. gh-280 has some discussion. |
Putting asv.conf.json on project top level
Putting
asv.conf.json
on project repository top level has the advantage that runningasv
commands no longer requirescd
to somewhere else. However, it usually also requires putting the repository clone to somewhere else thanconf.project
.mirror_dir
for specifying the mirror location. Change the default value be"project"
--- the mirror is a bare repository, so looking inside it is not usually useful.asv quickstart
provide also a default config more suitable for putting on project top level.This also requires gh-307 to work