How to set phases.publish = false on a repo or globally on Kallithea?

Mads Kiilerich mads at kiilerich.com
Mon Mar 27 22:02:57 UTC 2017


On 03/27/2017 06:38 PM, Long Vu wrote:
>>> Alternatively, just throwing an idea here, why Kallithea do not read
>>> the config under /etc/mercurial/hgrc.d/ and other locations in same
>>> order of precedence as the mercurial command line?
>>
>> One reason is that the Mercurial config structure also to some extent is
>> used when hosting Git repos in Kallithea. It would be weird if Mercurial
>> config options kicked in when using Git ... and almost equally weird if they
>> only applied to Mercurial repos. That could be solved somehow.
>>
> Huh, why does Git read Mercurial config?? I don't know Git that much
> but I would expect it also have its own config structure under /etc?


The "ui" table in the database contains entries that map directly to 
Mercurial config entries. (It would make more sense if it was called 
"config".) "ui" would be one reasonable value for ui_section for Mercurial.

Git itself does not read the "ui" table (and it is thus also out of the 
question that it should read Mercurial global config) but "hooks" 
entries are emulated for Git through a special Git hook (if I remember 
correctly). The entry for 'paths' '/' is also used for Kallithea 
globally ... so in that way the Mercurial-compatible settings is used 
for Git repos too.

So ... there are some dirty details. But we could perhaps keep Kallithea 
itself as before, while Mercurial could get additional configuration 
when invoked directly from Python (and perhaps and perhaps not when the 
hg command might be invoked from hooks).

I don't know which solution would be better:
* read all the same config files as Mercurial does and put db "ui" 
values on top of that
* read a custom Kallithea Mercurial config file and put db "ui" values 
on top of that
* put better UI on top of the "ui" table and just use that

/Mads


More information about the kallithea-general mailing list