Well, if I may be candid, the reason I (and most others) go around creating issues for XDG basedir compliance is because we don’t like having files in our home directory that don’t need to be there. I know this is a shallow concern, but you’d be surprised how many people are bothered by this. It’s a similar situation on Windows—applications putting folders in the user directory or Documents is largely frowned upon, as they should be using APPDATA (which Arcanist does).
There is an entire Arch wiki page dedicated to applications that don’t comply to the spec by default, which offers solutions to resolve the problem for some of them. Most of these applications already have issues on their bug trackers for spec support. For many noncompliant applications, this can be solved by setting an environment variable that specifies where data should be stored, but Arcanist has no such environment variable that can be set. This means that, if I wish to use Arcanist, I am required to keep an additional file in my home directory.
It’s clear that you don’t want additional code complexity. I definitely understand this, but I am of the opinion that a few extra lines of code is justifiable for this purpose. In addition, this doesn’t need to be a permanent change, in that Arcanist doesn’t need to continue supporting
~/.arcrc forever if this patch is applied. The extra behavior is purely to continue supporting existing configurations, and can be omitted if desired. After some time, many users will have their configurations in the correct location, and Arcanist can remove the additional behavior in favor of only supporting the “correct” location for
Alternatively, an even easier solution would be to have an environment variable like
ARCANIST_CONFIG_HOME that specifies the location of the Arcanist config file. This wouldn’t be compliant with the spec, but would be better than keeping the current behavior as is.