Hello community, here is the log from the commit of package mercurial for openSUSE:Factory checked in at 2015-10-22 12:55:45 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/mercurial (Old) and /work/SRC/openSUSE:Factory/.mercurial.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "mercurial" Changes: -------- --- /work/SRC/openSUSE:Factory/mercurial/mercurial.changes 2015-09-24 07:17:33.000000000 +0200 +++ /work/SRC/openSUSE:Factory/.mercurial.new/mercurial.changes 2015-10-22 12:55:46.000000000 +0200 @@ -1,0 +2,11 @@ +Sun Oct 4 08:02:36 UTC 2015 - w...@rosenauer.org + +- update to 3.5.2 + Regularly-scheduled bugfix release. + + hgweb: use latest mtime for caching tag (issue4814) + + largefiles: restore archiving largefiles with hgweb (issue4859) + + localrepo: recreate phasecache if changelog was modified (issue4855) + + monoblue: fix page subtitle on help pages + + unbundle: cleanly abort on unknown bundle2 feature + +------------------------------------------------------------------- Old: ---- mercurial-3.5.1.tar.gz New: ---- mercurial-3.5.2.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ mercurial.spec ++++++ --- /var/tmp/diff_new_pack.IBeINW/_old 2015-10-22 12:55:47.000000000 +0200 +++ /var/tmp/diff_new_pack.IBeINW/_new 2015-10-22 12:55:47.000000000 +0200 @@ -17,7 +17,7 @@ Name: mercurial -Version: 3.5.1 +Version: 3.5.2 Release: 0 Summary: Scalable Distributed SCM License: GPL-2.0+ ++++++ mercurial-3.5.1.tar.gz -> mercurial-3.5.2.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mercurial-3.5.1/.hgsigs new/mercurial-3.5.2/.hgsigs --- old/mercurial-3.5.1/.hgsigs 2015-09-01 23:38:33.000000000 +0200 +++ new/mercurial-3.5.2/.hgsigs 2015-10-01 19:07:20.000000000 +0200 @@ -111,3 +111,4 @@ 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 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mercurial-3.5.1/.hgtags new/mercurial-3.5.2/.hgtags --- old/mercurial-3.5.1/.hgtags 2015-09-01 23:38:33.000000000 +0200 +++ new/mercurial-3.5.2/.hgtags 2015-10-01 19:07:20.000000000 +0200 @@ -124,3 +124,4 @@ 540cd0ddac49c1125b2e013aa2ff18ecbd4dd954 3.4.2 96a38d44ba093bd1d1ecfd34119e94056030278b 3.5-rc 21aa1c313b05b1a85f8ffa1120d51579ddf6bf24 3.5 +1a45e49a6bed023deb229102a8903234d18054d3 3.5.1 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mercurial-3.5.1/PKG-INFO new/mercurial-3.5.2/PKG-INFO --- old/mercurial-3.5.1/PKG-INFO 2015-09-01 23:38:45.000000000 +0200 +++ new/mercurial-3.5.2/PKG-INFO 2015-10-01 19:07:31.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 1.1 Name: mercurial -Version: 3.5.1 +Version: 3.5.2 Summary: Fast scalable distributed SCM (revision control, version control) system Home-page: http://mercurial.selenic.com/ Author: Matt Mackall and many others diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mercurial-3.5.1/hgext/largefiles/overrides.py new/mercurial-3.5.2/hgext/largefiles/overrides.py --- old/mercurial-3.5.1/hgext/largefiles/overrides.py 2015-09-01 23:38:31.000000000 +0200 +++ new/mercurial-3.5.2/hgext/largefiles/overrides.py 2015-10-01 19:06:55.000000000 +0200 @@ -886,9 +886,19 @@ finally: repo.unfiltered().lfstatus = False +def hgwebarchive(orig, web, req, tmpl): + web.repo.lfstatus = True + + try: + return orig(web, req, tmpl) + finally: + web.repo.lfstatus = False + def overridearchive(orig, repo, dest, node, kind, decode=True, matchfn=None, prefix='', mtime=None, subrepos=None): - if not repo.lfstatus: + # For some reason setting repo.lfstatus in hgwebarchive only changes the + # unfiltered repo's attr, so check that as well. + if not repo.lfstatus and not repo.unfiltered().lfstatus: return orig(repo, dest, node, kind, decode, matchfn, prefix, mtime, subrepos) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mercurial-3.5.1/hgext/largefiles/uisetup.py new/mercurial-3.5.2/hgext/largefiles/uisetup.py --- old/mercurial-3.5.1/hgext/largefiles/uisetup.py 2015-09-01 23:38:31.000000000 +0200 +++ new/mercurial-3.5.2/hgext/largefiles/uisetup.py 2015-10-01 19:06:55.000000000 +0200 @@ -119,6 +119,8 @@ extensions.wrapfunction(archival, 'archive', overrides.overridearchive) extensions.wrapfunction(subrepo.hgsubrepo, 'archive', overrides.hgsubrepoarchive) + extensions.wrapfunction(webcommands, 'archive', + overrides.hgwebarchive) extensions.wrapfunction(cmdutil, 'bailifchanged', overrides.overridebailifchanged) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mercurial-3.5.1/i18n/pt_BR.po new/mercurial-3.5.2/i18n/pt_BR.po --- old/mercurial-3.5.1/i18n/pt_BR.po 2015-09-01 23:38:31.000000000 +0200 +++ new/mercurial-3.5.2/i18n/pt_BR.po 2015-10-01 19:06:55.000000000 +0200 @@ -16140,6 +16140,15 @@ " em arquivos não resolvidos.\n" " " +#, python-format +msgid "%s: unknown bundle feature, %s" +msgstr "%s: característica de bundle %s desconhecida" + +msgid "" +"see https://mercurial.selenic.com/wiki/BundleFeature for more information" +msgstr "" +"veja http://mercurial.selenic.com/wiki/BundleFeature para mais informações" + msgid "discard uncommitted changes (no backup)" msgstr "descarta mudanças não consolidadas (sem backup)" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mercurial-3.5.1/mercurial/__version__.py new/mercurial-3.5.2/mercurial/__version__.py --- old/mercurial-3.5.1/mercurial/__version__.py 2015-09-01 23:38:42.000000000 +0200 +++ new/mercurial-3.5.2/mercurial/__version__.py 2015-10-01 19:07:29.000000000 +0200 @@ -1,2 +1,2 @@ # this file is autogenerated by setup.py -version = "3.5.1" +version = "3.5.2" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mercurial-3.5.1/mercurial/commands.py new/mercurial-3.5.2/mercurial/commands.py --- old/mercurial-3.5.1/mercurial/commands.py 2015-09-01 23:38:31.000000000 +0200 +++ new/mercurial-3.5.2/mercurial/commands.py 2015-10-01 19:06:55.000000000 +0200 @@ -6372,6 +6372,12 @@ try: op = bundle2.processbundle(repo, gen, lambda: tr) tr.close() + except error.UnsupportedPartError as exc: + raise util.Abort(_('%s: unknown bundle feature, %s') + % (fname, exc), + hint=_("see https://mercurial.selenic.com/" + "wiki/BundleFeature for more " + "information")) finally: if tr: tr.release() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mercurial-3.5.1/mercurial/hgweb/hgweb_mod.py new/mercurial-3.5.2/mercurial/hgweb/hgweb_mod.py --- old/mercurial-3.5.1/mercurial/hgweb/hgweb_mod.py 2015-09-01 23:38:32.000000000 +0200 +++ new/mercurial-3.5.2/mercurial/hgweb/hgweb_mod.py 2015-10-01 19:06:55.000000000 +0200 @@ -131,11 +131,13 @@ def refresh(self, request=None): repostate = [] + mtime = 0 # file of interrests mtime and size for meth, fname in foi: prefix = getattr(self.repo, meth) st = get_stat(prefix, fname) repostate.append((st.st_mtime, st.st_size)) + mtime = max(mtime, st.st_mtime) repostate = tuple(repostate) # we need to compare file size in addition to mtime to catch # changes made less than a second ago @@ -153,7 +155,7 @@ # update these last to avoid threads seeing empty settings self.repostate = repostate # mtime is needed for ETag - self.mtime = st.st_mtime + self.mtime = mtime if request: self.repo.ui.environ = request.env diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mercurial-3.5.1/mercurial/localrepo.py new/mercurial-3.5.2/mercurial/localrepo.py --- old/mercurial-3.5.1/mercurial/localrepo.py 2015-09-01 23:38:31.000000000 +0200 +++ new/mercurial-3.5.2/mercurial/localrepo.py 2015-10-01 19:06:55.000000000 +0200 @@ -429,7 +429,10 @@ heads.append(n) return heads - @storecache('phaseroots') + # _phaserevs and _phasesets depend on changelog. what we need is to + # call _phasecache.invalidate() if '00changelog.i' was changed, but it + # can't be easily expressed in filecache mechanism. + @storecache('phaseroots', '00changelog.i') def _phasecache(self): return phases.phasecache(self, self._phasedefaults) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mercurial-3.5.1/mercurial/templates/monoblue/help.tmpl new/mercurial-3.5.2/mercurial/templates/monoblue/help.tmpl --- old/mercurial-3.5.1/mercurial/templates/monoblue/help.tmpl 2015-09-01 23:38:31.000000000 +0200 +++ new/mercurial-3.5.2/mercurial/templates/monoblue/help.tmpl 2015-10-01 19:06:55.000000000 +0200 @@ -30,7 +30,7 @@ </ul> </div> - <h2 class="no-link no-border">branches</h2> + <h2 class="no-link no-border">help</h2> <div id="doc"> {rstdoc(doc, "html")} </div> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mercurial-3.5.1/mercurial/templates/monoblue/helptopics.tmpl new/mercurial-3.5.2/mercurial/templates/monoblue/helptopics.tmpl --- old/mercurial-3.5.1/mercurial/templates/monoblue/helptopics.tmpl 2015-09-01 23:38:31.000000000 +0200 +++ new/mercurial-3.5.2/mercurial/templates/monoblue/helptopics.tmpl 2015-10-01 19:06:55.000000000 +0200 @@ -30,7 +30,7 @@ </ul> </div> - <h2 class="no-link no-border">branches</h2> + <h2 class="no-link no-border">help</h2> <table cellspacing="0"> <tr><td colspan="2"><h2><a name="main" href="#topics">Topics</a></h2></td></tr> {topics % helpentry} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mercurial-3.5.1/tests/test-commandserver.t new/mercurial-3.5.2/tests/test-commandserver.t --- old/mercurial-3.5.1/tests/test-commandserver.t 2015-09-01 23:38:31.000000000 +0200 +++ new/mercurial-3.5.2/tests/test-commandserver.t 2015-10-01 19:06:55.000000000 +0200 @@ -367,6 +367,49 @@ *** runcommand status -i -u I ignored-file +cache of non-public revisions should be invalidated on repository change +(issue4855): + + >>> import os + >>> from hgclient import readchannel, runcommand, check + >>> @check + ... def phasesetscacheaftercommit(server): + ... readchannel(server) + ... # load _phasecache._phaserevs and _phasesets + ... runcommand(server, ['log', '-qr', 'draft()']) + ... # create draft commits by another process + ... for i in xrange(5, 7): + ... os.system('echo a >> a') + ... os.system('hg commit -Aqm%d' % i) + ... # new commits should be listed as draft revisions + ... runcommand(server, ['log', '-qr', 'draft()']) + *** runcommand log -qr draft() + 4:7966c8e3734d + *** runcommand log -qr draft() + 4:7966c8e3734d + 5:41f6602d1c4f + 6:10501e202c35 + + >>> import os + >>> from hgclient import readchannel, runcommand, check + >>> @check + ... def phasesetscacheafterstrip(server): + ... readchannel(server) + ... # load _phasecache._phaserevs and _phasesets + ... runcommand(server, ['log', '-qr', 'draft()']) + ... # strip cached revisions by another process + ... os.system('hg --config extensions.strip= strip -q 5') + ... # shouldn't abort by "unknown revision '6'" + ... runcommand(server, ['log', '-qr', 'draft()']) + *** runcommand log -qr draft() + 4:7966c8e3734d + 5:41f6602d1c4f + 6:10501e202c35 + *** runcommand log -qr draft() + 4:7966c8e3734d + +cache of phase roots should be invalidated on strip (issue3827): + >>> import os >>> from hgclient import readchannel, sep, runcommand, check >>> @check diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/mercurial-3.5.1/tests/test-largefiles-wireproto.t new/mercurial-3.5.2/tests/test-largefiles-wireproto.t --- old/mercurial-3.5.1/tests/test-largefiles-wireproto.t 2015-09-01 23:38:31.000000000 +0200 +++ new/mercurial-3.5.2/tests/test-largefiles-wireproto.t 2015-10-01 19:06:55.000000000 +0200 @@ -15,6 +15,8 @@ > minsize=2 > patterns=glob:**.dat > usercache=${USERCACHE} + > [web] + > allow_archive = zip > [hooks] > precommit=sh -c "echo \\"Invoking status precommit hook\\"; hg status" > EOF @@ -215,6 +217,17 @@ adding file changes added 1 changesets with 1 changes to 1 files +Archive contains largefiles + >>> import urllib2, os + >>> u = 'http://localhost:%s/archive/default.zip' % os.environ['HGPORT2'] + >>> with open('archive.zip', 'w') as f: + ... f.write(urllib2.urlopen(u).read()) + $ unzip -t archive.zip + Archive: archive.zip + testing: empty-default/.hg_archival.txt OK + testing: empty-default/f1 OK + No errors detected in compressed data of archive.zip. + test 'verify' with remotestore: $ rm "${USERCACHE}"/02a439e5c31c526465ab1a0ca1f431f76b827b90