Mercurial > kallithea
view scripts/pyflakes @ 8588:210e76d69b62
mysql: bump charset to to 'utf8mb4' to get full UTF-8 support
We used to use 'utf8', but in MySQL, this is just an alias for 'utf8mb3' which
isn't full unicode. 'utf8mb4' has less surprises (especially if used with the
'utf8mb4_unicode_ci' collation).
MySQL character sets for server, database, tables, and connection are set
independently. Until now, we have specified 'utf8' when creating tables to
overrule the database charset and in the default MySQL connection URL.
For existing databases, it is recommended to change encoding (and collation) by
altering the each of the tables inside it as described on
https://stackoverflow.com/questions/6115612/how-to-convert-an-entire-mysql-database-characterset-and-collation-to-utf-8 .
author | Mads Kiilerich <mads@kiilerich.com> |
---|---|
date | Mon, 15 Jun 2020 16:57:20 +0200 |
parents | abb83e4edfd9 |
children |
line wrap: on
line source
#!/usr/bin/env python3 """ pyflakes with filter configuration for Kallithea. Inspired by pyflakes/api.py and flake8/plugins/pyflakes.py . """ import sys import pyflakes.api import pyflakes.messages class Reporter: warned = False def flake(self, warning): # ignore known warnings if isinstance(warning, pyflakes.messages.UnusedVariable): return if warning.filename == 'kallithea/bin/kallithea_cli_ishell.py': if isinstance(warning, pyflakes.messages.ImportStarUsed) and warning.message_args == ('kallithea.model.db',): return if isinstance(warning, pyflakes.messages.UnusedImport) and warning.message_args == ('kallithea.model.db.*',): return print('%s:%s %s [%s %s]' % (warning.filename, warning.lineno, warning.message % warning.message_args, type(warning).__name__, warning.message_args)) self.warned = True def unexpectedError(self, filename, msg): print('Unexpected error for %s: %s' % (filename, msg)) reporter = Reporter() for filename in sorted(set(sys.argv[1:])): pyflakes.api.checkPath(filename, reporter=reporter) if reporter.warned: raise SystemExit(1)