Mercurial > kallithea
changeset 5555:32cdc6f70f13
cleanup: stop using mutable default params
author | Jiří Suchan <yed@vanyli.net> |
---|---|
date | Wed, 14 Oct 2015 20:08:18 +0100 |
parents | 2d5f442e5abc |
children | 2b7a0e28c4dc |
files | CONTRIBUTORS kallithea/lib/compat.py kallithea/lib/db_manage.py kallithea/lib/helpers.py kallithea/lib/middleware/simplegit.py kallithea/lib/middleware/simplehg.py kallithea/lib/rcmail/smtp_mailer.py kallithea/lib/vcs/subprocessio.py kallithea/lib/vcs/utils/compat.py kallithea/model/forms.py kallithea/model/notification.py kallithea/model/user.py kallithea/model/validators.py kallithea/templates/about.html |
diffstat | 14 files changed, 68 insertions(+), 44 deletions(-) [+] |
line wrap: on
line diff
--- a/CONTRIBUTORS Thu Oct 08 20:03:36 2015 +0200 +++ b/CONTRIBUTORS Wed Oct 14 20:08:18 2015 +0100 @@ -22,6 +22,7 @@ Étienne Gilli <etienne.gilli@gmail.com> 2015 Grzegorz Krason <grzegorz.krason@gmail.com> 2015 Jan Heylen <heyleke@gmail.com> 2015 + Jiří Suchan <yed@vanyli.net> 2015 Kazunari Kobayashi <kobanari@nifty.com> 2015 Kevin Bullock <kbullock@ringworld.org> 2015 kobanari <kobanari@nifty.com> 2015
--- a/kallithea/lib/compat.py Thu Oct 08 20:03:36 2015 +0200 +++ b/kallithea/lib/compat.py Wed Oct 14 20:08:18 2015 +0100 @@ -540,7 +540,8 @@ return cmp(type(self), type(other)) return cmp(list(self), list(other)) - def __repr__(self, _track=[]): + def __repr__(self, _track=None): + _track = _track or [] if id(self) in _track: return '...' _track.append(id(self)) @@ -560,8 +561,9 @@ def __copy__(self): return self.__class__(self) - def __deepcopy__(self, memo={}): + def __deepcopy__(self, memo=None): from copy import deepcopy + memo = memo or {} result = self.__class__() memo[id(self)] = result result.__init__(deepcopy(tuple(self), memo))
--- a/kallithea/lib/db_manage.py Thu Oct 08 20:03:36 2015 +0200 +++ b/kallithea/lib/db_manage.py Wed Oct 14 20:08:18 2015 +0100 @@ -61,14 +61,14 @@ class DbManage(object): - def __init__(self, log_sql, dbconf, root, tests=False, SESSION=None, cli_args={}): + def __init__(self, log_sql, dbconf, root, tests=False, SESSION=None, cli_args=None): self.dbname = dbconf.split('/')[-1] self.tests = tests self.root = root self.dburi = dbconf self.log_sql = log_sql self.db_exists = False - self.cli_args = cli_args + self.cli_args = cli_args or {} self.init_db(SESSION=SESSION) force_ask = self.cli_args.get('force_ask')
--- a/kallithea/lib/helpers.py Thu Oct 08 20:03:36 2015 +0200 +++ b/kallithea/lib/helpers.py Wed Oct 14 20:08:18 2015 +0100 @@ -979,18 +979,17 @@ show_if_single_page=False, separator=' ', onclick=None, symbol_first='<<', symbol_last='>>', symbol_previous='<', symbol_next='>', - link_attr={'class': 'pager_link', 'rel': 'prerender'}, - curpage_attr={'class': 'pager_curpage'}, - dotdot_attr={'class': 'pager_dotdot'}, **kwargs): - - self.curpage_attr = curpage_attr + link_attr=None, + curpage_attr=None, + dotdot_attr=None, **kwargs): + self.curpage_attr = curpage_attr or {'class': 'pager_curpage'} self.separator = separator self.pager_kwargs = kwargs self.page_param = page_param self.partial_param = partial_param self.onclick = onclick - self.link_attr = link_attr - self.dotdot_attr = dotdot_attr + self.link_attr = link_attr or {'class': 'pager_link', 'rel': 'prerender'} + self.dotdot_attr = dotdot_attr or {'class': 'pager_dotdot'} # Don't show navigator if there is no more than one page if self.page_count == 0 or (self.page_count == 1 and not show_if_single_page):
--- a/kallithea/lib/middleware/simplegit.py Thu Oct 08 20:03:36 2015 +0200 +++ b/kallithea/lib/middleware/simplegit.py Wed Oct 14 20:08:18 2015 +0100 @@ -294,12 +294,11 @@ if action == 'pull' and _hooks.get(Ui.HOOK_PULL): log_pull_action(ui=baseui, repo=_repo._repo) - def __inject_extras(self, repo_path, baseui, extras={}): + def __inject_extras(self, repo_path, baseui, extras=None): """ Injects some extra params into baseui instance :param baseui: baseui instance :param extras: dict with extra params to put into baseui """ - - _set_extras(extras) + _set_extras(extras or {})
--- a/kallithea/lib/middleware/simplehg.py Thu Oct 08 20:03:36 2015 +0200 +++ b/kallithea/lib/middleware/simplehg.py Wed Oct 14 20:08:18 2015 +0100 @@ -272,7 +272,7 @@ raise Exception('Unable to detect pull/push action !!' 'Are you using non standard command or client ?') - def __inject_extras(self, repo_path, baseui, extras={}): + def __inject_extras(self, repo_path, baseui, extras=None): """ Injects some extra params into baseui instance @@ -291,4 +291,4 @@ for section in ui_sections: for k, v in repoui.configitems(section): baseui.setconfig(section, k, v) - _set_extras(extras) + _set_extras(extras or {})
--- a/kallithea/lib/rcmail/smtp_mailer.py Thu Oct 08 20:03:36 2015 +0200 +++ b/kallithea/lib/rcmail/smtp_mailer.py Wed Oct 14 20:08:18 2015 +0100 @@ -60,9 +60,9 @@ self.debug = debug self.auth = smtp_auth - def send(self, recipients=[], subject='', body='', html='', + def send(self, recipients=None, subject='', body='', html='', attachment_files=None, headers=None): - + recipients = recipients or [] if isinstance(recipients, basestring): recipients = [recipients] if headers is None:
--- a/kallithea/lib/vcs/subprocessio.py Thu Oct 08 20:03:36 2015 +0200 +++ b/kallithea/lib/vcs/subprocessio.py Wed Oct 14 20:08:18 2015 +0100 @@ -156,8 +156,8 @@ """ def __init__(self, source, buffer_size=65536, chunk_size=4096, - starting_values=[], bottomless=False): - + starting_values=None, bottomless=False): + starting_values = starting_values or [] if bottomless: maxlen = int(buffer_size / chunk_size) else: @@ -326,7 +326,7 @@ """ def __init__(self, cmd, inputstream=None, buffer_size=65536, - chunk_size=4096, starting_values=[], **kwargs): + chunk_size=4096, starting_values=None, **kwargs): """ Initializes SubprocessIOChunker @@ -336,7 +336,7 @@ :param chunk_size: (Default: 4096) A max size of a chunk. Actual chunk may be smaller. :param starting_values: (Default: []) An array of strings to put in front of output que. """ - + starting_values = starting_values or [] if inputstream: input_streamer = StreamFeeder(inputstream) input_streamer.start()
--- a/kallithea/lib/vcs/utils/compat.py Thu Oct 08 20:03:36 2015 +0200 +++ b/kallithea/lib/vcs/utils/compat.py Wed Oct 14 20:08:18 2015 +0100 @@ -120,7 +120,8 @@ return cmp(type(self), type(other)) return cmp(list(self), list(other)) - def __repr__(self, _track=[]): + def __repr__(self, _track=None): + _track = _track or [] if id(self) in _track: return '...' _track.append(id(self)) @@ -140,8 +141,9 @@ def __copy__(self): return self.__class__(self) - def __deepcopy__(self, memo={}): + def __deepcopy__(self, memo=None): from copy import deepcopy + memo = memo or {} result = self.__class__() memo[id(self)] = result result.__init__(deepcopy(tuple(self), memo))
--- a/kallithea/model/forms.py Thu Oct 08 20:03:36 2015 +0200 +++ b/kallithea/model/forms.py Wed Oct 14 20:08:18 2015 +0100 @@ -86,7 +86,8 @@ return _PasswordChangeForm -def UserForm(edit=False, old_data={}): +def UserForm(edit=False, old_data=None): + old_data = old_data or {} class _UserForm(formencode.Schema): allow_extra_fields = True filter_extra_fields = True @@ -125,7 +126,9 @@ return _UserForm -def UserGroupForm(edit=False, old_data={}, available_members=[]): +def UserGroupForm(edit=False, old_data=None, available_members=None): + old_data = old_data or {} + available_members = available_members or [] class _UserGroupForm(formencode.Schema): allow_extra_fields = True filter_extra_fields = True @@ -148,8 +151,10 @@ return _UserGroupForm -def RepoGroupForm(edit=False, old_data={}, repo_groups=[], +def RepoGroupForm(edit=False, old_data=None, repo_groups=None, can_create_in_root=False): + old_data = old_data or {} + repo_groups = repo_groups or [] repo_group_ids = [rg[0] for rg in repo_groups] class _RepoGroupForm(formencode.Schema): allow_extra_fields = True @@ -178,7 +183,7 @@ return _RepoGroupForm -def RegisterForm(edit=False, old_data={}): +def RegisterForm(edit=False, old_data=None): class _RegisterForm(formencode.Schema): allow_extra_fields = True filter_extra_fields = True @@ -227,8 +232,11 @@ 'password_confirm')] return _PasswordResetConfirmationForm -def RepoForm(edit=False, old_data={}, supported_backends=BACKENDS.keys(), - repo_groups=[], landing_revs=[]): +def RepoForm(edit=False, old_data=None, supported_backends=BACKENDS.keys(), + repo_groups=None, landing_revs=None): + old_data = old_data or {} + repo_groups = repo_groups or [] + landing_revs = landing_revs or [] repo_group_ids = [rg[0] for rg in repo_groups] class _RepoForm(formencode.Schema): allow_extra_fields = True @@ -302,8 +310,11 @@ return _RepoFieldForm -def RepoForkForm(edit=False, old_data={}, supported_backends=BACKENDS.keys(), - repo_groups=[], landing_revs=[]): +def RepoForkForm(edit=False, old_data=None, supported_backends=BACKENDS.keys(), + repo_groups=None, landing_revs=None): + old_data = old_data or {} + repo_groups = repo_groups or [] + landing_revs = landing_revs or [] repo_group_ids = [rg[0] for rg in repo_groups] class _RepoForkForm(formencode.Schema): allow_extra_fields = True @@ -421,7 +432,7 @@ return _CustomDefaultPermissionsForm -def DefaultsForm(edit=False, old_data={}, supported_backends=BACKENDS.keys()): +def DefaultsForm(edit=False, old_data=None, supported_backends=BACKENDS.keys()): class _DefaultsForm(formencode.Schema): allow_extra_fields = True filter_extra_fields = True
--- a/kallithea/model/notification.py Thu Oct 08 20:03:36 2015 +0200 +++ b/kallithea/model/notification.py Wed Oct 14 20:08:18 2015 +0100 @@ -59,7 +59,7 @@ def create(self, created_by, subject, body, recipients=None, type_=Notification.TYPE_MESSAGE, with_email=True, - email_kwargs={}): + email_kwargs=None): """ Creates notification of given type @@ -75,7 +75,7 @@ :param email_kwargs: additional dict to pass as args to email template """ from kallithea.lib.celerylib import tasks, run_task - + email_kwargs = email_kwargs or {} if recipients and not getattr(recipients, '__iter__', False): raise Exception('recipients must be a list or iterable')
--- a/kallithea/model/user.py Thu Oct 08 20:03:36 2015 +0200 +++ b/kallithea/model/user.py Wed Oct 14 20:08:18 2015 +0100 @@ -206,9 +206,9 @@ type_=Notification.TYPE_REGISTRATION, email_kwargs=email_kwargs) - def update(self, user_id, form_data, skip_attrs=[]): + def update(self, user_id, form_data, skip_attrs=None): from kallithea.lib.auth import get_crypt_password - + skip_attrs = skip_attrs or [] user = self.get(user_id, cache=False) if user.username == User.DEFAULT_USER: raise DefaultUserException(
--- a/kallithea/model/validators.py Thu Oct 08 20:03:36 2015 +0200 +++ b/kallithea/model/validators.py Wed Oct 14 20:08:18 2015 +0100 @@ -89,7 +89,8 @@ return _UniqueListFromString -def ValidUsername(edit=False, old_data={}): +def ValidUsername(edit=False, old_data=None): + old_data = old_data or {} class _validator(formencode.validators.FancyValidator): messages = { 'username_exists': _('Username "%(username)s" already exists'), @@ -146,7 +147,8 @@ return _validator -def ValidUserGroup(edit=False, old_data={}): +def ValidUserGroup(edit=False, old_data=None): + old_data = old_data or {} class _validator(formencode.validators.FancyValidator): messages = { 'invalid_group': _('Invalid user group name'), @@ -187,7 +189,9 @@ return _validator -def ValidRepoGroup(edit=False, old_data={}): +def ValidRepoGroup(edit=False, old_data=None): + old_data = old_data or {} + class _validator(formencode.validators.FancyValidator): messages = { 'group_parent_id': _('Cannot assign this group as parent'), @@ -338,7 +342,9 @@ return _validator -def ValidRepoName(edit=False, old_data={}): +def ValidRepoName(edit=False, old_data=None): + old_data = old_data or {} + class _validator(formencode.validators.FancyValidator): messages = { 'invalid_repo_name': @@ -373,7 +379,6 @@ return value def validate_python(self, value, state): - repo_name = value.get('repo_name') repo_name_full = value.get('repo_name_full') group_path = value.get('group_path') @@ -483,7 +488,9 @@ return _validator -def ValidForkType(old_data={}): +def ValidForkType(old_data=None): + old_data = old_data or {} + class _validator(formencode.validators.FancyValidator): messages = { 'invalid_fork_type': _('Fork has to be the same type as parent') @@ -699,7 +706,9 @@ return _validator -def UniqSystemEmail(old_data={}): +def UniqSystemEmail(old_data=None): + old_data = old_data or {} + class _validator(formencode.validators.FancyValidator): messages = { 'email_taken': _('This email address is already in use')
--- a/kallithea/templates/about.html Thu Oct 08 20:03:36 2015 +0200 +++ b/kallithea/templates/about.html Wed Oct 14 20:08:18 2015 +0100 @@ -49,6 +49,7 @@ <li>Copyright © 2015, Étienne Gilli</li> <li>Copyright © 2015, Grzegorz Krason</li> <li>Copyright © 2015, Jan Heylen</li> + <li>Copyright © 2015, Jiří Suchan</li> <li>Copyright © 2015, Kazunari Kobayashi</li> <li>Copyright © 2015, Kevin Bullock</li> <li>Copyright © 2015, kobanari</li>