Mercurial > hg
view contrib/sample.hgrc @ 9420:d0db168136dc
manifest/revlog: do not let the revlog cache mutable objects
If a buffer of an mutable object is passed to revlog.addrevision(), the revlog
will happily store it in its cache. Later when the revlog reuses the cached
entry, if the manifest modified the object in-between, all kind of bugs
appears.
We fix it by:
- passing immutable objects to addrevision() if they are already available
- only storing the text in the cache if it's of str type
Then we can remove the conversion of the cache entry to str() during
retrieval. That was probably just there hiding the bug for the common cases
but not really fixing it.
author | Benoit Boissinot <benoit.boissinot@ens-lyon.org> |
---|---|
date | Fri, 04 Sep 2009 10:47:55 +0200 |
parents | 345ed833854d |
children | 5f01fd602542 |
line wrap: on
line source
### --- User interface [ui] ### show changed files and be a bit more verbose if True # verbose = True ### username data to appear in comits ### it usually takes the form: Joe User <joe.user@host.com> # username = Joe User <j.user@example.com> ### --- Extensions [extensions] ### each extension has its own 'extension_name=path' line ### the default python library path is used when path is left blank ### the hgext dir is used when 'hgext.extension_name=' is written ### acl - Access control lists ### hg help acl # hgext.acl = ### bisect - binary search changesets to detect bugs ### hg help bisect # hgext.hbisect = ### bugzilla - update bugzilla bugs when changesets mention them ### hg help bugzilla # hgext.bugzilla = ### extdiff - Use external diff application instead of builtin one # hgext.extdiff = ### gpg - GPG checks and signing ### hg help gpg # hgext.gpg = ### graphlog - ASCII graph log ### hg help glog # hgext.graphlog = ### hgk - GUI repository browser ### hg help view # hgext.hgk = ### mq - Mercurial patch queues ### hg help mq # hgext.mq = ### notify - Template driven e-mail notifications ### hg help notify # hgext.notify = ### patchbomb - send changesets as a series of patch emails ### hg help email # hgext.patchbomb = ### churn - create a graph showing who changed the most lines ### hg help churn # hgext.churn = /home/user/hg/hg/contrib/churn.py ### win32text - line ending conversion filters for the Windows platform # hgext.win32text = ### --- hgk additional configuration [hgk] ### set executable path # path = /home/user/hg/hg/contrib/hgk ### --- Hook to Mercurial actions - See hgrc man page for avaliable hooks [hooks] ### Example notify hooks (load hgext.notify extension before use) # incoming.notify = python:hgext.notify.hook # changegroup.notify = python:hgext.notify.hook ### Email configuration for the notify and patchbomb extensions [email] ### Your email address # from = user@example.com ### Method to send email - smtp or /usr/sbin/sendmail or other program name # method = smtp ### smtp server to send email to [smtp] # host = mail # port = 25 # tls = false # username = user # password = blivet # local_hostname = myhost ### --- Email notification hook for server [notify] ### multiple sources can be specified as a whitespace or comma separated list # sources = serve push pull bundle ### set this to False when you're ready for mail to start sending # test = True ### path to config file with names of subscribers # config = /path/to/subscription/file