header values should always be strings (at least "flup" cares)
updated circleci config (still with some ugly workaround to rewrite to MySQL host on Debian)
added python3-markdown2 package dependency for Ubuntu 20.04 test
updated circleci config to also test on Ubuntu 20.04
fixed string encoding of SSHA encoded passwords in Python 3
fixed logout action when there is no session
call_user_func passes args by value
fix dba _has_links
inherit functions with same signatures
delete temporary file
replace deprecated "each"
fix dba session storage for IPv6 addresses
fix returns for dba session API
jinja2 template: added SimpleMDE editor for markdown editing
jinja2: fixed alert messages for missing permissions, search result columns
updated circleci config to test on both ubuntu and debian
don't get confused by python-future making Python 3 package names available under Python 2 (but only with Python 2 functionality)
fix test for Python 2
don't allow javascript URLs in markdown content
updated version check for Markdown install
make sure to use the right deregister api so it works for older versions
backward compatibility with older Markdown modules that pass globals arg
escape HTML tags in markdown content
added markdown rendering support using either markdown2 or markdown
fixed ReStructuredText encoding with Python 3
jinja2: updated style for "Make a copy" and File selector buttons
jinja2: updated style for generic "Edit Items" button
jinja2: updated file listing/editing
added change log entries for WSGI improvements and issue 2551019 rework
reworked WSGI interface to not use the RequestDispatcher class for two
issue2551019 needs to be handled in the action code itself, not the WSGI handler
changing the sid after checking for collisions defeats the purpose
there is no thread module in Python 3 any more, so need to check for threading
factor out get_tracker so we can potentially customise if we want to reuse
jinja2: make sure grouping also works with Python 2
jinja2: show grouping in output, select options in sort control
jinja2: improve "Superseder" field handling
jinja2: added query editing pages
jinja2: added "Restore" query permission to default schema (as is the case with classic template)
jinja2: preserve change text in form if edit action fails
reworked edit form in jinja2 template to make is responsive and
issue2550912: Jinja2 template needs fixing of value for __came_from
polished jinja2 template
completed update of jinja2 template to bootstrap 4.4.1
use jinja2 i18n extension
updated changes and upgrading doc
updated CHANGES.txt for jinja2 fixes
jinja2: reviewed escaping and encoding for jinja2 template
msgfmt.make doesn't exist any more
Fixed unicode issues for XML template with Python 2
fixed typos in send_error_to_admin
fixed issue2550967: support .xml files in addition to .html in the
fixed issue2550993 and added test case
be more lenient when comparing string results
more mentions of updated MySQL client module
update link to new mysqlclient module and recommend update in upgrading.txt
access exception args in a Python 3 compatible way
ignore errors in PGP tests when removing pgphome directory
use mysqlclient instead of MySQL-python as its available on Python 2 and 3
added circleci configuration to test on Ubuntu 18.04
compared sorted lists as order can be random
make sure everything is sorted in the xmlrpc schema
always encode query parameters in sorted order
compare folded headers in mailgw tests
mention change from pyme to gpg module for PGP processing
set PATH and LD_LIBRARY_PATH for tests
attempt to compile gpgme and dependencies for travis-ci
temporarily disable gpg on CI test enironment
updated mailgw to no longer use mimetools based on jerrykan's patch
blobfiles now always stores/returns bytes
use gpg module instead of pyme module for PGP encryption
fixed encoding issues for Xapian indexer
updated changelog for random number rework
removed unused import of os module
reworked random number use
create input elements with attributes in a defined (sorted) order
fixed string encoding in test case
use PBKDF2 implementation from Python's hashlib, if available
conditionally install MySQL-python and pyme on Python 2 only
helper to allow comparing dicts and None values in Python 3
address Unicode encoding issues in jinja2 template
removed FasterStringIO
add search page to jinja2 template
fix MissingValue / MockNull to return False on __bool__ and add a
fixed memorydb string encoding
fixed incorrect usage of BytesIO
Python 3 compatibility for missing / mock value
better detection if we need a gettext workaround
fixed encoding issues in mailer
fix encoding in handle_xmlrpc
encoding fixes
replaced msgfmt.py with latest version supporting Python 3
only compare sorted output as order depends on implementation details
keep test code in sync with real implementation
encoding fixes in test cases
use .args for exception information
fixed backend detection for Python 3
set key for history sort to avoid sorting history args (could be a dict)
strings have an __iter__ method on Python 3, but we don't want to consider them iterable
fix infinite recursion in Python3