Incorporates suggestions from #5913: help text accurately reflects real
usage, 'html' name used instead of 'netscape', and the browser
positional argument is expunged in favor of relying on explicit input
format being specified, help epilog includes common browsers and their
profile formats as well as a reminder that the output should be
redirected to qutebrowser configurationfiles to take effect.
fix tests to use new html name
Before this change, we sometimes assumed that a dictionary filename had a .bdic
suffix, sometimes not, and sometimes we added it by hand.
For some reason (probably some minor API change?) this currently breaks running
dictcli.py.
While the minimal fix in #4986 works, it only does so because we use re.match
(not re.fullmatch) inside spell.py, so the .bdic suffix (which is present
there) is ignored.
This change instead refactors all dict handling so that the suffix is always
included in the filename, and only stripped off in the last moment when passing
it to QtWebEngine.
Closes#4986
This adds Chrome/Chromium support to the importer (which ought to be the
last of these). Bookmarks are read from JSON, while keywords/search
engines (the same thing here) are read from the Web Data sqlite3
database, and converted from OpenSearch format.
importer: add tests for opensearch
With coverage 4.4, the source name (qutebrowser/) is not added to the filename
anymore. To adjust for that, we remove qutebrowser/ from all paths, and also
make sure to remove it from what coverage returns (in case someone is running an
older version).
* Don't flag attributes as unused if they are used as global variables in
another module.
* Don't consider "True" and "False" variable names.
* Abort with error message when invoked on .pyc files.
This means we can remove the whitelisted globals in run_vulture.py and
the associated xfailing test.
We also needed to adjust run_vulture.py slightly as the file attribute
got renamed to filename.
Closes#1077.
There were two issues:
- Paths for coverage.py suddenly were absolute instead of relative, so we strip
the common base part if that happens.
/home/florian/proj/qutebrowser/git/qutebrowser/browser/cookies.py has 100%
coverage but is not in perfect_files!
/home/florian/proj/qutebrowser/git/qutebrowser/browser/http.py has 100%
coverage but is not in perfect_files!
[...]
- There was an io.UnsupportedOperationError in test_check_coverage.py because
of pytest-faulthandler, so we just don't load that in the subprocess.