Page MenuHomePhabricator

Arcanist could query version information via Conduit
Closed, WontfixPublic

Description

Developers can be lazy and/or just not care about running an up-to-date version of Arcanist. OTOH our Phabricator install is usually pretty-much up-to-date.

Whenever devs email me with errors they are having with Arcanist, my number one advice is to tell them to update. It would be useful if arc could perform a conduit call to query if some feature is available in a newer version. This obviously won't work for all features, but seems feasible for:

  • Does a linter exist?
  • Does a linter code exist?
  • Does a command exist?

Event Timeline

joshuaspence assigned this task to epriestley.
joshuaspence raised the priority of this task from to Needs Triage.
joshuaspence updated the task description. (Show Details)
joshuaspence added projects: Arcanist, Conduit.
joshuaspence added subscribers: joshuaspence, epriestley.

Actually, if this seems reasonable then I should be able to work on it.

These things seem kind of rare/weird/dependent on external things? Maybe I'm just not imagining the kinds of issues users are running into.

If we did something dead simple like:

  • When an exception occurs, check if arcanist/ is on master, a valid Git repo, and behind origin/master.
  • If it is, print out an additional message, after the existing "run with --trace for a full trace", like:
IMPORTANT: Your copy of arcanist is out of date. Run arc upgrade to update it. Updating often resolves problems.

Would that get us like 20% of the way there or like 80%?

I guess maybe that would get us half-way there. As in, it would allow us to say that upgrading might solve the problem, whereas a Conduit call could allow us to say whether upgrading would solve the problem. Just not sure if its worth the effort.