massive refactoring to switch from camelCase to snake_case:
historically, Libervia (SàT before) was using camelCase as allowed by PEP8 when using a pre-PEP8 code, to use the same coding style as in Twisted. However, snake_case is more readable and it's better to follow PEP8 best practices, so it has been decided to move on full snake_case. Because Libervia has a huge codebase, this ended with a ugly mix of camelCase and snake_case. To fix that, this patch does a big refactoring by renaming every function and method (including bridge) that are not coming from Twisted or Wokkel, to use fully snake_case. This is a massive change, and may result in some bugs.
This commit is contained in:
parent
d50412c7f7
commit
6a6f15707a
1 changed files with 9945 additions and 9945 deletions
|
|
@ -196,7 +196,7 @@ class TextSyntaxes(object):
|
|||
"syntaxes": self.syntaxes,
|
||||
}
|
||||
|
||||
self.addSyntax(
|
||||
self.add_syntax(
|
||||
self.SYNTAX_XHTML,
|
||||
lambda xhtml: defer.succeed(xhtml),
|
||||
lambda xhtml: defer.succeed(xhtml),
|
||||
|
|
@ -204,10 +204,10 @@ class TextSyntaxes(object):
|
|||
)
|
||||
# TODO: text => XHTML should add <a/> to url like in frontends
|
||||
# it's probably best to move sat_frontends.tools.strings to sat.tools.common or similar
|
||||
self.addSyntax(
|
||||
self.add_syntax(
|
||||
self.SYNTAX_TEXT,
|
||||
lambda text: escape(text),
|
||||
lambda xhtml: self._removeMarkups(xhtml),
|
||||
lambda xhtml: self._remove_markups(xhtml),
|
||||
[TextSyntaxes.OPT_HIDDEN],
|
||||
)
|
||||
try:
|
||||
|
|
@ -217,7 +217,7 @@ class TextSyntaxes(object):
|
|||
# XXX: we disable raw HTML parsing by default, to avoid parsing error
|
||||
# when the user is not aware of markdown and HTML
|
||||
class EscapeHTML(Extension):
|
||||
def extendMarkdown(self, md):
|
||||
def extend_markdown(self, md):
|
||||
md.preprocessors.deregister('html_block')
|
||||
md.inlinePatterns.deregister('html')
|
||||
|
||||
|
|
@ -226,7 +226,7 @@ class TextSyntaxes(object):
|
|||
h.body_width = 0 # do not truncate the lines, it breaks the long URLs
|
||||
return h.handle(html)
|
||||
|
||||
self.addSyntax(
|
||||
self.add_syntax(
|
||||
self.SYNTAX_MARKDOWN,
|
||||
partial(markdown.markdown,
|
||||
extensions=[
|
||||
|
|
@ -251,22 +251,22 @@ class TextSyntaxes(object):
|
|||
"You can download/install them from https://pythonhosted.org/Markdown/ "
|
||||
"and https://github.com/Alir3z4/html2text/"
|
||||
)
|
||||
host.bridge.addMethod(
|
||||
"syntaxConvert",
|
||||
host.bridge.add_method(
|
||||
"syntax_convert",
|
||||
".plugin",
|
||||
in_sign="sssbs",
|
||||
out_sign="s",
|
||||
async_=True,
|
||||
method=self.convert,
|
||||
)
|
||||
host.bridge.addMethod(
|
||||
"syntaxGet", ".plugin", in_sign="s", out_sign="s", method=self.getSyntax
|
||||
host.bridge.add_method(
|
||||
"syntax_get", ".plugin", in_sign="s", out_sign="s", method=self.get_syntax
|
||||
)
|
||||
if xml_tools.cleanXHTML is None:
|
||||
if xml_tools.clean_xhtml is None:
|
||||
log.debug("Installing cleaning method")
|
||||
xml_tools.cleanXHTML = self.cleanXHTML
|
||||
xml_tools.clean_xhtml = self.clean_xhtml
|
||||
|
||||
def _updateParamOptions(self):
|
||||
def _update_param_options(self):
|
||||
data_synt = self.syntaxes
|
||||
default_synt = TextSyntaxes.default_syntax
|
||||
syntaxes = []
|
||||
|
|
@ -284,23 +284,23 @@ class TextSyntaxes(object):
|
|||
options.append('<option value="%s" %s/>' % (syntax, selected))
|
||||
|
||||
self.params_data["options"] = "\n".join(options)
|
||||
self.host.memory.updateParams(self.params % self.params_data)
|
||||
self.host.memory.update_params(self.params % self.params_data)
|
||||
|
||||
def getCurrentSyntax(self, profile):
|
||||
def get_current_syntax(self, profile):
|
||||
""" Return the selected syntax for the given profile
|
||||
|
||||
@param profile: %(doc_profile)s
|
||||
@return: profile selected syntax
|
||||
"""
|
||||
return self.host.memory.getParamA(NAME, CATEGORY, profile_key=profile)
|
||||
return self.host.memory.param_get_a(NAME, CATEGORY, profile_key=profile)
|
||||
|
||||
def _logError(self, failure, action="converting syntax"):
|
||||
def _log_error(self, failure, action="converting syntax"):
|
||||
log.error(
|
||||
"Error while {action}: {failure}".format(action=action, failure=failure)
|
||||
)
|
||||
return failure
|
||||
|
||||
def cleanStyle(self, styles_raw: str) -> str:
|
||||
def clean_style(self, styles_raw: str) -> str:
|
||||
""""Clean unsafe CSS styles
|
||||
|
||||
Remove styles not in the whitelist, or where the value doesn't match the regex
|
||||
|
|
@ -327,7 +327,7 @@ class TextSyntaxes(object):
|
|||
["%s: %s" % (key_, value_) for key_, value_ in cleaned_styles]
|
||||
)
|
||||
|
||||
def cleanClasses(self, classes_raw: str) -> str:
|
||||
def clean_classes(self, classes_raw: str) -> str:
|
||||
"""Remove any non whitelisted class
|
||||
|
||||
@param classes_raw: classes set on an element
|
||||
|
|
@ -335,7 +335,7 @@ class TextSyntaxes(object):
|
|||
"""
|
||||
return " ".join(SAFE_CLASSES.intersection(classes_raw.split()))
|
||||
|
||||
def cleanXHTML(self, xhtml):
|
||||
def clean_xhtml(self, xhtml):
|
||||
"""Clean XHTML text by removing potentially dangerous/malicious parts
|
||||
|
||||
@param xhtml(unicode, lxml.etree._Element): raw HTML/XHTML text to clean
|
||||
|
|
@ -360,9 +360,9 @@ class TextSyntaxes(object):
|
|||
)
|
||||
xhtml_elt = cleaner.clean_html(xhtml_elt)
|
||||
for elt in xhtml_elt.xpath("//*[@style]"):
|
||||
elt.set("style", self.cleanStyle(elt.get("style")))
|
||||
elt.set("style", self.clean_style(elt.get("style")))
|
||||
for elt in xhtml_elt.xpath("//*[@class]"):
|
||||
elt.set("class", self.cleanClasses(elt.get("class")))
|
||||
elt.set("class", self.clean_classes(elt.get("class")))
|
||||
# we remove self-closing elements for non-void elements
|
||||
for element in xhtml_elt.iter(tag=etree.Element):
|
||||
if not element.text:
|
||||
|
|
@ -389,11 +389,11 @@ class TextSyntaxes(object):
|
|||
# TODO: a way for parser to return parsing errors/warnings
|
||||
|
||||
if syntax_from == _SYNTAX_CURRENT:
|
||||
syntax_from = self.getCurrentSyntax(profile)
|
||||
syntax_from = self.get_current_syntax(profile)
|
||||
else:
|
||||
syntax_from = syntax_from.lower().strip()
|
||||
if syntax_to == _SYNTAX_CURRENT:
|
||||
syntax_to = self.getCurrentSyntax(profile)
|
||||
syntax_to = self.get_current_syntax(profile)
|
||||
else:
|
||||
syntax_to = syntax_to.lower().strip()
|
||||
syntaxes = self.syntaxes
|
||||
|
|
@ -411,7 +411,7 @@ class TextSyntaxes(object):
|
|||
# TODO: keep only body element and change it to a div here ?
|
||||
|
||||
if safe:
|
||||
d.addCallback(self.cleanXHTML)
|
||||
d.addCallback(self.clean_xhtml)
|
||||
|
||||
if TextSyntaxes.OPT_NO_THREAD in syntaxes[syntax_to]["flags"]:
|
||||
d.addCallback(syntaxes[syntax_to]["from"])
|
||||
|
|
@ -422,7 +422,7 @@ class TextSyntaxes(object):
|
|||
d.addCallback(lambda text: text.rstrip())
|
||||
return d
|
||||
|
||||
def addSyntax(self, name, to_xhtml_cb, from_xhtml_cb, flags=None):
|
||||
def add_syntax(self, name, to_xhtml_cb, from_xhtml_cb, flags=None):
|
||||
"""Add a new syntax to the manager
|
||||
|
||||
@param name: unique name of the syntax
|
||||
|
|
@ -456,9 +456,9 @@ class TextSyntaxes(object):
|
|||
if TextSyntaxes.OPT_DEFAULT in flags:
|
||||
TextSyntaxes.default_syntax = key
|
||||
|
||||
self._updateParamOptions()
|
||||
self._update_param_options()
|
||||
|
||||
def getSyntax(self, name):
|
||||
def get_syntax(self, name):
|
||||
"""get syntax key corresponding to a name
|
||||
|
||||
@raise exceptions.NotFound: syntax doesn't exist
|
||||
|
|
@ -468,7 +468,7 @@ class TextSyntaxes(object):
|
|||
return key
|
||||
raise exceptions.NotFound
|
||||
|
||||
def _removeMarkups(self, xhtml):
|
||||
def _remove_markups(self, xhtml):
|
||||
"""Remove XHTML markups from the given string.
|
||||
|
||||
@param xhtml: the XHTML string to be cleaned
|
||||
|
|
|
|||
Loading…
Reference in a new issue