Mercurial > hg
comparison tests/test-devel-warnings.t @ 34947:ff2110eadbfa stable
configitems: relax warning about unwanted default value
The original condition was a bit harsh for extension authors since third-party
extensions need to preserve compatibility with older Mercurial versions, where
no defaults would be loaded from the configtable. So let's silence the warning
if the given default value matches, which should be harmless.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Tue, 31 Oct 2017 22:37:30 +0900 |
parents | 85a2db47ad50 |
children | 15cfd343d3a9 |
comparison
equal
deleted
inserted
replaced
34946:5caae380ff90 | 34947:ff2110eadbfa |
---|---|
350 > configtable = {} | 350 > configtable = {} |
351 > configitem = registrar.configitem(configtable) | 351 > configitem = registrar.configitem(configtable) |
352 > | 352 > |
353 > configitem('test', 'some', default='foo') | 353 > configitem('test', 'some', default='foo') |
354 > configitem('test', 'dynamic', default=configitems.dynamicdefault) | 354 > configitem('test', 'dynamic', default=configitems.dynamicdefault) |
355 > configitem('test', 'callable', default=list) | |
355 > # overwrite a core config | 356 > # overwrite a core config |
356 > configitem('ui', 'quiet', default=False) | 357 > configitem('ui', 'quiet', default=False) |
357 > configitem('ui', 'interactive', default=None) | 358 > configitem('ui', 'interactive', default=None) |
358 > | 359 > |
359 > @command(b'buggyconfig') | 360 > @command(b'buggyconfig') |
360 > def cmdbuggyconfig(ui, repo): | 361 > def cmdbuggyconfig(ui, repo): |
361 > repo.ui.config('ui', 'quiet', False) | 362 > repo.ui.config('ui', 'quiet', True) |
362 > repo.ui.config('ui', 'interactive', None) | 363 > repo.ui.config('ui', 'interactive', False) |
364 > repo.ui.config('test', 'some', 'bar') | |
363 > repo.ui.config('test', 'some', 'foo') | 365 > repo.ui.config('test', 'some', 'foo') |
364 > repo.ui.config('test', 'dynamic', 'some-required-default') | 366 > repo.ui.config('test', 'dynamic', 'some-required-default') |
365 > repo.ui.config('test', 'dynamic') | 367 > repo.ui.config('test', 'dynamic') |
368 > repo.ui.config('test', 'callable', []) | |
369 > repo.ui.config('test', 'callable', 'foo') | |
366 > repo.ui.config('test', 'unregistered') | 370 > repo.ui.config('test', 'unregistered') |
367 > repo.ui.config('unregistered', 'unregistered') | 371 > repo.ui.config('unregistered', 'unregistered') |
368 > EOF | 372 > EOF |
369 | 373 |
370 $ hg --config "extensions.buggyconfig=${TESTTMP}/buggyconfig.py" buggyconfig | 374 $ hg --config "extensions.buggyconfig=${TESTTMP}/buggyconfig.py" buggyconfig |
371 devel-warn: extension 'buggyconfig' overwrite config item 'ui.interactive' at: */mercurial/extensions.py:* (_loadextra) (glob) | 375 devel-warn: extension 'buggyconfig' overwrite config item 'ui.interactive' at: */mercurial/extensions.py:* (_loadextra) (glob) |
372 devel-warn: extension 'buggyconfig' overwrite config item 'ui.quiet' at: */mercurial/extensions.py:* (_loadextra) (glob) | 376 devel-warn: extension 'buggyconfig' overwrite config item 'ui.quiet' at: */mercurial/extensions.py:* (_loadextra) (glob) |
373 devel-warn: specifying a default value for a registered config item: 'ui.quiet' 'False' at: $TESTTMP/buggyconfig.py:* (cmdbuggyconfig) (glob) | 377 devel-warn: specifying a mismatched default value for a registered config item: 'ui.quiet' 'True' at: $TESTTMP/buggyconfig.py:* (cmdbuggyconfig) (glob) |
374 devel-warn: specifying a default value for a registered config item: 'ui.interactive' 'None' at: $TESTTMP/buggyconfig.py:* (cmdbuggyconfig) (glob) | 378 devel-warn: specifying a mismatched default value for a registered config item: 'ui.interactive' 'False' at: $TESTTMP/buggyconfig.py:* (cmdbuggyconfig) (glob) |
375 devel-warn: specifying a default value for a registered config item: 'test.some' 'foo' at: $TESTTMP/buggyconfig.py:* (cmdbuggyconfig) (glob) | 379 devel-warn: specifying a mismatched default value for a registered config item: 'test.some' 'bar' at: $TESTTMP/buggyconfig.py:* (cmdbuggyconfig) (glob) |
376 devel-warn: config item requires an explicit default value: 'test.dynamic' at: $TESTTMP/buggyconfig.py:* (cmdbuggyconfig) (glob) | 380 devel-warn: config item requires an explicit default value: 'test.dynamic' at: $TESTTMP/buggyconfig.py:* (cmdbuggyconfig) (glob) |
381 devel-warn: specifying a mismatched default value for a registered config item: 'test.callable' 'foo' at: $TESTTMP/buggyconfig.py:* (cmdbuggyconfig) (glob) | |
377 devel-warn: accessing unregistered config item: 'test.unregistered' at: $TESTTMP/buggyconfig.py:* (cmdbuggyconfig) (glob) | 382 devel-warn: accessing unregistered config item: 'test.unregistered' at: $TESTTMP/buggyconfig.py:* (cmdbuggyconfig) (glob) |
378 devel-warn: accessing unregistered config item: 'unregistered.unregistered' at: $TESTTMP/buggyconfig.py:* (cmdbuggyconfig) (glob) | 383 devel-warn: accessing unregistered config item: 'unregistered.unregistered' at: $TESTTMP/buggyconfig.py:* (cmdbuggyconfig) (glob) |
379 | 384 |
380 $ cd .. | 385 $ cd .. |