(sorry for the format problem again) > (unrelated, but why do your messages include HTML entities?) (Sorry, I forgot to forbid the default formatter of my email client.) > My main fear is that this might have some unintended consequences. Of course. > I wouldn't want to rely on my understanding of vc either. While it > would be easy to add a dynamic variable to indicate this behaviour, I am > careful not to overburden the abstractions that VC provides. Understand. I read the docstring of `vc-pull', which is used by `package-vc-upgrade'. It says: -------------------------------------------------------------------------- "Update the current fileset or branch. You must be visiting a version controlled file, or in a `vc-dir' buffer. ..." -------------------------------------------------------------------------- But `vc-dir' is a user command other than a function, it will open a new buffer and return nil. In consideration of the fact that `vc-pull' is an async function, it is not easy for us to kill the `vc-diff' buffer right after the pull operation. As you suggested earlier, maybe we need to modify vc.el, making the restriction looser? Also, I noticed that the maintainer bind `default-directory' in this commit: https://github.com/emacs-mirror/emacs/commit/7ab556b57631cb28db86b89ba296bc0599d9a399 Improve robustness of 'package-vc-update' Regards