Florian Bruhin
aa5da1b312
Don't set up YAML constructors/resolvers for default loaders
...
After reading https://pyyaml.org/wiki/PyYAMLDocumentation again, turns out
Loader.add_constructor and .add_implicit_resolver are actually *class* methods.
In other words, we've been adding dozens of constructors/resolvers to the
default YAML loader object, causing it to slow down massively in other tests
which call configdata.init().
Instead, create our own loader class and only add them once there.
I'm still not sure why this caused the duration to increase with every YAML load
though - that might still be some kind of bug in PyYAML.
Fixes #2777
2018-02-10 19:35:03 +01:00
Jay Kamat
33d9d4fe90
Improve performance of startup and shutdown
...
We call 'update_tab_titles' a lot of times which calls 'setTabText' on
every tab. 'setTabText' calls tabSizeHint and minTabSizeHint on every
tab as well, meaning this is an n^2 operation repeated many times.
First, this prevents setTabText from being called unless it's needed,
removing most of the work done.
Second, I remove tabs in reverse, to avoid recomputing the above for
every tab on shutdown (which is at least n^3)
2018-02-10 13:23:35 -05:00
Florian Bruhin
63766c1711
Fix typing.Union checks with Python 3.7
2018-02-10 17:22:21 +01:00
Florian Bruhin
80ee43beca
Add Python 3.7 to tox.ini
2018-02-10 16:54:55 +01:00
Florian Bruhin
c9bc72a539
Fix docstring
2018-02-10 16:54:45 +01:00
Florian Bruhin
015889373e
Update docs
2018-02-10 16:28:34 +01:00
Florian Bruhin
6d750aff8b
Merge remote-tracking branch 'origin/pr/3430'
2018-02-10 16:27:41 +01:00
George Edward Bulmer
ffddf9a15f
Code style review changes
2018-02-10 15:14:07 +00:00
Marc Jauvin
e6749dcf9f
[count] overrides win_id for tab-give cmd
...
- Resolves #3548
2018-02-10 10:13:07 -05:00
Marc Jauvin
e8cc74f499
Merge branch 'master' into issue#2785
2018-02-10 08:17:47 -05:00
6f9be72c5b
Update tests for statusbar changes
2018-02-10 13:15:12 +01:00
715cc7b7dd
Make statusbar widgets configurable
2018-02-10 13:15:11 +01:00
Florian Bruhin
5662407e01
Update docs
2018-02-10 11:53:52 +01:00
Florian Bruhin
4ac4833c93
Clean up YamlConfig._handle_migrations
2018-02-10 11:44:18 +01:00
Florian Bruhin
c7133a662c
Merge remote-tracking branch 'origin/pr/3577'
2018-02-10 11:40:49 +01:00
Florian Bruhin
11a0580e64
Fix Qt spelling
2018-02-10 10:41:57 +01:00
Florian Bruhin
8d5c0b5fa2
Merge remote-tracking branch 'origin/pr/3565'
2018-02-10 10:41:38 +01:00
Florian Bruhin
4e4a1d01c4
Remove qutebrowser_viewsource userscript
...
:view-source --edit can now be used instead.
2018-02-10 10:37:05 +01:00
Florian Bruhin
995e563352
Update docs
2018-02-10 10:36:58 +01:00
Florian Bruhin
92bc61d08d
Merge remote-tracking branch 'origin/pr/3563'
2018-02-10 10:19:52 +01:00
Marc Jauvin
c6ad23f921
address all mentionned issues except for file://
...
- re-encode url using QUrl.RemovePassword | QUrl.FullyEncoded
- improve readability for clipboard / primary selection code block
2018-02-10 00:38:27 -05:00
Marc Jauvin
504e29c004
fix configfiles tests
...
- fix test_renamed_key()
- fix test_deleted_key()
- combine both test_merge_persist tests using @pytest.mark.parametrize
- fix _handle_migrations(): mark data dirty for renamed and deleted
2018-02-09 21:25:11 -05:00
Marc Jauvin
d88a13598a
syntax improvements and use real class attributes
2018-02-09 17:14:40 -05:00
Florian Bruhin
b648345bf8
Update changelog
2018-02-09 22:50:36 +01:00
Florian Bruhin
47ec052194
Merge remote-tracking branch 'origin/pr/3558'
2018-02-09 22:50:00 +01:00
Florian Bruhin
3779f59a23
Update changelog
2018-02-09 22:48:51 +01:00
Florian Bruhin
30994b1154
Merge remote-tracking branch 'origin/pr/3555'
2018-02-09 22:48:25 +01:00
Florian Bruhin
207107082d
Merge commit '74759fe04c0fa1d465cb36d3f8b00d6ebd9ef49d'
2018-02-09 22:31:34 +01:00
Florian Bruhin
c82be35639
Update changelog
2018-02-09 22:29:40 +01:00
Florian Bruhin
16a3bece34
Add missing import
2018-02-09 22:28:14 +01:00
Florian Bruhin
1ea1c1ac78
Merge remote-tracking branch 'origin/pr/3549'
2018-02-09 22:27:31 +01:00
Florian Bruhin
1ed427c342
Update changelog
2018-02-09 22:27:05 +01:00
Florian Bruhin
7058a3be74
Regenerate docs
2018-02-09 22:25:39 +01:00
Florian Bruhin
0b5ba828db
Add missing test
2018-02-09 22:23:07 +01:00
Florian Bruhin
3a5baa1956
Merge remote-tracking branch 'origin/pr/3554'
2018-02-09 22:22:18 +01:00
Marc Jauvin
74759fe04c
add missing decorator to _on_proc_finished
2018-02-09 15:33:02 -05:00
Marc Jauvin
9f49ac8e59
revert "fix shorten line" from origin/master
2018-02-09 15:25:20 -05:00
Marc Jauvin
57fe674dc4
shorten lines
2018-02-09 15:22:56 -05:00
Florian Bruhin
80650d4c96
Merge remote-tracking branch 'origin/pr/3544'
2018-02-09 21:04:21 +01:00
Marc Jauvin
44af6f3f1b
Merge branch 'master' of https://github.com/qutebrowser/qutebrowser into tabs.mode_on_change
2018-02-09 14:57:41 -05:00
Marc Jauvin
9b7db8ee8a
Need to mark config as dirty in _handle_migrations()
...
Add tests for tabs.persist_mode_on_change migration
2018-02-09 14:41:33 -05:00
Marc Jauvin
4e2e2606ef
Merge branch 'tab-input-mode-patch' of https://github.com/mjauvin/qutebrowser into new--tab-input-mode
2018-02-09 12:28:40 -05:00
Marc Jauvin
85dfe5c403
add special code to migrate tabs.persist_mode_on_change setting to tabs.mode_on_change.
2018-02-09 11:28:21 -05:00
Marc Jauvin
a3ce03e0bd
address requested changes
...
- syntax cleanup
- use attr.ib when declaring class attributes
- remove unnecessary comments
- code simplification
2018-02-09 10:39:02 -05:00
Marc Jauvin
fecb551c5e
shorten lines
2018-02-09 10:39:02 -05:00
Marc Jauvin
91b70fab70
fix pylint/flake8 errors
2018-02-09 10:39:02 -05:00
Marc Jauvin
f3b52aaf23
fix asciidoc for tabs.mode_on_change
2018-02-09 10:39:02 -05:00
Marc Jauvin
21fc848839
document code a bit more
2018-02-09 10:39:02 -05:00
Marc Jauvin
a7db197e45
replace persist_mode_on_change with mode_on_change
...
supports old persist_mode_on_change functionality or new save/restore mode
2018-02-09 10:39:02 -05:00
Marc Jauvin
eb7e114e5f
add propery to save tab input mode
2018-02-09 10:39:02 -05:00