D3893: ui: make the large file warning limit fully configurable
joerg.sonnenberger (Joerg Sonnenberger)
phabricator at mercurial-scm.org
Fri Jul 6 15:58:16 UTC 2018
joerg.sonnenberger created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.
REVISION SUMMARY
While add --large can be used to override it selectively, often enough
the user simply doesn't care about machines with less than 100MB RAM or
so, so make it possible to just specify a larger limit in hgrc.
REPOSITORY
rHG Mercurial
REVISION DETAIL
https://phab.mercurial-scm.org/D3893
AFFECTED FILES
mercurial/configitems.py
mercurial/context.py
mercurial/help/config.txt
tests/test-largefiles.t
CHANGE DETAILS
diff --git a/tests/test-largefiles.t b/tests/test-largefiles.t
--- a/tests/test-largefiles.t
+++ b/tests/test-largefiles.t
@@ -1860,6 +1860,8 @@
$ hg add --normal new-largefile
new-largefile: up to 69 MB of RAM may be required to manage this file
(use 'hg revert new-largefile' to cancel the pending addition)
+ $ hg revert new-largefile
+ $ hg --config ui.largefilelimit=30000000 add --normal new-largefile
Test explicit commit of switch between normal and largefile - make sure both
the add and the remove is committed.
diff --git a/mercurial/help/config.txt b/mercurial/help/config.txt
--- a/mercurial/help/config.txt
+++ b/mercurial/help/config.txt
@@ -2125,6 +2125,10 @@
Possible values are 'text' and 'curses'.
This config overrides the interface specified by ui.interface.
+``largefilelimit``
+ Largest file size that gives no memory use warning.
+ Possible values are integers or 0 to disable the check.
+
``logtemplate``
Template string for commands that print changesets.
diff --git a/mercurial/context.py b/mercurial/context.py
--- a/mercurial/context.py
+++ b/mercurial/context.py
@@ -1332,7 +1332,8 @@
ui.warn(_("%s does not exist!\n") % uipath(f))
rejected.append(f)
continue
- if st.st_size > 10000000:
+ limit = ui.config('ui', 'largefilelimit')
+ if limit != 0 and st.st_size > limit:
ui.warn(_("%s: up to %d MB of RAM may be required "
"to manage this file\n"
"(use 'hg revert %s' to cancel the "
diff --git a/mercurial/configitems.py b/mercurial/configitems.py
--- a/mercurial/configitems.py
+++ b/mercurial/configitems.py
@@ -1077,6 +1077,9 @@
coreconfigitem('ui', 'interface.chunkselector',
default=None,
)
+coreconfigitem('ui', 'largefilelimit',
+ default=10000000,
+)
coreconfigitem('ui', 'logblockedtimes',
default=False,
)
To: joerg.sonnenberger, #hg-reviewers
Cc: mercurial-devel
More information about the Mercurial-devel
mailing list