[PATCH 2 of 2] templater: make label() just fail if ui object isn't available

Pierre-Yves David pierre-yves.david at ens-lyon.org
Wed Mar 9 13:18:02 EST 2016



On 03/09/2016 03:34 PM, Yuya Nishihara wrote:
> # HG changeset patch
> # User Yuya Nishihara <yuya at tcha.org>
> # Date 1457535566 -32400
> #      Wed Mar 09 23:59:26 2016 +0900
> # Node ID ed81b4ff8cf1af457072eaff8ae055943562b624
> # Parent  62d64dedd1098442819b8f16ae7a7848e45d3a59
> templater: make label() just fail if ui object isn't available
>
> Silent failure hides bugs and makes it harder to track down the issue. It's
> worse than raising exception.
>
> In future patches, I plan to sort out template functions that require 'ui',
> 'ctx', 'fctx', etc. so that incompatible functions are excluded and the doc can
> say in which context these functions are usable.
>
>    @templatefunc('label', requires=('ui',))
>    def label(context, mapping, args):

Should we introduce a devel warning for one version to let buggy 
template gracefully recover in the wild?

-- 
Pierre-Yves David


More information about the Mercurial-devel mailing list