changeset 25186:80c5b2666a96

extensions: document that `testedwith = 'internal'` is special Extension authors (notably at companies using hg) have been cargo-culting the `testedwith = 'internal'` bit from hg's own extensions, which then defeats our "file bugs over here" logic in dispatch. Let's be more aggressive about trying to give extension authors a hint about what testedwith should say.
author Augie Fackler <augie@google.com>
date Tue, 28 Apr 2015 16:44:37 -0400
parents bf6b476f3b36
children 670c1df688fd
files contrib/synthrepo.py hgext/acl.py hgext/blackbox.py hgext/bugzilla.py hgext/censor.py hgext/children.py hgext/churn.py hgext/color.py hgext/convert/__init__.py hgext/eol.py hgext/extdiff.py hgext/fetch.py hgext/gpg.py hgext/graphlog.py hgext/hgcia.py hgext/hgk.py hgext/highlight/__init__.py hgext/histedit.py hgext/keyword.py hgext/largefiles/__init__.py hgext/mq.py hgext/notify.py hgext/pager.py hgext/patchbomb.py hgext/progress.py hgext/purge.py hgext/rebase.py hgext/record.py hgext/relink.py hgext/schemes.py hgext/share.py hgext/shelve.py hgext/strip.py hgext/transplant.py hgext/win32mbcs.py hgext/win32text.py hgext/zeroconf/__init__.py
diffstat 37 files changed, 148 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/contrib/synthrepo.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/contrib/synthrepo.py	Tue Apr 28 16:44:37 2015 -0400
@@ -41,6 +41,10 @@
 from mercurial.i18n import _
 from mercurial.node import nullrev, nullid, short
 
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 cmdtable = {}
--- a/hgext/acl.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/acl.py	Tue Apr 28 16:44:37 2015 -0400
@@ -195,6 +195,10 @@
 from mercurial import util, match
 import getpass, urllib
 
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 def _getusers(ui, group):
--- a/hgext/blackbox.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/blackbox.py	Tue Apr 28 16:44:37 2015 -0400
@@ -35,6 +35,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 lastblackbox = None
 
--- a/hgext/bugzilla.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/bugzilla.py	Tue Apr 28 16:44:37 2015 -0400
@@ -282,6 +282,10 @@
 from mercurial import cmdutil, mail, util
 import re, time, urlparse, xmlrpclib
 
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 class bzaccess(object):
--- a/hgext/censor.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/censor.py	Tue Apr 28 16:44:37 2015 -0400
@@ -31,6 +31,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 @command('censor',
--- a/hgext/children.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/children.py	Tue Apr 28 16:44:37 2015 -0400
@@ -20,6 +20,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 @command('children',
--- a/hgext/churn.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/churn.py	Tue Apr 28 16:44:37 2015 -0400
@@ -16,6 +16,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 def maketemplater(ui, repo, tmpl):
--- a/hgext/color.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/color.py	Tue Apr 28 16:44:37 2015 -0400
@@ -162,6 +162,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 # start and stop parameters for effects
--- a/hgext/convert/__init__.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/convert/__init__.py	Tue Apr 28 16:44:37 2015 -0400
@@ -15,6 +15,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 # Commands definition was moved elsewhere to ease demandload job.
--- a/hgext/eol.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/eol.py	Tue Apr 28 16:44:37 2015 -0400
@@ -95,6 +95,10 @@
 from mercurial import util, config, extensions, match, error
 import re, os
 
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 # Matches a lone LF, i.e., one that is not part of CRLF.
--- a/hgext/extdiff.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/extdiff.py	Tue Apr 28 16:44:37 2015 -0400
@@ -67,6 +67,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 def snapshot(ui, repo, files, node, tmproot):
--- a/hgext/fetch.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/fetch.py	Tue Apr 28 16:44:37 2015 -0400
@@ -15,6 +15,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 @command('fetch',
--- a/hgext/gpg.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/gpg.py	Tue Apr 28 16:44:37 2015 -0400
@@ -12,6 +12,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 class gpg(object):
--- a/hgext/graphlog.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/graphlog.py	Tue Apr 28 16:44:37 2015 -0400
@@ -20,6 +20,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 @command('glog',
--- a/hgext/hgcia.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/hgcia.py	Tue Apr 28 16:44:37 2015 -0400
@@ -48,6 +48,10 @@
 
 import socket, xmlrpclib
 from xml.sax import saxutils
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 socket_timeout = 30 # seconds
--- a/hgext/hgk.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/hgk.py	Tue Apr 28 16:44:37 2015 -0400
@@ -41,6 +41,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 @command('debug-diff-tree',
--- a/hgext/highlight/__init__.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/highlight/__init__.py	Tue Apr 28 16:44:37 2015 -0400
@@ -24,6 +24,10 @@
 import highlight
 from mercurial.hgweb import webcommands, webutil, common
 from mercurial import extensions, encoding
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 def filerevision_highlight(orig, web, tmpl, fctx):
--- a/hgext/histedit.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/histedit.py	Tue Apr 28 16:44:37 2015 -0400
@@ -181,6 +181,10 @@
 cmdtable = {}
 command = cmdutil.command(cmdtable)
 
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 # i18n: command names and abbreviations must remain untranslated
--- a/hgext/keyword.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/keyword.py	Tue Apr 28 16:44:37 2015 -0400
@@ -91,6 +91,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 # hg commands that do not act on keywords
--- a/hgext/largefiles/__init__.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/largefiles/__init__.py	Tue Apr 28 16:44:37 2015 -0400
@@ -112,6 +112,10 @@
 import reposetup
 import uisetup as uisetupmod
 
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 reposetup = reposetup.reposetup
--- a/hgext/mq.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/mq.py	Tue Apr 28 16:44:37 2015 -0400
@@ -76,6 +76,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 # force load strip extension formerly included in mq and import some utility
--- a/hgext/notify.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/notify.py	Tue Apr 28 16:44:37 2015 -0400
@@ -141,6 +141,10 @@
 from mercurial import patch, cmdutil, util, mail
 import fnmatch
 
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 # template for single changeset can include email headers.
--- a/hgext/pager.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/pager.py	Tue Apr 28 16:44:37 2015 -0400
@@ -59,6 +59,10 @@
 from mercurial import commands, dispatch, util, extensions, cmdutil
 from mercurial.i18n import _
 
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 def _pagerfork(ui, p):
--- a/hgext/patchbomb.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/patchbomb.py	Tue Apr 28 16:44:37 2015 -0400
@@ -71,6 +71,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 def prompt(ui, prompt, default=None, rest=':'):
--- a/hgext/progress.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/progress.py	Tue Apr 28 16:44:37 2015 -0400
@@ -40,6 +40,10 @@
 import threading
 
 from mercurial.i18n import _
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 from mercurial import encoding
--- a/hgext/purge.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/purge.py	Tue Apr 28 16:44:37 2015 -0400
@@ -30,6 +30,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 @command('purge|clean',
--- a/hgext/rebase.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/rebase.py	Tue Apr 28 16:44:37 2015 -0400
@@ -29,6 +29,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 def _savegraft(ctx, extra):
--- a/hgext/record.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/record.py	Tue Apr 28 16:44:37 2015 -0400
@@ -13,6 +13,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 
--- a/hgext/relink.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/relink.py	Tue Apr 28 16:44:37 2015 -0400
@@ -13,6 +13,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 @command('relink', [], _('[ORIGIN]'))
--- a/hgext/schemes.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/schemes.py	Tue Apr 28 16:44:37 2015 -0400
@@ -44,6 +44,10 @@
 from mercurial import extensions, hg, templater, util
 from mercurial.i18n import _
 
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 
--- a/hgext/share.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/share.py	Tue Apr 28 16:44:37 2015 -0400
@@ -12,6 +12,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 @command('share',
--- a/hgext/shelve.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/shelve.py	Tue Apr 28 16:44:37 2015 -0400
@@ -33,6 +33,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 class shelvedfile(object):
--- a/hgext/strip.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/strip.py	Tue Apr 28 16:44:37 2015 -0400
@@ -11,6 +11,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 def checksubstate(repo, baserev=None):
--- a/hgext/transplant.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/transplant.py	Tue Apr 28 16:44:37 2015 -0400
@@ -26,6 +26,10 @@
 
 cmdtable = {}
 command = cmdutil.command(cmdtable)
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 class transplantentry(object):
--- a/hgext/win32mbcs.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/win32mbcs.py	Tue Apr 28 16:44:37 2015 -0400
@@ -48,6 +48,10 @@
 import os, sys
 from mercurial.i18n import _
 from mercurial import util, encoding
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 _encoding = None                                # see extsetup
--- a/hgext/win32text.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/win32text.py	Tue Apr 28 16:44:37 2015 -0400
@@ -46,6 +46,10 @@
 from mercurial import util
 import re
 
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 # regexp for single LF without CR preceding.
--- a/hgext/zeroconf/__init__.py	Fri Apr 10 23:12:33 2015 -0700
+++ b/hgext/zeroconf/__init__.py	Tue Apr 28 16:44:37 2015 -0400
@@ -31,6 +31,10 @@
 from mercurial import extensions
 from mercurial.hgweb import server as servermod
 
+# Note for extension authors: ONLY specify testedwith = 'internal' for
+# extensions which SHIP WITH MERCURIAL. Non-mainline extensions should
+# be specifying the version(s) of Mercurial they are tested with, or
+# leave the attribute unspecified.
 testedwith = 'internal'
 
 # publish