This week's qutebrowser updates

2014-10-27 Thread Florian Bruhin
And another week is over!

I felt rather dead last week, but then did some stuff on the weekend
and there were some nice contributions, so this mail won't be as short
as I thought it would! :)

I was asked for a rough timeline for v0.1. No hard feelings about it,
but that's about how I imagine it:

- Now:  I will mainly concentrate on bugfixes and few important
features for the work I do myself.
- Nov 14th: Deadline(-ish) for nice-to-have feature contributions.
- Dec 2nd:  Qt 5.4 release, so hopefully closing some upstream bugs!
- Dec 7th:  Deadline(-ish) for features I think are really useful to
have in v0.1.
- Dec 14th: qutebrowser v0.1 release (hopefully!), 1 year after the
initial commit

Note: Deadline doesn't mean I won't care about it anymore
(contributions are *always* most welcome), but I'll think twice about
including it in v0.1. It also doesn't mean I won't include it, I
probably won't be able to withstand the temptation :D

Overview


Excluding merges, 3 authors have pushed 21 commits to master and 21
commits to all branches. On master, 17 files have changed and there
have been 275 additions and 112 deletions.

2 Pull requests merged by 2 people
6 Issues closed by 1 person
12 Issues created by 1 person

Upgrade notes
-

In the `colors` section in the config, `tab.fg` has been split into
`tab.fg.odd`, `tab.fg.even` and `tab.fg.selected` - so you most likely
want to set them all to what `tab.fg` was for you before.

Features


- Open unknown protocols (e.g. magnet:// or mailto-links) with
  external viewer.

Improvements


- hints: Add option to show all hint chars as uppercase
  (thanks to Peter Vilim for the contribution!)
- Make scripts work when the PWD is inside the scripts folder.
- Split color option `tabs.fg` into `tabs.fg.(odd|even|selected)`,
  similiar to the background.
  (thanks to rikn00 for the contribution!)

Bugfixes


- Fix completion with flags
- Fix completion failing when scrolling fast through results
- Fix weird exception when hinting (elements without web frame)
- Fix src2asciidoc.py
- Fix updating of tab colors when the config changed.
- Fix exception when closing last tab with tabs->last-close set to
  "blank".

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
 GPG 0xFD55A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpUDWCNPSNTe.pgp
Description: PGP signature


This week's qutebrowser updates

2014-11-03 Thread Florian Bruhin
Crazy, it's been another week already!

Overview


https://github.com/The-Compiler/qutebrowser/pulse/weekly

Excluding merges, 2 authors have pushed 23 commits to master and 23
commits to all branches. On master, 17 files have changed and there
have been 500 additions and 226 deletions.

1 pull request merged by 1 person
6 Issues closed by 1 person
12 Issues created by 2 people

Upgrade notes
-

Nothing, I hope!

Features


- New hinting mode "hover" to hover an element using hints. Bound to
  ";h" by defailt. Thanks to rikn00 for the contribution!

Improvements


- Complete quickmarks with spaces more correctly.
- Completely redesign the crash dialog so hopefully users provide more
  information.

Bugfixes


- Fix hints when the hinting font contains quotes or other XML chars.
- Fix an exception when opening a new window via IPC.
- Add workaround for PyQt bug causing a hang on start for certain
  configurations.

Under the hood
--

- Add logging for various issues so they're easier to diagnose.

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
 GPG 0xFD55A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpFdkziO9Lgp.pgp
Description: PGP signature


This week's qutebrowser updates

2014-11-10 Thread Florian Bruhin
A week full of bugfixes this was! :)

Overview


https://github.com/The-Compiler/qutebrowser/pulse/weekly

Excluding merges, 1 author has pushed 51 commits to master and 55
commits to all branches. On master, 18 files have changed and there
have been 624 additions and 373 deletions.

12 Issues closed by 1 person
5 Issues created by 2 people

Improvements


- Hide a harmless _GTK_LOAD_ICONTHEMES Qt error.
- Updated pypeg2 install instructions.

Bugfixes


- Rewrote completion splitting which fixes various bugs related to
  that. (This used wy more time than I'd have liked it to)
- Don't handle "foo: bar" as an URL (specifically, ": ")
- Append hint elements inside -element on websites
- Fix exception on certain Qt warnings (without function)
- Fix "Exception ignored in:" warnings
- Fix exception when getting last main window (e.g. for downloads)
  after it was closed.

Under the hood
--

- Completion code cleanup
- Some other minor cleanups

Flo

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
 GPG 0xFD55A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpHsZFacIjl3.pgp
Description: PGP signature


This week's qutebrowser updates

2014-11-17 Thread Florian Bruhin
And another week with some bugfixes :)

In addition to the stuff listed here I'm working on a simple
hosts-based adblocker (because I got annoyed by ads enough because
somehow the Windows at work overwrites the /etc/hosts-equivalent
sometimes...) and on fixing all kinds of downloading bugs.

Also, I finally uploaded qutebrowser-git to the Archlinux AUR:
https://aur.archlinux.org/packages/qutebrowser-git

Overview


https://github.com/The-Compiler/qutebrowser/pulse/weekly

Excluding merges, 1 author has pushed 21 commits to master and 41
commits to all branches. On master, 15 files have changed and there
have been 313 additions and 201 deletions.

1 Pull request proposed by 1 person (myself, to track some issues)
8 Issues closed by 1 person
9 Issues created by 1 person

Improvements


- Leave insert mode when the active tab is changed.
- Force opening in foreground/background tab when a link is pressed
  with shift.
- Add 1px spacing to download view.
- Hide unimportant "load glyph failed" Qt message.

Bugfixes


- Manage downloads per-window, not globally - this fixed an exception
  when cancelling a download from a now closed window.
- Fix a Qt warning when closing a window while a download is active.
- Open new window on IPC connection when no existing window is found.
- Don't open new window if only commands are sent via IPC.
- Don't log some exceptions twice.
- Fix "schedule removal" log spam on shutdown
- Fix a segfault when qutebrowser is closed during a javascript prompt
  which is followed by another prompt/alert.
- Update cache size correctly if storage->cache-size is changed.
- Fix a weird exception which rarely occurs when disconnecting hints.

Flo

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
 GPG 0xFD55A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpEj_ljbjc5D.pgp
Description: PGP signature


Re: feature request

2014-11-24 Thread Florian Bruhin
Hi,

* henry atting  [2014-11-24 11:05:41 +0100]:
> is there already a feature (or is something similar in process of
> planing) witch allows enabling/disabling scripts/plugins easily, like in
> luakit (via ,ts/,tp; tn)

Ha, congrats for doing the first non-"weekly qutebrowser news" posting
on this list :D

What do these keybindings do in luakit exactly? Do they toggle plugins
per-page, or globally?

To do this per-page, two features would be needed:

1. Domain-wide settings. This is planned, but most likely not before
   v0.1 is released in December.

2. A :set --toggle option or so, to bind a key to. This is planned as
   well (so e.g. you could also add a keybinding to set/unset a proxy)
   but probably also not before v0.1 - but maybe, because I'd really
   need it myself as well :D

If these two features are implemented, I'll probably add the same
keybindings dwb has for them:

tsh - Toggle scripts for current host permanently
tsu - Toggle scripts for current url permanently
tth - Toggle scripts for current host temporarily
ttu - Toggle scripts for current url temporarily
ph - Toggle plugins for current host permanently
pu - Toggle plugins for current url permanently
pth - Toggle plugins for current host temporarily
ptu - Toggle plugins for current url temporarily

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
 GPG 0xFD55A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpoT2Ynd3aWj.pgp
Description: PGP signature


This week's qutebrowser updates

2014-11-24 Thread Florian Bruhin
Gah! Another week over already, 3 week to the planned release date...
Still not 100% sure if I'll make it, but we'll see :P

Also, more new features than I'd like this week - I should really
focus on bugfixes now! :D

Overview


https://github.com/The-Compiler/qutebrowser/pulse/weekly

Excluding merges, 1 author has pushed 41 commits to master and 59
commits to all branches. On master, 31 files have changed and there
have been 836 additions and 598 deletions.

1 Issue closed by 1 person
8 Issues created by 2 people

Upgrade notes
-

- Run :adblock-update if you want to use the host blocker.
  If not, run  :set permissions host-block-lists ""

Features


- A simple ad-blocker, based on /etc/hosts-lists. (yaaay!)
- New :download command to download an URL by hand.
- New option tabs->tabs-are-windows to open a new window for every
  operation opening a new tab.

Improvements


- Ignore "Content type missing" Qt warning
- Simplify logging of Qt warnings
- Get rid of automatic setuptools installing and ez_setup.py.

Bugfixes


- Fix for segfault-issues when starting (which only showed up when
  implementing the :download command)
- Handle QNetworkReply errors correctly in downloads.
- Update download view size correctly when download text changed.
- Workaround for a Qt bug leading to corrupted downloads when they're
  read from the cache.
- Handle subprocess errors correctly (e.g. with :spawn or :hint ...
  spawn)
- Various small download fixes.

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
 GPG 0xFD55A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpUCRvRZDs8d.pgp
Description: PGP signature


This week's qutebrowser updates

2014-12-01 Thread Florian Bruhin
2 weeks to go until the planned release - we'll see how it goes! At
least I did hold my promise and did a metric shitton of bugfixes this
week :D There also were some nice contributions, thanks to everyone
involved!

I also had the chance to build PyQt and Qt 5.4 and close some bugs
after verifying those were fixed upstream.

The packages and PKGBUILDs if someone feels like trying as well:
http://qutebrowser.org/qt5.4/

The qutebrower bugs fixed by Qt 5.4:

- Hang on HTML5 video
  https://github.com/The-Compiler/qutebrowser/issues/96

- Problems/segfaults with HTML5 videos
  https://github.com/The-Compiler/qutebrowser/issues/93

- Segfaults on Youtube videos
  https://github.com/The-Compiler/qutebrowser/issues/94

- Segfault when showing MP3
  https://github.com/The-Compiler/qutebrowser/issues/151

- Unable to load page: The specified configuration cannot be used.
  https://github.com/The-Compiler/qutebrowser/issues/129

- Font rendering bug on Metzeler page
  https://github.com/The-Compiler/qutebrowser/issues/181

- Segfault when scrolling down on twitter media pages
  https://github.com/The-Compiler/qutebrowser/issues/264

And now to this week's changes and fixes! :D

Overview


Excluding merges, 5 authors have pushed 49 commits to master and 50
commits to all branches. On master, 32 files have changed and there
have been 1,056 additions and 518 deletions.

3 Pull requests merged by 3 people
33 Issues closed by 1 person
12 Issues created by 1 person

https://github.com/The-Compiler/qutebrowser/pulse/weekly

Upgrade notes
-

Nothing, thanks to the (at least for simple cases) automatic config
migrating!

For the record:

- The "permissions" config section has been renamed to "content".
- colors->tab.* has been renamed to colors->tabs.*

Also, the search syntax has changed from "foo !g" to "g foo", like
dwb.

Features


- New qute:settings page as a (currently very minimalistic) way to
  comfortably view and edit all settings.
  Thanks to iggy for this contribution!

- New value 'ask' for network->ssl-strict which opens a prompt to ask
  to continue.

Improvements


- Various documentation fixes and improvements

- Change the search syntax to be like dwb's.
  Thanks to mfussenegger for this contributon!

- Easy way to install qutebrowser on Gentoo with an overlay.
  Thanks to posativ for setting this up!

- Ignore IPC when in exception handler to avoid opening new windows.

Bugfixes


- Don't handle numbers with a base (like 0xDEAD) or floats as IP
  addresses when entered into the URL bar.

- Fix @log_signals debugging helper with destroyed objects.

- Update tab bar correctly when changing the foreground color.

- Apply ui->default-zoom correctly to websites.

- Various download fixes and improvements:
- Work around broken servers closing the connection on downloads.
- Abort download filename question on early download errors.
- Avoid starting downloads before we know the filename if we can.
- Fix for downloads being killed when closing the tab they were
  started in.
- Fix downloading of qute:log.

- Fix opening quickmarks (or any split=False command) with a trailing
  space (e.g. when tabbing).
  Thanks to krobelus for an attempted fix which wasn't quite right but
  motivated me to fix this. :)

- Fix for opening relative file paths in a second instance via IPC.

- Fix for rare segfaults/exceptions when hinting.
  Thanks to V155 for helping me debug this!

- Fix an exception when setting ui->default-zoom to a value not in
  ui->zoom-levels.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
 GPG 0xFD55A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpC_OayVSHLs.pgp
Description: PGP signature


This week's qutebrowser updates

2014-12-08 Thread Florian Bruhin
Less than a week to go to v0.1, which will hopefully be released this
Sunday! I took days off from work starting Wednesday, so I can work on
getting the remaining bugs[1] fixed until then.

Of course this week some of them already were squashed! :)

I also spent some time last week to get a buildbot up which runs
tests automatically on each push on various operating systems
(Archlinux, Debian, 2x Ubuntu, 2x Windows).

It can be found here: http://buildbot.qutebrowser.org/
(the most interesting view is probably
http://qutebrowser.org:8010/waterfall )

Also, I could close two more bugs because they were fixed in Qt 5.4,
which will be released Wednesday:

- Weird font rendering with tewi
  https://github.com/The-Compiler/qutebrowser/issues/92

- Changing allow-plugins to false does not have the expected outcome
  https://github.com/The-Compiler/qutebrowser/issues/240

[1] 
https://github.com/The-Compiler/qutebrowser/issues?q=is%3Aopen+is%3Aissue+milestone%3Av0.1

Overview


Excluding merges, 2 authors have pushed 56 commits to master and 56
commits to all branches. On master, 37 files have changed and there
have been 911 additions and 193 deletions.

1 Pull request merged by 1 person
13 Issues closed by 1 person
5 Issues created by 2 people

https://github.com/The-Compiler/qutebrowser/pulse/weekly

Features


- Added a hostblock_blame script to find out why a certain host is
  blocked.
- Added a init_venv script to initialize a clean virtualenv to run
  qutebrowser in.
- Added a .desktop file
  Thanks to iggy for this contribution!

Improvements


- Open qute:settings when :set is used without any arguments.
- Add a keybinding Ss which opens qute:settings.
- Change the default startpage to use https.
- Use a better method to get scroll percentage (potential performance
  improvement)
- Force opening javascript windows in foreground.
- Handle ampersands in tab titles correctly.
- Various improvements for run_checks.py and asciidoc2html.py

Bugfixes


- Hopefully really fix segfaults/exceptions related to hinting.
- Fix segfault when closing a tab while a question is open.
- Fix a rare exception related to downloads.
- Fix config interpolation with user-supplied values.
- Fix statusbar text when entering another mode in passthrough mode.
- Don't destroy configfiles when there's an error while writing.

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
 GPG 0xFD55A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgp6pIkf4oRam.pgp
Description: PGP signature


qutebrowser still needs a logo!

2014-12-09 Thread Florian Bruhin
If everything works out like planned, qutebrowser v0.1 will be
released on Sunday. However, we still need a logo! I'd suck to release
v0.1 with some generic logo...

Anyone feels like drawing one, or knows someone who could do so?
There are some ideas at [1] - of course more ideas are always welcome
as well!

Thanks,

Florian

[1] https://github.com/The-Compiler/qutebrowser/issues/15

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
 GPG 0xFD55A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpfX8W72aA1V.pgp
Description: PGP signature


qutebrowser v0.1 released!

2014-12-14 Thread Florian Bruhin
Hi,

Exactly a year after the first commit[1] I'm proud to announce
qutebrowser v0.1 has been released!

qutebrowser is a keyboard-driven, vim-like browser based on PyQt5 and
QtWebKit - similiar to projects like Vimperator/Pentadactyl, dwb,
luakit, and others.

More information about qutebrowser is available at www.qutebrowser.org
Downloads are available at [2].

I originally started with qutebrowser because it was announced dwb (my
favourite browser at the time) was unmaintained[3] and I was
unsatisfied with existing alternatives.

A year later, I feel like the existing functionality is more than
enough for it to be used as a daily driver - and I as well as several
other people already do so.

The following features are already available:

- All the basic functionality you'd expect (i.e. browsing, tabs,
  javascript, flash support, etc.)
- Modal, vim-like input scheme.
- Cross-platform support (Linux, Windows, OS X)
- Adblocking via /etc/hosts-like files.
- Hinting (selecting links via keyboard)
- Downloads
- quickmarks (bookmarks with a label)
- Userscripts (e.g. shellscripts writing commands to a FIFO)
- Basic completion for commands, settings and quickmarks

Support is available in #qutebrowser on Freenode via IRC, or on the
mailinglist at qutebrowser@lists.qutebrowser.org (see [4]).

I'd be happy to hear about your thoughts and feature requests either
via the above channels, or via the issue tracker at [5].

Thanks to the following contributors:

- longneck
- rikn00
- Brian Jackson
- Mathias Fussenegger
- Johannes Altmanninger
- Peter Vilim
- Martin Zimmermann
- WOFall
- regines

I also want to thank everyone who tested qutebrowser before this
release and provided their valuable input and bugreports.

Florian

[1] 
https://github.com/The-Compiler/qutebrowser/commit/11a94957dc038fc27c5ff976197ad2b2d0352d20
[2] https://github.com/The-Compiler/qutebrowser/releases
[3] 
https://bitbucket.org/portix/dwb/pull-request/22/several-cleanups-to-increase-portability/diff#comment-3217936
[4] https://lists.schokokeks.org/mailman/listinfo.cgi/qutebrowser
[5] https://github.com/The-Compiler/qutebrowser/issues

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
 GPG 0xFD55A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpZiy9hRPYxH.pgp
Description: PGP signature


This week's qutebrowser updates

2014-12-15 Thread Florian Bruhin
A few hours late this time, as I really had to get some sleep
yesterday when I remembered I should write this :P

First of all, the big news: qutebrowser v0.1 has been released[1]!

v0.1.1 will probably follow somewhen in the next few days, after the
bugs[2] found in v0.1 have been fixed.

I also posted about qutebrowser on reddit[3][4][5], with great
success: 7'800 views from 2'400 visitors on the Github repos, and
more than 100 people who cloned the repo.


Also, a week ago, Qt 5.4 has been released[6]. This release comes with
a lot of bugfixes related to qutebrowser/QtWebKit, e.g. the segfault
on flash videos has been fixed. It also fixes the POODLE
vulnerability[7][8] by turning off SSLv3, so I urge everyone to
upgrade. My packages with debugging symbols have been updated[9]. The
modified PKGBUILDs now live in a separate git repository[10].


Without further ado, here are the updates for the past week - it's
quite a bit as I basically worked full-time on qutebrowser for 5 days
:D


Overview


Excluding merges, 3 authors have pushed 70 commits to master and 70
commits to all branches. On master, 161 files have changed and there
have been 15,269 additions and 11,081 deletions.

(note: these large numbers are because a lot of files have been moved)

2 Pull requests merged by 2 people
34 Issues closed by 1 person
24 Issues created by 3 people

https://github.com/The-Compiler/qutebrowser/pulse/weekly

Features


- Add a :quickmark-del command to delete quickmarks.
- Add hint target 'run' to execute a command based on a hint URL.
  Thanks to Johannes Altmanninger for this contribution!
- Add a qutebrowser icon.
  Thanks to WOFall for designing the icon!
- Add a cheatsheet picture.
  Thanks to regines for all the help with doing this!

Improvements


- The escaping of = as  in the config has been removed, as this
  shouldn't be needed anymore now that keybindings are in a separate
  config.
- Make init_venv.py more reliable on Windows.
- Various updates to the docs.
- Reduce URL width in statusbar if the commandline width increases.
- Add "Open" and "Retry" menu entries to downloads.
- Don't split arguments to :bind/:repeat/:later/:set-cmd-text to make
  them easier to use.
- Do reporting from crash dialog async in background.
- Also use the src html attribute in addition to href to resolve URLs.
  Thanks to Johannes Altmanninger for this contribution!

Bugfixes


- Fix a rare exception related to downloads.
- Fix config interpolation with non-default values.
- Fix the text in the statusbar when e.g. entering insert mode while
  in passthrough mode.
- Save files like the config atomically, so no data gets destroyed if
  there is an error while writing it.
- Fix exception when closing a tab with failed downloads.
- Handle cookies/cache/command history correctly in por^H^Hrivate
  browsing mode.
- Set a minimum height for the statusbar.
- Fix width calculating of tabs.
- Fix checking for errors when a page is loaded.
- Handle exceptions regarding file-handling.
- Create inexistent paths when a config file gets written.
- Fix un-hiding of hints.
- Fix updating of completion when the text length is unchanged.
- Handle quotes in split=False commands correctly.
- Handle flags with args correctly with split=False.
- Fix starting without a config.
- Fix an exception when using hints with an invalid command.
- Fix a source of segfaults when clicking links or closing tabs after
  hinting.
- Fix whitespace stripping with split=False commands (e.g.
  :quickmark-load and tabbing)
- Allow non-ASCII characters in keychains.
- Fix updating of scroll position with gg/G/etc.
- Fix loading of renamed config sections (currently
  "permissions"/"content")
- Fix displaying of section/option config validation error message.
- Fix an exception when using aliased commands.
- Fix an exception when using :zoom with an argument.

Under the hood
--

- Replace IOErrors by OSErrors.
- Rename a lot of files.
- Add missing files to MANIFEST.in
- Lots of other small cleanups.
- Add some tests for config loading.

[1] https://lists.schokokeks.org/pipermail/qutebrowser/2014-December/19.html
[2] 
https://github.com/The-Compiler/qutebrowser/issues?q=is%3Aopen+is%3Aissue+milestone%3Av0.1.1
[3] 
http://www.reddit.com/r/archlinux/comments/2pcash/qutebrowser_a_keyboarddriven_vimlike_browser/
[4] 
http://www.reddit.com/r/vim/comments/2pcboy/qutebrowser_a_keyboarddriven_vimlike_browser/
[5] 
http://www.reddit.com/r/linux/comments/2par8a/qutebrowser_a_keyboarddriven_vimlike_browser/
[6] http://blog.qt.digia.com/blog/2014/12/10/qt-5-4-released/
[7] https://en.wikipedia.org/wiki/POODLE
[8] https://www.poodletest.com/
[9] http://qutebrowser.org/qt-symbols-pkg/
[10] https://github.com/The-Compiler/qt-debug-pkgbuild

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pg

Re: Can't get adblock to work proper

2014-12-18 Thread Florian Bruhin
* shaggytwod...@teknik.io  [2014-12-18 17:25:54 -0800]:
> On 2014-12-18 15:55, di...@umshini-wami.org wrote:
> >It seems to be a problem for me to get adblocking to work proper.
> >I added a few more urls to the list in the
> >~/.config/qutebrowser/qutebrowser.conf but I can't get rid of some ads.
> >I tried to add some sites to a file called hosts in my
> >~/.config/qutebrowser but that also didn't work. How do you guys block
> >ads? My host-block-lists array in the qutebrowser.conf looks like this:
> >
> >
> >host-block-lists =
> >http://www.malwaredomainlist.com/hostslist/hosts.txt,http://someonewhocares.org/hosts/hosts,http://winhelp2002.mvps.org/hosts.zip,http://malwaredomains.lehigh.edu/files/justdomains.zip,http://pgl.yoyo.org/adservers/serverlist.php?hostformat=hosts&mimetype=plaintext,http://hosts-file.net/ad_servers.asp,https://easylist-downloads.adblockplus.org/fanboy-social.txt,https://easylist-downloads.adblockplus.org/easylist.txt,https://easylist-downloads.adblockplus.org/easyprivacy.txt,https://easylist-downloads.adblockplus.org/easylistgermany.txt,http://pgl.yoyo.org/adservers/serverlist.php?showintro=0;hostformat=hosts,/home/dings/.config/qutebrowser/hosts
> >
> >cheers
> 
> What format is your hosts file in, it needs to be as such:
> 
> 127.0.0.1  funkydomain.com

Either that, or just a list of domains without any IP - both should
work (optionally zipped).

Adblock lists *won't* work (yet) as they're more complicated than
that. Issue 29 has some more information:

https://github.com/The-Compiler/qutebrowser/issues/29

You'll need to use file:///home/dings/.config/qutebrowser/hosts for a
local file to work.

I just opened https://github.com/The-Compiler/qutebrowser/issues/378
to change that though :)

Also, don't forget to run :adblock-update after setting the option.

Out of curiosity: What are the pages you see ads on?

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpCfAQeNJdCD.pgp
Description: PGP signature


Re: [PATCH] Add -f option to reload

2014-12-20 Thread Florian Bruhin
* Sam Stuewe  [2014-12-19 08:47:50 -0600]:
> Attached is a patch to allow reloading a tab bypassing the page cache (along
> with a default keybinding to 'R').

Thanks!

However QWebPage isn't imported in the file yet, which will cause this
to fail. Mind adding the import (add ", QWebPage" to the top at "from
PyQt5.QtWebKitWidgets import ...") and sending another patch? :)

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpoCaPXiLjwE.pgp
Description: PGP signature


This week's qutebrowser updates

2014-12-22 Thread Florian Bruhin
And another week is over already!

Unfortunately there are still some things to fix for v0.1.1:
https://github.com/The-Compiler/qutebrowser/issues?q=is%3Aopen+is%3Aissue+milestone%3Av0.1.1

I spent a lot of time this week responding to reddit comments, reading
crash logs, and opening issues :D

I'm on my christmas holidays, so I hope to get all those bugs fixed
over the next days and release v0.1.1. We'll see how it goes!

Overview


Excluding merges, 4 authors have pushed 42 commits to master and 45
commits to all branches. On master, 33 files have changed and there
have been 678 additions and 450 deletions.

1 Pull request merged by 1 person
1 Pull request proposed by 1 person
23 Issues closed by 1 person
45 Issues created by 4 people

https://github.com/The-Compiler/qutebrowser/pulse/weekly

Improvements


- Make sure the documentation gets included for Windows builds (for
  v0.1 the documentation was missing and it got silently ignored).
- Open and remove clicked downloads.
- Add "Remove finished" to the download context menu.
- Add a network -> proxy-dns-requests and send DNS requests over proxy
  by default.
- Replace manual installation for OS X with Homebrew/MacPorts in docs.
  Thanks to posativ and fdik for this contribution!
- Always focus tabs on :undo.
- Set zoom to default (instead of 100%) with `=`.
- Don't treat strings like "31c3" as IP address.
- Save current version to state config.

Bugfixes


- Always auto-remove adblock downloads when done.
- Fix height calculation of download view.
- Allow maximizing the print preview under windows.
- Fix segfault/exception regarding SSL/authentification questions.
- Fix installing of virtualenv in docs for Debian.
- Fix exceptions when entering invalid interpolation values in
  qute:settings.
- Fix validating of settings with an interpolation.
- Fix an exception when zooming out with 0% zoom, or zooming in with a
  very big zoom.
- Fix an exception related to downloads.
- Fix scroll position not updating on some pages.
- Fix :view-source with the Windows build.
- Fix an exception on certain Qt warning messages.
- Fix handling of changed config in WebView.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpt5Xd59ghg3.pgp
Description: PGP signature


Fwd: [PyQt] ANN: PyQt v5.4 Released

2014-12-26 Thread Florian Bruhin
FYI: PyQt 5.4 has officially been released upstream.

The Archlinux packages aren't updated yet, but the snapshot they use
doesn't differ significantly from the final version, and I've already
marked the packages as out-of-date. My packages with debugging
symbols will be updated as soon as the Archlinux ones are.

For Windows users, qutebrowser v0.1.1 which should be released today
or tomorrow will ship with Qt/PyQt 5.4.

Florian

- Forwarded message from Phil Thompson  -

PyQt v5.4 has been released. This includes full support for Qt v5.4.0
including the new QtWebChannel and QtWebEngineWidgets modules, and the
restored QtXml module.

The Windows installers do not include the QtWebEngineWidgets module as
WebEngine required MSVC2013 and Python3 requires MSVC2010. Qt has been built
with the new dynamic OpenGL option so PyOpenGL should work again for most
people.

Phil

- End forwarded message -

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgplSVyp49_9I.pgp
Description: PGP signature


qutebrowser v0.1.1 released!

2014-12-28 Thread Florian Bruhin
Heya!

I just uploaded v0.1.1 which comes with some minor improvements and a
lot of bugfixes for the bugs reported since v0.1 was out. The
Archlinux AUR package has been updated already.

Thanks to the following people who contributed since v0.1:

* Florian Bruhin
* John ShaggyTwoDope Jenkins
* Martin Zimmermann
* Larry Hynes
* Joel Torstensson
* Regina Hug
* Helen Sherwood-Taylor

The next release will probably be v0.2. You can find the list of
issues/requests targetted for v0.2 here:

https://github.com/The-Compiler/qutebrowser/milestones/v0.2

Please keep the reports, feature requests, feedback and contributions
coming, you're all awesome! :)

Changes/Improvements


* Windows releases are now built with Qt 5.4 which brings many improvements and 
bugfixes.
* Clean up and temporarily disable alias completion.
* Set window icon.
* Ask the user when downloading to an already existing file.
* Add a troubleshooting section to the FAQ.
* Display IPC errors to the user.
* Rewrite keymode handling to use only one mode which also fixes various bugs.
* Save version to state config.
* Set zoom to default instead of 100% with :zoom/=.
* Adjust page zoom if default zoom changed.
* Force tabs to be focused on :undo.
* Replace manual installation instructions on OS X with homebrew/macports.
* Add a network -> proxy-dns-requests option.
* Allow min-/maximizing of print preview on Windows.
* Add "Remove finished" to the download context menu
* Open and remove clicked downloads.
* Add a qutebrowser.ico file for Windows.
* Various documentation improvements.
* Various other small improvements and cleanups.

Bugfixes


* Fix setting of QWebSettings (e.g. web fonts) with empty strings.
* Re-focus web view when leaving prompt/yesno mode.
* Handle :restart correctly with Python eggs.
* Handle an invalid cwd properly.
* Fix popping of a dead question in prompter.
* Fix AttributeError on config changes on Ubuntu.
* Don't treat things like "31c3" as IP address.
* Handle category being None in Qt message handler.
* Force-include pygments in freeze.py.
* Fix scroll percentage not updating on some pages like twitter.
* Encode Content-Disposition header name properly.
* Fix item sorting in NeighborList.
* Handle data being None in download read timer.
* Stop download read timer when reply has finished.
* Fix handling of small/big fuzzyval's in NeighborList.
* Fix crashes when entering invalid values in qute:settings.
* Abort questions in NetworkManager on destroyed.
* Fix height calculation of download view.
* Always auto-remove adblock downloads when done.
* Ensure the docs gets included in freeze.py.
* Fix crash with :zoom.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpti3N3uEhiQ.pgp
Description: PGP signature


Re: [PATCH] Add -f option to reload

2014-12-30 Thread Florian Bruhin
* Florian Bruhin  [2014-12-20 15:21:12 +0100]:
> * Sam Stuewe  [2014-12-19 08:47:50 -0600]:
> > Attached is a patch to allow reloading a tab bypassing the page cache (along
> > with a default keybinding to 'R').
> 
> Thanks!
> 
> However QWebPage isn't imported in the file yet, which will cause this
> to fail. Mind adding the import (add ", QWebPage" to the top at "from
> PyQt5.QtWebKitWidgets import ...") and sending another patch? :)

I now did the needed changes myself and merged it:

https://github.com/The-Compiler/qutebrowser/commit/8b9f323f41c945691fa742900dd16e7b530f70c4

Thanks for your contribution!

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpV7uLRUGJHT.pgp
Description: PGP signature


This week's qutebrowser updates

2015-01-05 Thread Florian Bruhin
Heya!

Last week I didn't think about sending an update mail because I was at
the annual CCC congress in Hamburg and busy with releasing v0.1.1:

https://lists.schokokeks.org/pipermail/qutebrowser/2014-December/29.html

If you're still on v0.1 (or older...) you should update! You can check
your current version using   :open qute:version.

A lot has happened in the past two weeks though! Also, it's
mind-blowing how many people have contributed lately - you're all
awesome! I hope I didn't forget anyone in the logs below.

Overview


(for the past week, because Github doesn't let me view this for two
weeks...)

Excluding merges, 7 authors have pushed 28 commits to master and 31
commits to all branches. On master, 147 files have changed and there
have been 450 additions and 311 deletions.

6 Pull requests merged by 6 people
1 Pull request proposed by 1 person
16 Issues closed by 2 people
6 Issues created by 1 person

https://github.com/The-Compiler/qutebrowser/pulse/weekly

Features


- User is now asked whether to overwrite an existing file with
  downloads.
  Thanks to Joel Torstensson for this contribution!

- Add an -f option to :reload to reload without cache.
  Thanks to HalosGhost for this contribution!

- Pass more information (QUTE_MODE, QUTE_SELECTED_TEXT,
  QUTE_SELECTED_HTML, QUTE_USER_AGENT) to userscripts.

Improvements


- Rewrite of the way nested keyboard modes (e.g. clicking an input
  field while a prompt is active) are handled because the previous
  behaviour was too complicated and buggy. Now there's only one active
  mode, and insert mode on click is disabled as long as we're not in
  normal mode.

- Give keyboard focus back to web view after leaving prompt mode.

- Set the window icon to the qutebrowser logo.

- Disable alias completion for now (not too important and needs more
  work to work properly)

- Add a fullscreen keybinding.
  Thanks to Joel Torstensson for this contribution!

- Remove hosts-file.net from default block lists (too many
  false-positives).

- Add a :search command in addition to "/foo" so it's more visible and
  can be used from scripts.
  Thanks to Johannes Altmanninger for this contribution!

- Various documentation improvements.
  Thanks to Regina Hug, Helen Sherwood-Taylor Martin Zimmermann and
  John ShaggyTwoDope Jenkins for their contributions!

- Small crash dialog/log improvements (grey out report button, move
  debug log to bottom)

- Expand ~ to the users home directory with :run-userscript.

- Improve the userscript runner on Linux/OS X by using
  QSocketNotifier.

- Don't add debug log to crash reports by default in private browsing
  mode.

- Add luakit-like gt/gT keybindings to cycle through tabs.
  Thanks to Thiago Barroso Perrotta for this contributon!

Bugfixes


- Display IPC error as warning instead as exception.

- Fix AttributeError on config changes with old Qt versions (e.g. on
  Ubuntu Trusty)

- Fix exception when showing a filename question for an already
  cancelled download.

- Make qutebrowser work even if started with an invalid working
  directory.

- Handle :restart correctly with Python eggs.

- Fix an exception in the completion with certain input.

- Fix setting of QWebSettings with an empty string.

- Fix crash with invalid ShellCommand setting values (e.g.
  general->editor).

- Fix segfault when refreshing/navigating away from pages while a
  prompt (SSL errors, javascript prompt, etc.) is open.

- Fix an invalid value in the default config (ooops!).
  Thanks to Matthias Lisin for this contribution!

- Fix exception when downloading files with chars not encodable in the
  system's filesystem encoding (e.g. UTF-8 with LANG=C).

- Fix hints->uppercase option.
  Thanks to Error 800 for this contribution!

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgp8ofZqPDDJH.pgp
Description: PGP signature


qutebrowser v0.1.2 released!

2015-01-14 Thread Florian Bruhin
Hi,

this release was already made past Saturday, but I didn't post an
annoucement yet as I was sick in bed over the past few days...

v0.1.2 is a bugfix-only release, with the bugfixes since v0.1.1
cherry-picked so they get out faster to people using non-git packages.

v0.2 will hopefully follow soon with some new features!

These are the changes since v0.1.1:

* Fix rare exception when a key is pressed shorly after opening a
  window
* Fix exception with certain invalid URLs like http:foo:0
* Work around Qt bug which renders checkboxes on OS X unusable
* Fix exception when a local files can't be read in :adblock-update
* Hide 2 more Qt warnings.
* Add !important to hint CSS so websites don't override the hint look
* Make init_venv.py work with multiple sip .so files.
* Fix splitting with certain commands with an empty argument (""/'').
* Uncheck sending of debug log by default when private browsing is on.
* Fix uppercase hints.
* Fix segfaults if another page is loaded while a prompt is open (SSL,
  javascript, ...)
* Fix exception with invalid ShellCommand config values.
* Add SSL info to version info.
* Replace unencodable chars (filesystem encoding) in download
  filenames.
* Remove hosts-file.net from blocker default lists.
* Fix user-stylesheet setting with an empty value.

Thanks to Error 800 and Matthias Lisin for contributing bugfixes for
this release!

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgp8wv1ITvcqP.pgp
Description: PGP signature


This week's qutebrowser updates

2015-01-20 Thread Florian Bruhin
Hi!

Another longer update as I was sick last week.

There wasn't that much happening lately, but there were some
infrastructure/buildbot-related changes I'll mention at the end.

There was also v0.1.2 released on the 7th, which is quite stable. Here
I'll just mention the updates since v0.1.2 was released - see
https://lists.schokokeks.org/pipermail/qutebrowser/2015-January/33.html
for the rest.

Again: If you want bleeding-edge, stay on master. v0.1.2 is just
master without the new features basically.

There are still 6 pullrequests open - most of them are simple, but I
plan to look at them after the WIP-change you see under infrastructure
(updating pylint) is done. Sorry for the delay!

I was a bit confused by the logs and branches, so I hope I didn't
forget anyone!

Overview


(for the past week, because Github doesn't let me view this for two
weeks...)

Excluding merges, 4 authors have pushed 17 commits to master and 27
commits to all branches. On master, 16 files have changed and there
have been 201 additions and 78 deletions.

3 Pull requests proposed by 3 people
6 Issues closed by 2 people
4 Issues created by 1 person

https://github.com/The-Compiler/qutebrowser/pulse/weekly

Features


- Add possibility to display warnings in the statusbar and to
  deprecate commands.
- Merge :run-userscripts into :spawn (with new --userscript option)
  and deprecate it.

Improvements


- Show default value in the completion.
  Thanks to Peter Vilim for this contribution!
- Various README/documentation improvements.
- Save contact address in error report dialog.

Bugfixes


- Remove old colors->tabs.separator option which was unused.
- Fix crash when the config is binary garbage (i.e. invalid unicode)

Checks/Infrastructure
-

- Added an OS X buildbot. Big thanks to:
- Christian Vogler for letting me use his Mac for this for free.
- feuermurmel for helping with debugging a nasty OS X virtualenv
  issue.
- The Chaos Computer Club Zurich hackerspace for hosting the Mac
  for free.
- WIP: Updating pylint to a more recent version for the checks.
- Make sure the right versio of the checkers run on all platforms when
  init_venv.py is used with run_checks.py.

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpU6ob8khLg1.pgp
Description: PGP signature


Re: qutebrowser crash reports

2015-01-20 Thread Florian Bruhin
Hi,

(Cc-ing this to the list because I'd like some discussion and ideas
about this. For people who have already spoken out about the confusing
crash dialog issue - I hear you, I just want to hear more opinions
an am unsure about what's best)

* Doug Stone-Weaver  [2015-01-16 01:58:36 -0800]:
> Good question - do you generally follow up with ALL crash reports?

I'd like to, but maybe one out of twenty has contact information.

Let's say the distribution of crash reports looks roughly like this,
at least right now with v0.1.2 which is quite stable.

- 5% real qutebrowser problems which need to be fixed. Those are
  usually easy, the exception and debug log gives me all information I
  need. I'd still like to follow-up with people and at least tell them
  the github issue link, so they can subscribe. But this is like 1
  report by week, and I don't expect it to increase much, unless I
  fsck up something.

- 50% segfaults because of distributions like Debian/Ubuntu which are
  still on an older Qt version. I'd like to tell people it's not
  actually a qutebrowser problem, and they should please wait for
  their distribution to upgrade.

- 10% segfaults which could somehow be worked around in qutebrowser,
  but I don't have any info, so I can't. The debug log on segfaults
  usually only says "qt_mainloop", so I don't know *anything*, but I'd
  desperatly like to fix the problem.

- 35% issues in qutebrowser which are already fixed, but people didn't
  upgrade for months. I'd like to tell them to do.

> I was expecting my second crash to just get lumped in with the first (if
> I'm remembering correctly and the stacks where the same), so I didn't
> think you'd need more info, hence I didn't expect the email.
> 
> If you're planning to follow up with everyone who hits a crash and
> submits a report (at least for now :))... here are some super subjective
> thoughts on what might have made me expect an email.

Thanks! I added them to
https://github.com/The-Compiler/qutebrowser/issues/447

> 2) It might be worth flipping the order of the
> boxes, so people enter their contact information first. It's possible
> that this will lower the hit rate of people entering repro steps... but
> I imagine it would increase the hit rate of people who give you their
> contact information? Maybe some A/B testing :) - just kidding.

People usually submit neither, or both. Most of the time neither.
Right now, the "OK" button being a report if you don't pay attention
kinda tricks them into reporting bugs even if they don't want to - but
in case of exceptions those are useful as well.

See the first point in the issue above - it'd stop people from
accidentally reporting info they don't want to, but I'm afraid I'll
also lose many useful reports if users really make a choice between
reporting and not. What do you think?

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpxGKMdE62Ox.pgp
Description: PGP signature


Re: qutebrowser crash reports

2015-01-21 Thread Florian Bruhin
* Riku Ahonen  [2015-01-21 10:34:53 +0200]:
> 
> 21.01.2015, 07:46, Florian Bruhin wrote:
> >Hi,
> >
> >(Cc-ing this to the list because I'd like some discussion and ideas
> >about this. For people who have already spoken out about the confusing
> >crash dialog issue - I hear you, I just want to hear more opinions
> >an am unsure about what's best)
> I think your ideas on bug tracker look good. I have some thoughts which
> might be useful:
> 
> "Auto-reject crashes if the stack points to qt_mainloop and Qt version is <
> Qt 5.4"
>
> - I don't know if would be implemented in report dialog or in the paste
> part, but informing the user about this in the crash dialog would help them.
> Something like "you seem to have Qt version x.x which is know to cause
> crashes. Updating to latest Qt might fix this problem."

Since "crash is in mainloop AND Qt is out-of-date" is a really good
indicator for an useless crash report, I plan to not display the crash
report dialog at all.

More something like "qutebrowser was restarted after a fatal crash
caused by the Qt library. Your distribution is using an outdated
version of Qt. Unfortunately, the only way to fix it is to wait until
they have updated." or so, without the ability to report.

> Another thing would be to write a document which describes most common types
> of crashes and what a user can do about them. Maybe something like you wrote
> in the cc'd email. And link to this document in crash dialog.

Hm, I like that idea. I wonder how many people will read that though,
given the big count of reports with *no info at all* at the moment.

I guess a surprising crash just isn't the right time for reading a
document about how to report crashes. :-/

But it'd probably be useful in general to link people to - I opened a
separate issue:

https://github.com/The-Compiler/qutebrowser/issues/480

> When I first sent a crash report with my email address I was a bit surprised
> it ended up on public web page. I think it would be nice to keep contact
> information private or tell the user about this in the crash dialog.

Huh, I think the crash dialog mentioned the reports being public.
Maybe I'm wrong, or this got lost in the first redesign I did.

There are basically two reasons they are public:

- I already had the pastebin set up, and didn't think there would be
  so many reports at the time I set it up, so I just used that.

- Sometimes I just dump the URL into an issue without much more
  information. If someone wants to help fixing the bug, it'd make
  sense for them to be able to see the report. Or in general, it'd be
  confusing if reports linked in public issues needed an account :-/

But yeah - given the amount of "real" issues is going down (and
hopefully will stay down when more tests are running), maybe I should
spend more time opening issues with any *relevant* information from
the full report, and making it private.

I also opened an issue:

https://github.com/The-Compiler/qutebrowser/issues/481

I probably have to set up a separate pastebin for qutebrowser reports.
I guess that'd make sense anyways.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpxhfKrXks7P.pgp
Description: PGP signature


Re: qutebrowser crash reports

2015-01-21 Thread Florian Bruhin
* Riku Ahonen  [2015-01-21 23:03:52 +0200]:
> 
> 21.01.2015, 10:56, Florian Bruhin wrote:
> >
> >When I first sent a crash report with my email address I was a bit surprised
> >it ended up on public web page. I think it would be nice to keep contact
> >information private or tell the user about this in the crash dialog.
> >Huh, I think the crash dialog mentioned the reports being public.
> >Maybe I'm wrong, or this got lost in the first redesign I did.
> >
> >There are basically two reasons they are public:
> >
> >- I already had the pastebin set up, and didn't think there would be
> >   so many reports at the time I set it up, so I just used that.
> >
> >- Sometimes I just dump the URL into an issue without much more
> >   information. If someone wants to help fixing the bug, it'd make
> >   sense for them to be able to see the report. Or in general, it'd be
> >   confusing if reports linked in public issues needed an account :-/
> >
> >But yeah - given the amount of "real" issues is going down (and
> >hopefully will stay down when more tests are running), maybe I should
> >spend more time opening issues with any *relevant* information from
> >the full report, and making it private.
> >
> >I also opened an issue:
> >
> >https://github.com/The-Compiler/qutebrowser/issues/481
> >
> >I probably have to set up a separate pastebin for qutebrowser reports.
> >I guess that'd make sense anyways.
> >
> >Florian
> >
> Maybe crash dialog could send the actual crash log into a public pastebin
> and possible contact information somewhere else? I don't know if I was
> unclear in my earlier message but I don't oppose public crash logs. I just
> think email addresses and such would better be kept private.

Too hard to implement. Right now I just can use a pastebin. I don't
want to implement my own server-side thing, I prefer to work on
qutebrowser.

And debug logs could have enough sensitive information for them to be
private.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpPkpiS4IAr4.pgp
Description: PGP signature


Re: [PATCH] Fix some check_libraries() for arch

2015-01-21 Thread Florian Bruhin
* Thorsten Wißmann  [2015-01-10 13:27:15 +1100]:
> By now, the python-jinja and python-pygments packages are available in
> community.
> 
> The attached patch 0001-Fix-some-check_libraries-for-arch.patch contains
> the commit, you can apply it with
> 
> git am 0001-Fix-some-check_libraries-for-arch.patch

Sorry for the delay, I was quite busy over the past few days :)

Merged now:
https://github.com/The-Compiler/qutebrowser/compare/5a0a0302df2a...011e398f77f3

I haven't checked, but my guess would be they always were in
[community] and I just failed with copy-paste.

Thanks!

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpCP2UUpAUn0.pgp
Description: PGP signature


This week's qutebrowser updates

2015-01-26 Thread Florian Bruhin
Hi!

Back to normal weekly updates hopefully!

Some interesting changes and some more infrastructure-related stuff
this week.

Overview


Excluding merges, 4 authors have pushed 77 commits to master and 77
commits to all branches. On master, 32 files have changed and there
have been 667 additions and 277 deletions.

3 Pull requests merged by 3 people
11 Issues closed by 1 person
11 Issues created by 1 person

https://github.com/The-Compiler/qutebrowser/pulse/weekly

Features


- Add ability to toggle a value to :set.
  Thanks to ZDarian for this contribution!
- Add new option tabs -> hide-always to hide the tabbar.
  Thanks to ZDarian for this contribution!
- Add new option ui -> hide-statusbar to hide the statusbar.

Improvements


- Various crash dialog UI improvements.
- Use python3 venv instead of virtualenv for init_venv.py.
  Thanks to Patric Schmitz for this contribution!
- Display error instead of crash dialog if there's a segfault with an
  old Qt version.
- Clone tab icon and text when cloning tabs.
- Clone zoom level when cloning tabs.
- Show loading percentage in window title.
- Add Voidlinux package and install instructions.
  Thanks to Eivind Uggedal for this contribution!
- Fix package output for Arch when checking for dependencies.
  Thanks to Thorsten Wißmann for this contribution!

Bugfixes


- Add quotes to empty default values in completion.
  Thanks to Peter Vilim for this contribution!
- Fix :spawn --userscript with multiple args.
- Re-enable qutebrowser.misc tests which accidentally were disabled.
- Fix retrying of downloads after the tab in which they were started
  in is closed.

Checks/Infrastructure
-

- Updated pylint to a more recent version for the checks.
- Added a --print-version argument to run_checks.py.
- Run virtualenv library versions in run_checks.py.
- Cache virtualenvs between tests.
- Various other small improvements in init_venv.py and run_checks.py.

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpFIOuDKPLwm.pgp
Description: PGP signature


This week's qutebrowser updates

2015-02-02 Thread Florian Bruhin
Heyho!

This was quite a productive week, interrupted quickly by my laptop
battery suddenly dropping to only 20 minutes per charge. Fortunately I
could get a new one quickly, and now got over 4 hours per charge :)

Thanks to the people who donated after me venting about my battery in
IRC - I won't name you here, but you know who you are! <3

Also I'd like your opinion on converting the config format to YAML:
https://github.com/The-Compiler/qutebrowser/issues/499 - do you like
it? Do you think it'll be worth the effort?

But now let's take a look at what happened this week:

Overview


Excluding merges, 1 author has pushed 32 commits to master and 32
commits to all branches. On master, 35 files have changed and there
have been 771 additions and 170 deletions.

10 Issues closed by 1 person
3 Issues created by 2 people

https://github.com/The-Compiler/qutebrowser/pulse/weekly

Features


- Add a new ui -> window-title-format config to configure how the
  window title should look.
- Clean up and refactoring of the save logic for config/state:
- Only save files if modified (e.g. don't overwrite the config if
  it was edited outside of qutebrowser and nothing was changed in
  qutebrowser)
- Save things (cookies, config, quickmark) periodically all 15
  seconds (time can be changed with the
  general -> auto-save-interval option)
- Record page history to disk.
  Currently the history is only saved to
  ~/.local/share/qutebrowser/history but not used anywhere (except in
  segfault report dialogs), but that means when introducing completion
  for history somewhen in the feature we'll already have some history.

Improvements


- Only resize completion when it's shown - this is probably a small
  performance improvement when resizing the window.
- Hide ad iframes completely instead of showing an error page in them.
- Don't open relative file paths with :open, only with commandline
  arguments.

Bugfixes


- Fix restoring of command widget when there's an error while entering
  a command.
- Fix completion size/position issues with ui -> hide-statusbar turned
  on.
- Garbage-collect networkmanagers correctly when downloads were
  running in a tab which got closed.
- Fix statusbar quickly popping up as dedicated window on start.
- Fix segfault when opening the context menu and then closing the tab.
- Fix back/forward not working on pages where ads in iframes were
  blocked (e.g. Reddit)
- Fix for hint labels not being drawn on pages with a very high
  z-index (e.g. the top bar with search on Youtube)
- Fix for exception when a download error/cancel occurs while the
  question whether to overwrite an existing file is asked.
- Fix for exception when entering a term with spaces with
  general -> auto-search set to false.

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpmETgX91nVs.pgp
Description: PGP signature


This week's qutebrowser updates

2015-02-09 Thread Florian Bruhin
Heyho,

time for another update! Some small bugfixes and features
here-and-there, but I'm mostly busy with the sessions branch:

https://github.com/The-Compiler/qutebrowser/tree/sessions

I hope to get this merged this week - there's already good progress, a
session round-trip (saving/loading) already works for tabs and
history. For a long while I thought this wouldn't be possible because
QtWebKit only lets us load history from a binary blob (serialisation
format). Thanks to https://github.com/OtterBrowser/otter-browser I
discovered it's possible to reverse-engineer that binary protocol
easily, and thus convert a human-readable history to a binary to load:

https://github.com/The-Compiler/qutebrowser/blob/9bdf40d364701f8e0d0590fd248a31f7603de025/qutebrowser/browser/tabhistory.py#L88-L142

But now back to the rest which happened this week :)

Overview


Excluding merges, 2 authors have pushed 21 commits to master and 32
commits to all branches. On master, 25 files have changed and there
have been 305 additions and 111 deletions.

1 Pull request proposed by 1 person
2 Issues closed by 1 person
1 Issue created by 1 person

https://github.com/The-Compiler/qutebrowser/pulse/weekly

Features


- Implement HTML5 Geolocation/Notifications.

Improvements


- Better structure and updates in stacktrace.asciidoc.
- Add a checker to run_checks to check if all directories contain an
  __init__.py
- New argument '-s' for qutebrowser to set a temporary value.
- New argument '-p' for the ':set' command to print the newly set
  value.
- Various debug logging improvements.

Bugfixes


- Make tests for qutebrowser.browser.http run again.
- Fix documentation generation for arguments with multiple values.
- Fix crashes when a tab was closed while a prompt (e.g. javascript)
  for that page was open.

Flo

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpgn0Ljctn5V.pgp
Description: PGP signature


qutebrowser v0.1.3 released!

2015-02-11 Thread Florian Bruhin
Hi,

I just released v0.1.3 which fixes a security issue and some other
bugs.

Security issue
--

Unfortunately passwords with HTTP authentification (i.e. the blue
input in the status bar) were logged in the debug log. This means it's
retrievable by the user by opening qute:log, and it will be sent in
crash reports if the user leaves the "send a debug log" option
checked.

Let me explain how this happened - I took care to not log passwords if
possible, e.g. keyboard input in insert mode is *not* logged. In this
case however, this happened because the widget which currently has
keyboard focus gets logged, to debug key input issues.

Usernames and passwords were leaked because the repr() (debug
representation) of the prompt widget also logged its text:

modeman:_eventFilter_keypress:204 handled: False,
forward-unbound-keys: auto, passthrough: True, is_non_alnum: False
--> filter: False (focused:
)

This issue existed since eb5527f897de74187ef748502b0fadd122f23f42
pushed on 28th October 2014, i.e. all released versions are affected.

It was fixed in c2f9cae770360848ca33083e628de79d8d0a1bc3 (master) and
b44d7c0b846670ea27cb6dab321f50ba48e6eb42 (v0.1.x):

--- a/qutebrowser/misc/miscwidgets.py
+++ b/qutebrowser/misc/miscwidgets.py
@@ -43,7 +43,7 @@ class MinimalLineEditMixin:
 self.setAttribute(Qt.WA_MacShowFocusRect, False)

 def __repr__(self):
-return utils.get_repr(self, text=self.text())
+return utils.get_repr(self)

There were 4 crash logs with leaked passwords in them, which are now
deleted. Unfortunately they were all without contact information.

I'm really sorry for this, and hope people will update soon.
Unfortunately mistakes happen, and in this case it was a non-obvious
way in which the information was logged.

For any questions you can reach me at m...@the-compiler.org, GPG ID
916E B0C8 FD55 A072 (a link to the key is also in the signature).

v0.1.3 and v0.2
---

v0.1.3 is a bugfix-only release, with the bugfixes since v0.1.2
cherry-picked so they get out faster to people using non-git packages.

If you want the latest features, stay on git. There are still some
things I want to finish for v0.2:

https://github.com/The-Compiler/qutebrowser/issues?q=is%3Aopen+is%3Aissue+milestone%3Av0.2

But still, I hope to release v0.2 in the next few days to weeks.

Changes since v0.1.2


* Don't show line edit text in its repr().
* Handle shutdown of page with prompt correctly.
* Various small logging improvements.
* fuzzy_url: handle invalid URLs with autosearch off
* Handle explicit searches with auto-search=false.
* Abort download override question on error/cancel.
* Set a higher z-index for hint labels.
* Don't open relative files in fuzzy_url with :open
* Various crashdialog improvements.
* Hide adblocked iframes.
* Close contextmenu when closing tab to avoid crash.
* Fix statusbar quickly popping up as window.
* Clean up NetworkManager after downloads finished.
* Fix restoring of cmd widget after an error.
* Fix retrying of downloads after the tab is closed.
* Fix some check_libraries() for arch
* Handle all IPCErrors properly.
* Handle another webelem.IsNullError with hints.
* Handle UnicodeDecodeError when reading configs.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpTjq6yRTJcu.pgp
Description: PGP signature


This week's qutebrowser updates

2015-02-17 Thread Florian Bruhin
Heya,

whoa, it's Tuesday already! So like every Monday, here are the weekly
updates! :P

First of all, as a reminder: qutebrowser v0.1.3 has been released last
Thursday - it fixes a security issue where passwords were accidentally
logged to the debug log:

https://lists.schokokeks.org/pipermail/qutebrowser/2015-February/47.html

If you haven't updated yet, you should! If you're using the git
repository, of course you can keep using that, the bug has fixed there
as well.

Other than that, there are definitely a few cool new features
(sessions!) new this week :) Note sessions have a new dependency,
PyYAML (probably named python3-yaml or so). If you're using
init_venv.py, you should delete your .venv folder and re-run
init_venv.py.

Overview


Excluding merges, 3 authors have pushed 35 commits to master and 96
commits to all branches. On master, 39 files have changed and there
have been 1,556 additions and 256 deletions.

1 Release published by 1 person
1 Pull request merged by 1 person
9 Issues closed by 1 person
6 Issues created by 1 person

https://github.com/The-Compiler/qutebrowser/pulse/weekly

Features


- New commandline-API and UI improvements for downloads.

  new commands: :download{,-cancel,-delete,-open,-remove}
  Thanks to Joel Torstensson for this contribution!

- Make it possible to configure tab titles.

  new setting: tabs -> title-format
  (similiar to ui -> window-title-format)

- Add support for sessions.

  new commands: :session{-delete,-load,-save}, :wq
  new setting: general -> save-session.

Improvements


- Add config options to globally disable geolocation/notifications
  instead of asking.

  new options: content -> geolocation and content -> notifications.

Bugfixes


- The password logging bug mentioned above.
- Fix starting with -c "".
- Ignore tab presses if they'd switch keyboard focus.
- Fix loading of history URLs containing spaces.
- Fix searching for a search term starting with a slash.
- Force saving of the config if new options were added.
- Fix handling of ", or None..." in documentation generator.

Under the hood
--

- Various bigger refactorings and cleanups.
- Reorganisation of the buildbot jobs (only one worker executing the
  lints, not one per OS): http://qutebrowser.org:8010/waterfall
- Buildbots now all have an X-server set up, for more involved tests.

Flo

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpjTcqvVUBsB.pgp
Description: PGP signature


This week's qutebrowser updates

2015-02-23 Thread Florian Bruhin
Heya,

And another weekly update! This time a bit less spectacular than last
week, mostly with some minor bug reports.

Overview


Excluding merges, 3 authors have pushed 36 commits to master and 48
commits to all branches. On master, 40 files have changed and there
have been 619 additions and 319 deletions.

1 Pull request merged by 1 person
2 Pull requests proposed by 2 people
3 Issues closed by 1 person
6 Issues created by 2 people

Features


- Add options content -> ignore-javascript-{prompt,alert} to ignore
  all javascript prompts/alerts.

Improvements


- Expand environment variables in config settings which take a file
  path. Thanks to Samir Benmendil for this contribution!
- Add a list of common user agents to the user agent setting
  completion.
- Add the --qt-name argument which is passed to Qt to set WM_CLASS.

Bugfixes


- Fix initial creating of config.
- Fix standarddir unittests when XDG_*_HOME is set.
- Fix for Qt overriding our config file when the webinspector is used.
- Fix error when setting option names with a ! in them.
- Fix crashes when closing tabs on Qt 5.2.1 (e.g. Ubuntu Trusty)
- Fix QIODevice warnings when closing tabs.
- Fix starting with -c '' again. (And added a unittest for it)
- Fix for processing Qt arguments.

Under the hood
--

- Various unittest fixes and improvements.
- Improve parsing of faulthandler (segfault) logs.

Flo

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: PGP signature


GitHub and qutebrowser

2015-02-26 Thread Florian Bruhin
Hi!

Since today, GitHub randomly decided to treat qutebrowser (and any
other QtWebKit browser - tried with QupZilla, rekonq and Otter) as an
old version of Safari. It then displays a "Please note that GitHub no
longer supports old versions of Safari." warning bar.

However, that's not all - they also break a lot of functionality like
switching branches, graph view, or editing labels/milestones for
issues.

I contacted GitHub support about this, and got this back:

Thanks for your feedback and I am sorry for the trouble. I can't
promise this will be resolved, but I have sent your feedback to
our team for them to consider it.

While this isn't too bad: If you're using GitHub in qutebrowser, can
you please also reach out to their support at
https://github.com/contact and tell them you're having trouble?

If you need a quick workaround, you can do something like:

:set network user-agent "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/538.1 
(KHTML, like Gecko) Safari/560.1 Version/8.0.3"

Then everything works like expected...

As soon as I looked at [1] and can actually specify a custom user
agent without hardcoded information, I'll probably add the Version/...
part by default, unless GitHub manages to fix this until then.

Florian

[1] https://github.com/The-Compiler/qutebrowser/issues/513

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgp7MMFwkSUr1.pgp
Description: PGP signature


Fwd: Re: Github suddenly broken with QtWebKit browsers

2015-02-26 Thread Florian Bruhin
Fortunately GitHub decided to fix the issue, so everything should work
as expected again, without me having to add dirty hacks to
qutebrowser:

- Forwarded message from Mislav Marohnić  -

Hi Florian, sorry that our changes to user agent parsing caused your
experience of GitHub on QtWebKit browsers to get degraded.

We followed your advice and now serve JavaScript to QtWebKit browsers
even if there is no "Version/X.Y" number present.

Things should be getting back to the way there were before. If not,
let us know. Thanks!

- End forwarded message -

Thanks a lot for everyone who helped by contacting the support as
well! :)

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgp_KiTEcv2BS.pgp
Description: PGP signature


Re: [PATCH] rocker-gestures

2015-03-02 Thread Florian Bruhin
Hi,

First of all, sorry for the late answer!

* Gregor Pohl  [2015-02-28 19:24:36 +0100]:
> Attached is a patch adding a config option "input->rocker-gestures",
> which disables the context menu and replaces it with Opera-like
> rocker gestures.
> 
> Specifically, holding the right mouse button and pressing the left
> button will go back in history. Holding the left mouse button and
> pressing the right button moves forward (It is very easy to get used
> to this. I can't live without it anymore, hence the patch).
> 
> I'm not sure if there is any interest in merging this, but I thought
> I'd at least share the patch.

I'd be okay with merging this - though I think the code can be
simplified a bit: A QMouseEvent has a button() and a buttons() method:

http://doc.qt.io/qt-5/qmouseevent.html#button
Returns the button that caused the event.

http://doc.qt.io/qt-5/qmouseevent.html#buttons
Returns the button state when the event was generated. [...]
For mouse press and double click events this includes the button
that caused the event.

Couldn't you just check if button() is Qt.LeftButton and buttons() is
Qt.LeftButton | Qt.RightButton, instead of saving the button state
yourself?

Also there are some other issues and nitpicks - though for the minor
stuff, if you prefer to not deal with my perfectionism that's
perfectly fine, I can also do those changes for you :)

> diff --git a/qutebrowser/browser/webview.py b/qutebrowser/browser/webview.py
> index 13b2cbb..644e349 100644
> --- a/qutebrowser/browser/webview.py
> +++ b/qutebrowser/browser/webview.py
> @@ -42,6 +42,7 @@ LoadStatus = usertypes.enum('LoadStatus', ['none', 
> 'success', 'error', 'warn',
>  tab_id_gen = itertools.count(0)
>  
>  
> +

Remove that blank line.

> @@ -86,6 +87,10 @@ class WebView(QWebView):
>  url_text_changed = pyqtSignal(str)
>  shutting_down = pyqtSignal()
>  
> +#Mouse button states for rocker gestures
> +left_pressed = False
> +right_pressed = False
> +

If those are still needed, they should be initialized in __init__, not
here. Otherwise they'd be class rather than instance variables, and
all instances of the class would share them.

> @@ -178,6 +185,12 @@ class WebView(QWebView):
> 100)
>  self._default_zoom_changed = False
>  self.init_neighborlist()
> +if section == 'input' and option == 'rocker-gestures':
> +if config.get('input','rocker-gestures'):

Add a space after the comma here.

> +self.setContextMenuPolicy(Qt.PreventContextMenu)
> +else:
> +self.setContextMenuPolicy(Qt.DefaultContextMenu)
> +
>  
>  def init_neighborlist(self):

Only one newline between methods, so remove the added newline here.

> @@ -497,7 +510,15 @@ class WebView(QWebView):
>  Return:
>  The superclass return value.
>  """
> -if e.button() in (Qt.XButton1, Qt.XButton2):
> +if e.button() == Qt.LeftButton:
> +   self.left_pressed = True
> +elif e.button() == Qt.RightButton:
> +self.right_pressed = True
> +
> +if e.button() in (Qt.XButton1, Qt.XButton2) or (
> + e.button() in (Qt.LeftButton, Qt.RightButton)
> + and config.get('input', 'rocker-gestures')
> + and self.right_pressed and self.left_pressed):

I'd prefer this to be written like this:

is_rocker_gesture = (e.button() in (Qt.LeftButton, Qt.RightButton) and
 config.get('input', 'rocker-gestures') and
 self.right_pressed and self.left_pressed)

if e.button() in (Qt.XButton1, Qt.XButton2) or is_rocker_gesture:

Otherwise this if gets rather long to grasp.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpxSNt8lBxoy.pgp
Description: PGP signature


Qt 5.4.1 released!

2015-03-02 Thread Florian Bruhin
Hi!

Last Tuesday, Qt 5.4.1 was released upstream: [1]

Yesterday, Archlinux updated their packages to 5.4.1, and today I
rebuilt the debug packages[2].

This release also fixes some bugs related to qutebrowser:

- High number of wakeups when unused due to infinite "poll"
  https://github.com/The-Compiler/qutebrowser/issues/272
  https://bugreports.qt.io/browse/QTBUG-39475
  https://codereview.qt-project.org/#/c/100543/

- QWebView is leaking memory on image reload
  https://bugreports.qt.io/browse/QTBUG-44023
  https://codereview.qt-project.org/#/c/104151/

- Regression from 5.3.2 : WebGL crashes the QtWebKit
  https://bugreports.qt.io/browse/QTBUG-43831
  https://codereview.qt-project.org/#/c/103593/

- Youtube HTML5 video flashes in inverted colors once per second
  https://github.com/The-Compiler/qutebrowser/issues/351
  https://bugreports.qt.io/browse/QTBUG-43520
  https://codereview.qt-project.org/#/c/102971/

- System sound reset to 100% after YouTube loads a new video
  https://github.com/The-Compiler/qutebrowser/issues/356
  https://bugreports.qt.io/browse/QTBUG-43479
  https://codereview.qt-project.org/#/c/102899/
  https://bugs.webkit.org/show_bug.cgi?id=118974

- Cannot copy/ paste data from owncloud to Qt-applications
  https://bugreports.qt.io/browse/QTBUG-43149
  https://codereview.qt-project.org/#/c/101729/

- Warning "content-type missing in HTTP POST, defaulting to
  application/x-www-form-urlencoded" when loading a webpage
  https://bugreports.qt.io/browse/QTBUG-42479
  https://codereview.qt-project.org/#/c/99686/

- PATCH and DELETE request support
  https://github.com/The-Compiler/qutebrowser/issues/134
  https://bugreports.qt.io/browse/QTBUG-42456
  https://codereview.qt-project.org/#/c/99687/

Florian

[1] http://blog.qt.io/blog/2015/02/24/qt-5-4-1-released/
[2] 
https://github.com/The-Compiler/qutebrowser/blob/master/doc/stacktrace.asciidoc#archlinux

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpYJJZS2StNI.pgp
Description: PGP signature


This week's qutebrowser updates

2015-03-02 Thread Florian Bruhin
Heyho,

and another week passed already, of course not without some
qutebrowser updates! ;)

There's also something still work in progress:

- Making the web history a lot more efficient (faster and memory
  consumption).

Overview


Excluding merges, 2 authors have pushed 34 commits to master and 34
commits to all branches. On master, 44 files have changed and there
have been 823 additions and 393 deletions.

1 Pull request merged by 1 person
10 Issues closed by 2 people
4 Issues created by 3 people

https://github.com/The-Compiler/qutebrowser/pulse

Features


- Add option to set minimum number of chars in hints
  Thanks to Ram-Z for this contribution!
- Make it possible to use :open -[twb] without url.
- Add input -> partial-timeout option to clear partial keystrings.

Improvements


- Display more details in earlyinit import error messages.
- Print stacktrace to log on Qt warnings
- Move cursor to end of textboxes when hinting.
- Disable insecure SSL ciphers (< 128bit) for Qt 5.2 (Ubuntu Trusty).
- Disable completion for debug console.
  (it never really worked anyways)
- Don't start searches on invalid URLs for quickmarks/startpage.

Bugfixes


- Fix removing of partial downloads when a download is cancelled via
  context menu.
- Fix RuntimeError when navigating away from a page using
  geolocation/notifications.
- Allow font names with integers in them.
- Fix hinting in new tab/window when javascript is used to load the
  link.
- Log rfc6266 UnicodeDecodeError to correct logger.
- Fix buildbot badge in README

Under the hood
--

- Clean up handling of standard dirs.
- Restore sys.std* in utils.fake_io on exceptions.
- Refactor how click/hint open targets are handled.
- Refactor the keyboard input parsers.
- Various unittest fixes and improvements.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgppBuO1AWTlk.pgp
Description: PGP signature


Re: [PATCH] rocker-gestures

2015-03-03 Thread Florian Bruhin
Hi Gregor,

* Gregor Pohl  [2015-03-03 12:49:25 +0100]:
> Thank you for your feedback! I have adopted the changes you mentioned.

Thanks a lot for your contribution! Merged as c8c095d:
https://github.com/The-Compiler/qutebrowser/commit/c8c095d499eac9e117561a54b5291a57b700b5c6

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgph9B6M_ZL2E.pgp
Description: PGP signature


This week's qutebrowser updates

2015-03-09 Thread Florian Bruhin
Hi!

Another week is over, and this one definitely is full of qutebrowser
updates!

Overview


Excluding merges, 4 authors have pushed 52 commits to master and 56
commits to all branches. On master, 34 files have changed and there
have been 1,016 additions and 321 deletions.

1 Pull request merged by 1 person
1 Pull request proposed by 1 person
10 Issues closed by 2 people
3 Issues created by 2 people

https://github.com/The-Compiler/qutebrowser/pulse

Features


- Add Opera-like mouse rocker gestures.

  This adds a new setting input -> rocker-gestures which enables going
  back/forward in history by holding the left and pressing the right
  mouse button, and vice versa.
  Thanks to Gregor Pohl for this contribution!

- Make it configurable what to show in the completion for downloads.

  This adds a new setting completion -> download-path-suggestion
  (path/filename/both), and many related fixes.
  Thanks to Joel Torstensson for this contribution!

Improvements


- Various history performance improvements.
- Adjust prompt size based on its contents (similiar to the command
  prompt).

Bugfixes


- Fix exceptions when getting signals for deleted tabs.
- Fix exception when using :tab-clone with tabs-are-windows=true
- Fix exception when using :back/:forward -w.
- Fix links opening in background after background-hinting.
- Fix warning when closing qutebrowser via Cmd+Q on OS X
- Hide Qt warning when aborting a download with errors.
- run_checks: Fix running of pyroma/check-manifest, fix logging.
- Fix retrying of downloads which were started in a now closed tab.
- Fix race condition/exception when a page gets deleted after clicking
  an unknown element.
- pylint open-without-encoding check: Fix false-positives with
  non-const arguments.

Under the hood
--

- Added coverage.py (test coverage reports) to the buildbot:
  http://www.qutebrowser.org/coverage/archlinux/338/index.html
  Curently it's at 42%, though most of that is because GUI code
  currently doesn't get tested automatically.
- Various small doc updates.
- Various small improvements to logging.
- Various improvements to the tests (which finally run without
  segfaulting sometimes on Windows!)
- Make sure a command hasn't more completions than arguments.
- Refactoring/renaming of LineConfigParser.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpaUUGV90cTB.pgp
Description: PGP signature


Testers needed for history completion

2015-03-14 Thread Florian Bruhin
Hi!

@toofar on github and I started working on history completion, and it
seems to work pretty well by now! However I want some feedback
(especially on performance) before merging this.

Can you please test the histcomplete branch? When you got the git
repo, you can simply do 'git pull' and 'git checkout histcomplete'.

Then check how using 'o' feels, and if the performance is acceptable.
If it is,  :set completion web-history-max-items -1   then restart
qutebrowser and test again.

Things which potentially could be sluggish:

- Opening the completion the first time with 'o'.
- Using 'o' after the first time.
- Using 'o' and typing (without using the completion)
- Scrolling the completion (with tab and scrollbar/mousewheel)

Also, it'd be good to know what this says for you:

sort ~/.local/share/qutebrowser/history | cut -d' ' -f2 | uniq | wc -l

See https://github.com/The-Compiler/qutebrowser/pull/547 for
discussions.

Thanks!

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpzNi3P9UHE0.pgp
Description: PGP signature


This week's qutebrowser updates

2015-03-16 Thread Florian Bruhin
Hi,

Another week with some highlights and lots of smaller changes! :)

Overview


Excluding merges, 4 authors have pushed 67 commits to master and 72
commits to all branches. On master, 63 files have changed and there
have been 1,555 additions and 641 deletions.

4 Pull requests merged by 4 people
13 Issues closed by 1 person
8 Issues created by 2 people

https://github.com/The-Compiler/qutebrowser/pulse

Features


- History completion!

  Definitely a much-requested feature - now @toofar/Jimmy started
  implementing it and I did some improvements on top of that. Thanks!

  This adds some new options:
completion -> timestamp-format:
The format used to display the history timestamps.
completion -> web-history-max-items:
How many history items to show in the completion.
completion -> cmd-history-max-items:
Renamed from history-length.

Improvements


- If an SSL error is raised multiple times with the same
  error/certificate/host/scheme/port, the user is only asked once.

- Add a --rapid option to :hint. The rapid/rapid-win targets are now
  deprecated, and --rapid can be used as well with
  run/hover/userscript/spawn.

- Add a hints -> scatter option, which (when turned off) distributes
  the hints sequentially (like dwb) instead of scattering their
  positions (like Vimium).

- Add an -f argument to :bind to overwrite the old binding.

- Add some documentation about how to write userscripts:
  
https://github.com/The-Compiler/qutebrowser/blob/master/doc/userscripts.asciidoc

- Various performance improvements for the completion.

- Handle things like "Foo::Bar" as search term, not as URL.
  Thanks to Patric Schmitz for this contribution!

- Remove default search engines so things like ":open ddg foo" or
  ":open google sucks" works as expected.
  Thanks to error800 for this contribution!

- Use alternating row colors in copletion.
  This adds a new colors -> completion.alternate-bg option.

- Ensure the user only sets a family (no size/weight) for the fonts ->
  web-family-* settings.

- Various performance improvements when qutebrowser is idle.
  When unused qutebrowser now shouldn't waste any CPU cycles anymore.
  Except on Windows, where there still has to be a timer polling for
  signals, because... Windows.


Bugfixes


- Fix an exception which occured when getting signals for already
  deleted tabs.
- Force saving when using :save even with auto-save-config turned off.
- Highlight text case-insensitively in completon.
- Scroll completion to top when showing it.
- Fix fonts not being anti-aliased (or possibly wrong in other ways)
  under some circumstances.
- Fix package names for manual compilation in stacktrace.asciidoc.
- Ignore empty lines in quickmarks/history.


Under the hood
--

- Refactor qutebrowser.config.websettings.
- Various small fixes for tests.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpJPMVPpWnu9.pgp
Description: PGP signature


qutebrowser v0.1.4 released!

2015-03-18 Thread Florian Bruhin
Hi,

I just released v0.1.4 which adds workarounds for two
security/privacy-related Qt issues and backports some other bugs.

Windows builds will be delayed a bit (aka. my Windows VM wants to
install updates), but everything else is uploaded.

Privacy-related Qt bug
--

!! TL;DR: Please update and delete your
!! ~/.cache/qutebrowser/WebpageIcons.db if you used private browsing
!! mode for stuff you don't want on your hard disk.

Back in January, a pull request was opened[1], which apparently fixed
an issue with URLs getting written to the favicon in private browsing
mode for the reporter.

I was unable to reproduce the exact behaviour the reporter was seeing
and the proposed fix was incomplete, which is why I decided to look at
it again later.

I was reminded of that bug when it got big in the media[2] the exact
same bug is present in Safari. As this sounded awfully similiar, I
decided to investigate. I'm deeply sorry for not taking action earlier
and dismissing this too fast - I misjudged the scope of this issue,
and this definitely isn't how I want to handle privacy-relevant bugs.

After coordinating with Qt's security contact I ported the upstream
fix[3] to QtWebKit[4] where it's currently integrating in their CI.

I also opened a bug[5] Debian BTS so this hopefully gets backported to
older releases in Debian as well. I extended and applied the
workaround[6] from the pull request (thanks to sbinix!), and decided
to release v0.1.4 because of this.

If you're using the git version, please update to the latest master
where the workaround is applied as well.

If you visited pages in private browsing mode which you'd rather not
see recorded on your disk, I recommend deleting
~/.cache/qutebrowser/WebpageIcons.db (e.g. using shred[7]) so you can
be sure there are no traces left behind.

The second noteworthy fix is disabling of SSL ciphers commonly
regarded as insecure (< 128bit). This change was made upstream with
Qt 5.3, so this workaround only affets people using Qt 5.2, e.g. on
Ubuntu Trusty.

Let me reiterate over this: Those issues weren't my fault - but that
doesn't mean they're not my department (tm).

As always, for any questions you can reach me at m...@the-compiler.org,
GPG ID 916E B0C8 FD55 A072 (a link to the key is also in the
signature).

[1] https://github.com/The-Compiler/qutebrowser/pull/461
[2] 
http://appleinsider.com/articles/15/03/13/years-old-safari-private-browsing-bug-saves-url-of-every-page-visited-remains-unfixed
[3] http://trac.webkit.org/changeset/181565
[4] https://codereview.qt-project.org/#/c/108936/
[5] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=780748
[6] 
https://github.com/The-Compiler/qutebrowser/commit/330e03d382a57660eb8c49ef2c318c07f08a6392
[7] http://linux.die.net/man/1/shred

v0.1.4 and v0.2
---

v0.1.4 is a bugfix-only release, with the bugfixes since v0.1.3
cherry-picked so they get out faster to people using non-git packages.

If you want the latest features, stay on git. There are still some
rough edges I want to look at before releasing v0.2:

https://github.com/The-Compiler/qutebrowser/issues?q=is%3Aopen+is%3Aissue+milestone%3Av0.2

But still, I hope to release v0.2 in the next few days to weeks.

Changes since v0.1.3


* Stop the icon database from being created when private-browsing is set to 
true (d9f3566, 891bb86)
* Disable insecure SSL ciphers (< 128bit) for Qt 5.2. (6fe8160)
* Improvements to CPU usage when idle. (a4a6099, 44dd4da)
* Ensure there's no size for font-family settings. (f69470d)
* Refactor websettings and save/restore defaults. (71dbdb3)
* Remove default search engines. (6c0e470)
* Handle URLs with double-colon at the beginning as search strings (669760e, 
2322ee4)
* Adjust prompt size hint based on content. (e8b689a)
* Ignore RuntimeError in mouserelease_insertmode. (20c3e8d)
* Hide Qt warning when aborting download reply. (05f5083, 4ec6183)
* Hide "Error while shutting down tabs" message. (baa3dfd, 1251c28)
* Clear open target in acceptNavigationRequest. (8f10a97)
* Fix handling of signals with deleted tabs. (202b267, 2b34fbc)
* Various small improvements to logging. (d0a0e39, bfcce19, d24360d)
* Various improvements for hinting. (415c291, d929590, efb0828, 471e62f, 
f3b55d6)
* Remove debug console completing completely. (8291090)
* Restore sys.std* in utils.fake_io on exceptions. (a6f77d5)
* Allow font names with integers in them. (4bad99e)
* Fix QIODevice warnings when closing tabs. (0d1f4c0)
* Improve parsing of faulthandler logs. (51276c6, 7dbdc1b)
* Set the QSettings path to a config-subdirectory. (e02897e)
* Add workaround for adblock-message without window. (ab011cd)
* Fix searching for terms starting with a slash. (a8371d3)
* Ignore tab key presses if they'd switch focus. (d618892)

The Windows builds also will come with Qt 5.4.1 instead of Qt 5.4.0,
see my previous mail[8] for the relevant fixes contained there.

[8] https://lists.schokokeks.org/pipermail/qutebrowser/2015-Ma

This week's qutebrowser updates

2015-03-24 Thread Florian Bruhin
Heyho,

I just noticed I totally forgot to send this week's updates on Monday.
Oh well, Wednesday it is then! :)

Overview


(from Wednesday to Wednesday)

Excluding merges, 6 authors have pushed 29 commits to master and 75
commits to all branches. On master, 34 files have changed and there
have been 1,186 additions and 778 deletions.

1 Release published by 1 person (v0.1.4)
1 Pull request merged by 1 person
1 Pull request proposed by 1 person
9 Issues closed by 1 person
6 Issues created by 2 people

https://github.com/The-Compiler/qutebrowser/pulse

Features


- Queue messages shown in unfocused windows and show them when the
  window is focused. This can be disabled by setting the new option
  ui -> message-unfocused.
- New --relaxed-config argument which ignores unknown options (mainly
  intended for debugging).
- New -R/--override-restore argument to not load a session even if one
  was saved.

Improvements


- Clear rejected SSL questions when reloading page.
- Always open URLs given as argument in the foreground.
- Use state file to record which session to load instead of deleting
  the default session.

Bugfixes


- Workaround for Qt recording URLs to the icon database even when in
  private mode, see the release annoucement[1] for details.
- Remove colors -> completion.item.bg option which wasn't used
  anywhere.
- Fix for starting qutebrowser via IPC without an URL not working as
  expected.
- Handle unencodable file paths in config types correctly.
- Fix for stray about:blank tabs opening on some pages.
- Fix for crash when executing a delayed command (because of a
  shadowed keybinding) and then unfocusing the window.
- Fix for crash when hinting on a page which doesn't have an URL yet.
- Handle statusbar messages before a window appears correctly.

[1] https://lists.schokokeks.org/pipermail/qutebrowser/2015-March/61.html

Under the hood
--

- Simplify distro package output in earlyinit.py.
- Rename doc/HACKING.asciidoc to CONTRIBUTING.asciidoc so GitHub shows
  it when creating issues/PRs.
- Various small updates to CONTRIBUTING.
- Reenable some pylint checks which caused issues in older versions.
- Enable python warnings earlier and even without --debug.
- Add some logging for javascript messages.


Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpMQAFPNZUQD.pgp
Description: PGP signature


Re: qutebrowser v0.1.4 released!

2015-03-25 Thread Florian Bruhin
* Florian Bruhin  [2015-03-19 07:52:47 +0100]:
> I just released v0.1.4 which adds workarounds for two
> security/privacy-related Qt issues and backports some other bugs.
> 
> Windows builds will be delayed a bit (aka. my Windows VM wants to
> install updates), but everything else is uploaded.

Just a small heads-up: The windows builds are uploaded as well now,
you can get them from GitHub[1] or from qutebrowser.org[2].

Sorry for the delay! There's now also a script[3] for building the
release on Windows, so this should be less painful next time :)

Florian

[1] https://github.com/The-Compiler/qutebrowser/releases/tag/v0.1.4
[2] http://qutebrowser.org/releases/v0.1.4/windows/
[3] 
https://github.com/The-Compiler/qutebrowser/blob/master/scripts/build_release.py

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgp8QUwgFJF_y.pgp
Description: PGP signature


This week's qutebrowser updates

2015-03-31 Thread Florian Bruhin
Heyho,

Another week without v0.2, but with some other updates and progress
towards v0.2!

There were some big changes about how virtualenvs and testing is
managed:

- init_venv.py and run_checks.py got deleted and replaced by tox[1].
  If you used init_venv.py before, you now have to install tox and run
  "tox -e mkvenv" instead.

- "Adopt pytest month"[2] starts tomorrow and qutebrowser got accepted
  and got two helpers (see [3]).

  Thanks in advance to @nicoddemus and @hackebrot for hopefully making
  creating tests for qutebrowser easier and more fun! :)

[1] http://tox.readthedocs.org/en/latest/
[2] http://pytest.org/latest/adopt.html
[3] https://github.com/The-Compiler/qutebrowser/issues/550

Overview


Excluding merges, 3 authors have pushed 40 commits to master and 59
commits to all branches. On master, 50 files have changed and there
have been 892 additions and 862 deletions.

2 Pull requests proposed by 2 people
11 Issues closed by 2 people
11 Issues created by 4 people

https://github.com/The-Compiler/qutebrowser/pulse

Features


- Add a :tab-detach command to open the current tab in a new window.

- Implement zooming via Ctrl-Mousewheel.
  This also adds a new  input -> mouse-zoom-divider  option to control
  how much the page is zoomed when rotating the wheel.

- Add an option (content -> host-blocking-enabled) to enable/disable
  host blocking.

Improvements


- Improve error messages on invalid URLs.

- Show saved session with :session-save and add -q/--quiet argument.

- Add a -c/--clear argument to :session-load to close existing
  windows.

Bugfixes


- Fix starting with -c '' again...
- Fix rare exception when hinting (when webFrame is None).
- Fix exception on invalid quickmarks.

Under the hood
--

- Fix pep257 (docstring formatting) issues.
- Various changes for the migration to tox and pytest.
- Make setup.py work with python2.
- Various updates to CONTRIBUTING and INSTALL.
- Add a --pdb-postmortem argument to drop into the pdb debugger on
  exceptions.


Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpbYeyLpFjaW.pgp
Description: PGP signature


This week's qutebrowser updates

2015-04-06 Thread Florian Bruhin
Heyho,

Nope, no v0.2 yet - but very soon! (tm)

There are three open issues for v0.2 now, and all of them should be
easy to fix:

https://github.com/The-Compiler/qutebrowser/issues?q=is%3Aopen+is%3Aissue+milestone%3Av0.2

Soo... v0.2 this week hopefully. Fingers crossed!

Also, I hope I fooled some of you people with my April's fools joke!
Sorry, but I couldn't resist! :P

For the ones who missed it: For people who updated on the 31st of
March (when I had this idea), all pages were slightly tilted:

http://qutebrowser.org/tmp/april.png

Overview


Excluding merges, 4 authors have pushed 92 commits to master and 118
commits to all branches. On master, 92 files have changed and there
have been 2,347 additions and 1,683 deletions.

2 Pull requests merged by 2 people
10 Issues closed by 1 person
8 Issues created by 2 people

https://github.com/The-Compiler/qutebrowser/pulse

Improvements


- Various improvements to :restart - it should be more robust now and
  uses sessions so all state (focused tab, scroll position, etc.) gets
  remembered.

- Sessions starting with '_' are now considered "internal" and are
  disallowed when using the :session-* commands.

- Jump to last instead of first item when pressing Shift-Tab the first
  time in the completion.

- Add tab index display to the statusbar.

  Thanks to Franz Fellner for this contribution!

- Automatically correct keybindings to deprecated commands in the
  config.

- Ignore quotes with maxsplit-commands (:open, :quickmark-load, etc.)
  and don't quote arguments for those commands in the completions.

  This also means some commands needed adjustments:

  - Clear search when :search without arguments is given.
(:search "" will now search for the literal text "")

  - Add -s/--space argument to :set-cmd-text (as :set-cmd-text "foo "
will now set the literal text "foo ")

- Add 'cd' shortcut to clean downloads.

- Various improvements on how sessions are handled:
- Add a -c/--current argument to :session-save to save the last
  loaded session.
- Add a -t/--temp argument to :session-load to not set the last
  loaded session.
- Make the default session name configurable with a new
  general -> session-default-name setting. The default (empty)
  means loading of the last saved session.

- Add tab-bg{,-silent} as possible value for new-instance-open-target
  to open a background tab.

- Keep progress bar height fixed when the statusbar is multiline.

- Ignore ;; for splitting with some commands.

Bugfixes


- Fixed handling of key release events (e.g. for javascript) when

  holding a key and pressing a second one.
- Fix for exception when a message is pending and a non-mainwindow
  window gets focused.

- Update URL completion when quickmarks are added/deleted.

- Refuse to add empty URLs to the history.

  It seems (at least for one user) QtWebKit added empty URLs which
  caused the history to fail to load - so if that happens we ignore
  it.

- Fix exception when using :set-cmd-text with an empty argument.

- Don't double ampersands in window titles.

- Fix search engine documentation (it still used the old !bang
  syntax).

- Don't make default config a mutable global.
  This bug didn't do any harm inside qutebrowser as there is only one
  config object, but was discovered in the unit tests.


Under the hood
--

- Use hunter[1] for line tracing instead of a selfmade solution.
  [1] https://github.com/ionelmc/python-hunter

- Various spelling fixes in comments.

- Added a checker for words which I often spell wrong.

- Convert some tests to pytest.
  Thanks to Raphael Pierzina for this contribution (as part of the
  adopt pytest month).

- Pass a parent to most (all?) QObjects, which might fix some
  segfaults on shutdown.

- Various fixes and improvements for docs.

- Various small refactorings.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpPuqzDlhx10.pgp
Description: PGP signature


This week's qutebrowser updates

2015-04-13 Thread Florian Bruhin
Heyho,

Still no v0.2... some bug squashed and some new ones appeared -
currently 4 open issues:

https://github.com/The-Compiler/qutebrowser/issues?q=is%3Aopen+is%3Aissue+milestone%3Av0.2

Soo... v0.2 this week hopefully. Yeah, I know I already said that last
week :P

This week the overview looks quite big, thanks to the terrific work of
@nicoddemus and @hackebrot at getting qutebrowser tests converted to
pytest :)

Overview


Excluding merges, 4 authors have pushed 51 commits to master and 56
commits to all branches. On master, 131 files have changed and there
have been 9,473 additions and 8,626 deletions.

2 Pull requests merged by 2 people
1 Pull request proposed by 1 person
10 Issues closed by 2 people
14 Issues created by 6 people

https://github.com/The-Compiler/qutebrowser/pulse

Features


- Add a new ui -> downloads-position setting to move the downloads to
  the bottom if desired.

  Thanks to Joel Torstensson for this contribution!

- Add a new ui -> hide-mouse-cursor option to hide the mouse cursor
  inside qutebrowser.

Improvements


- Add startpage/default-page values to tabs -> last-close.
- Add $QUTE_HTML and $QUTE_TEXT variables for userscripts.
- Ignore invalid history entries on start.
- Add a confirmation and update notifier to the crash report dialog.
- Add an icon and various stuff needed to build an .app for OS X.

Bugfixes


- Fix default 'ga' bindings.
- Fix default bindings to deprecated commands.
- Fix handling of commands using ;; at various places (key config,
  command parser, :bind)
- Fix various crashes when the session folder has been deleted.
- Add a timeout to pastebin HTTP replies.
- Fix splitting of flags with arguments (:bind -m/--mode).
- Fix bindings of special keys with lower-case modifiers (e.g.
  )

Under the hood
--

- Ignore a Qt warning about zlib/WOFF.
- Start a CHANGELOG.
- Move FAQ/INSTALL to repo root.
- Conversion of the main test layout and many tests to pytest.
- Update pytest-mock to 0.4.3 in tox.ini.
- Various improvements to the documentation.
- Refactor EventFilter.
- Clean up logging.

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpe9apg43sZh.pgp
Description: PGP signature


qutebrowser v0.2.0 released!

2015-04-20 Thread Florian Bruhin
Hi!

From one point of view, qutebrowser v0.2.0 is just the same as
qutebrowser v0.1.0: It took a lot longer than I thought it would ;)

But now it's done, and qutebrowser v0.2.0 is released!

Other than the time it took, v0.2.0 definitely isn't the same - there
are tons of new features such as sessions and history completion.

This is the full changelog compared to v0.1.4:

Added
~

- Session support
* new command `:session-load` to load a session.
* new command `:session-save` to save a session.
* new command `:session-delete` to delete a session.
* new setting `general -> save-session` to always save the session
  on quit.
* new setting `general -> session-default-name` to configure the
  session name to use if none is given.
* new argument `-r`/`--restore` to specify a session to load.
* new argument `-R`/`--override-restore` to not load a session
  even if one was saved.
- New commands to manage downloads:
* `:download` to download a URL or the current page.
* `:download-cancel` to cancel a download.
* `:download-delete` to delete a download from disk.
* `:download-open` to open a finished download.
* `:download-remove` to remove a download from the list.
  `:download-remove --all` or the new 'cd' keybinding can be used
  to clear all finished downloads.
- History completion
* New option `completion -> timestamp-format` to set the format
  used to display the history timestamps.
* New option `completion -> web-history-max-items` to configure
  how many history items to show in the completion.
* The option `completion -> history-length` for the command
  history got renamed to `cmd-history-max-items`.
- Better save logic for the config/state:
* Only save files if modified (e.g. don't overwrite the config if
  it was edited outside of qutebrowser and nothing was changed in
  qutebrowser).
* Save things (cookies, config, quickmarks, ...) periodically all
  15 seconds (time can be changed with the `general ->
  auto-save-interval` option).
- Opera-like mouse rocker gestures
* New option `input -> rocker-gestures`. When turned on, the
  history can be navigated back/forward by holding a mouse button
  and pressing the other one.
- New `-f` option for `:reload` to reload and bypass the cache.
- Pass more information (`QUTE_MODE`, `QUTE_SELECTED_TEXT`,
  `QUTE_SELECTED_HTML`, `QUTE_USER_AGENT`, `QUTE_HTML`, `QUTE_TEXT`)
  to userscripts.
- New `--userscript` option to `:spawn` (which deprecates
  `:run-userscript`).
- Ability to toggle a value to `:set` by appending a `!` to the value.
- New options to hide the tab-/statusbar:
* `tabs -> hide-always` for the tabbar
* `ui -> hide-statusbar` for the statusbar
- New options to configure how the tab/window titles should look:
* `tabs -> title-format` for the tabbar
* `ui -> window-title-format` for the window title
- HTML5 Geolocation/Notification support:
* New option `content -> geolocation` to permanently turn the
  geolocation off.
* New option `content -> notifications` to permanently turn
  notifications off.
- New options to disable javascript prompts/alerts:
* `content -> ignore-javascript-prompt` to turn off prompts.
* `content -> ignore-javascript-alerts` to turn off alerts.
- Two new options to customize the behavior of hints:
* `hints -> min-chars` to set minimum number of chars in hints.
* `hints -> scatter` which when turned off distributes the hints
  sequentially (like dwb) instead of scattering their positions
  (like Vimium).
- Make it possible to use `:open -[twb]` without url.
* New option `general -> default-page` to set the page to be
  opened when doing that.
- New `input -> partial-timeout` option to clear partial keystrings.
- New option `completion -> download-path-suggestion` to configure
  what to show in the completion for downloads.
- Queue messages shown in unfocused windows and show them when the
  window is focused.
* New option `ui -> message-unfocused` to disable this behavior.
- New `--relaxed-config` argument which ignores unknown options.
- New `:tab-detach` command to open the current tab in a new window.
- Zooming via Ctrl-Mousewheel.
* New option `input -> mouse-zoom-divider` to control how much the
  page is zoomed when rotating the wheel.
- New option (`content -> host-blocking-enabled`) to enable/disable
  host blocking.
- New values `tab-bg`/`tab-bg-silent` for `new-instance-open-target`
  to open a background tab.
- New `ui -> downloads-position` setting to move the downloads to the
  bottom.
- New `ui -> hide-mouse-cursor` option to hide the mouse cursor inside
  qutebrowser.
- New argument `-s` for qutebrowser to set a temporary config option.
- New argument `-p` for the `:set` command to print the new value.
- New `--rapid` option to `:hint`. The `rapid`/`rapid-win` targets are
  now deprecated, and `--rapid` 

qutebrowser v0.2.1 released!

2015-04-20 Thread Florian Bruhin
And another follow-up:

The manpage (qutebrowser.1.asciidoc) was missing in the v0.2.0
release. Since this'd break distro packages and I can't overwrite
existing files on PyPI, make this v0.2.1... :-/

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgp76bdptx5ao.pgp
Description: PGP signature


Re: qutebrowser v0.2.0 released!

2015-04-20 Thread Florian Bruhin
* Florian Bruhin  [2015-04-19 18:55:27 +0200]:
> But now it's done, and qutebrowser v0.2.0 is released!

A small note to packagers which I forgot:

This adds PyYAML[1] (might be called python3-yaml or similiar in your
distribution) as a new dependency.

Florian

[1] http://pyyaml.org/

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpJwo3iYZkbD.pgp
Description: PGP signature


Re: BANNED contents from you (.exe,message.txt ... .scr)

2015-04-22 Thread Florian Bruhin
* Content-filter at mail2.glauco.it  [2015-04-22 
11:26:15 +0200]:
> BANNED CONTENTS ALERT
> 
> [...]

It seems this is someone sending spam and setting the header:

> Return-Path: 

So the backscatter gets to the mailinglist... Awesome! :(

I've now set the list to moderated for non-members, i.e. I'll have to
approve posts of non-members by hand, which might take a few hours.

Sorry for the noise!

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgppahgoz1uhX.pgp
Description: PGP signature


This week's qutebrowser updates

2015-04-27 Thread Florian Bruhin
Heyho,

Last week v0.2 (and then v0.2.1 because of a packaging bug) was
finally released[1]! Because of that I didn't write a weekly update
mail, but now another week passed already :)

Other than that this has been a rather quiet week :)

[1] https://lists.schokokeks.org/pipermail/qutebrowser/2015-April/67.html

Overview


Excluding merges, 2 authors have pushed 10 commits to master and 16
commits to all branches. On master, 18 files have changed and there
have been 534 additions and 209 deletions.

1 Pull request merged by 1 person
1 Pull request proposed by 1 person
1 Issue closed by 1 person
2 Issues created by 1 person

https://github.com/The-Compiler/qutebrowser/pulse

Added
-

- New commands `:message-info`, `:message-error` and
  `:message-warning` to show messages in the statusbar, e.g. from an
  userscript.

- New `:debug-webaction` command to execute a WebAction for debugging.

Changed
---

- `QUTE_HTML` and `QUTE_TEXT` for userscripts now don't store the
  contents directly, and instead contain a filename.

- `:spawn` now shows the command being executed in the statusbar, use
  `-q`/`--quiet` for the old behavior.

- The webinspector now remembers its window geometry.

Fixed
-

- Fixed searching for terms starting with a hyphen (e.g. `/-foo`)
- `--relaxed-config` now works for `keys.conf` as well

Under the hood
--

- More tests were converted to pytest.
- Some refactoring related to the @cmdutls.register decorator.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpFeFq14MfpI.pgp
Description: PGP signature


This week's qutebrowser updates

2015-05-11 Thread Florian Bruhin
Hi,

I didn't send an update last week because there was nothing big going
on as I was busy with other things - but now it's time for another
update mail!

Overview


Excluding merges, 4 authors have pushed 29 commits to master and 55
commits to all branches. On master, 36 files have changed and there
have been 1,279 additions and 998 deletions.

4 Pull requests merged by 4 people
2 Pull requests proposed by 2 people
8 Issues closed by 1 person
7 Issues created by 4 people

https://github.com/The-Compiler/qutebrowser/pulse

Added
-

- There are now some example userscripts in misc/.
  Thanks to Zach-Button for this contribution!

Changed
---

- Ctrl-M is now accepted as another alias for Ctrl-J/Enter.
  Thanks to V155 for this contribution!
- geolocation/notification settings now support a 'yes' value to
  always allow them.
- Entering hint mode while already hinting now switches automatically.
- `F` (:hint tab) now respects the background-tab setting.

Fixed
-

- Proxy authentication credentials are now cached between tabs.
- The tab title is now handled correctly for pages without title.

Under the hood
--

- More tests were converted to pytest.
- Various refactorings.
- Various documentation improvements.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpf4NB56EXJp.pgp
Description: PGP signature


This week's qutebrowser updates

2015-05-18 Thread Florian Bruhin
Hi,

Back to longer update mails! ;)

Many old(er) pull requests and branches merged this time :)

Overview


Excluding merges, 1 author has pushed 92 commits to master and 105
commits to all branches. On master, 69 files have changed and there
have been 2,644 additions and 895 deletions.

3 Pull requests merged by 2 people
16 Issues closed by 1 person
7 Issues created by 3 people

https://github.com/The-Compiler/qutebrowser/pulse

Added
-

- New command `:scroll-px` which replaces `:scroll` for pixel-exact
  scrolling.
- New setting `ui -> smooth-scrolling`.
- New setting `content -> webgl` to enable/disable WebGL.
- New setting `content -> css-regions` to enable/disable support for
  CSS Regions.
- New setting `content -> hyperlink-auditing` to enable/disable
  support for hyperlink auditing.
- Support for Qt 5.5 and tox 2.0
- New arguments `--datadir` and `--cachedir` to set the data/cache
  location.
- New arguments `--basedir` and `--temp-basedir` (intended for
  debugging) to set a different base directory for all data, which
  allows multiple invocations.
- New argument `--no-err-windows` to suppress all error windows.
- New visual/caret mode (bound to `v`) to select text by keyboard.
  Thanks to Artur Shaik for this big contribution!

Changed
---

- `:scroll` now takes a direction argument
  (`up`/`down`/`left`/`right`/`top`/`bottom`/`page-up`/`page-down`)
  instead of two pixel arguments (`dx`/`dy`). The old form still works
  but is deprecated. It now internally uses fake keypresses to WebKit
  which makes scrolling more reliable.

Removed
---

- The `--no-crash-dialog` argument which was intended for debugging
  only was removed as it's replaced by `--no-err-windows` which
  suppresses all error windows.

Fixed
-

- Fixed updating of the tab title on pages without title.
- Fixed AssertionError when closing many windows quickly.
- Various fixes for deprecated key bindings and auto-migrations.
- Workaround for qutebrowser not starting when there are NUL-bytes in
  the history (because of a currently unknown bug)
- Fixed handling of keybindings containing Ctrl/Meta on OS X.

Under the hood
--

- More tests were converted to pytest.
- Various refactorings.
- Various documentation improvements.
- Buildbot now also does smoke testing (starting qutebrowser to see if
  it runs successfully).
- Tests and lints for javascript have been introduced and integrated
  in buildbot.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgp2rhZ_HGm7y.pgp
Description: PGP signature


This week's qutebrowser updates

2015-05-26 Thread Florian Bruhin
Hi,

Another rather small update mail, as I'm mainly busy with writing unit
tests for existing code - so probably there won't be many user-facing
changes in the next weeks, but after that I can be much more confident
about my changes not breaking any existing functionality :)

Overview


Excluding merges, 3 authors have pushed 36 commits to master and 83
commits to all branches. On master, 15 files have changed and there
have been 256 additions and 102 deletions.

1 Pull request merged by 1 person
1 Pull request proposed by 1 person
4 Issues closed by 1 person


https://github.com/The-Compiler/qutebrowser/pulse

Added
-

- New setting `tabs -> mousewheel-tab-switching` to control mousewheel
  behavior on the tab bar.
  Thanks to Tobias Patzl for the contribution!

Changed
---

- Small improvements when checking if an input is an URL or not.

Fixed
-

- Fixed crash when downloading an URL without filename (e.g. magnet
  links) via "Save as...".

Under the hood
--

- Various small bugfixes which shouldn't have any impact but were
  discovered during testing.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpecgfcDgT1m.pgp
Description: PGP signature


This week's qutebrowser updates

2015-06-02 Thread Florian Bruhin
Hi,

This has been a crazy week with many contributions! :)
Thanks a lot again to Carpetsmoker and antonyo for them!

I've been busy with writing more tests, and reviewing PRs and issues,
but the amount of contributions is probably at a record high :)

It seems people would like a new release[1] - I wanted to do so only
after tests/refactoring/config migration, but since that'll still take
a while I'll probably cut a new release when the open contributions
are in (or at least the ones expected to be done soon).

[1] https://github.com/voidlinux/void-packages/pull/1696

Overview


Excluding merges, 5 authors have pushed 54 commits to master and 90
commits to all branches. On master, 31 files have changed and there
have been 539 additions and 224 deletions.

6 Pull requests merged by 3 people
7 Pull requests proposed by 4 people
13 Issues closed by 2 people
15 Issues created by 5 people

https://github.com/The-Compiler/qutebrowser/pulse

Added
-

- :scroll-page now has --{top,bottom}-navigate options so a key can be
  bound to scroll down and automatically load the next page.

- Return is now bound to a new :select-follow command, which follows
  the link currently selected (e.g. via /searching).

- There's a new ui -> modal-js-dialog setting to use the normal modal
  dialogs instead of the statusbar for javascript dialogs.

- Numpad enter now should work everywhere where Return does.

- New setting colors -> webpage.bg to set the color for websites
  without a background color set.

Changed
---

- Temporary files/directories now use a qutebrowser-editor- and
  qutebrowser-basedir- prefix.

- Some QXcbWindow warnings (e.g. on Enlightment) are now hidden.

Fixed
-

- Fix a crash when executing "qutebrowser :set" from the commandline.

Under the hood
--

- Lots of improvements related to tests.
- link_pyqt.py now only links/copies files if needed, which should
  speed up repeated tox runs.
- Some small doc improvements.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpSq2E8FMG2Z.pgp
Description: PGP signature


Fwd: [USN-2626-1] Qt vulnerabilities

2015-06-03 Thread Florian Bruhin
Hi,

I'm actually amazed Ubuntu managed to take so long to backport those
packages... IIRC, Debian, Arch (and maybe others) had already applied
them for a while.

The first issue is from April 2014... Gah. (Though that one seems to
apply to Qt 4 only)

So if you're on Ubuntu, please update (or, you know, don't use
Ubuntu).

Florian

- Forwarded message from Marc Deslauriers  
-

==
Ubuntu Security Notice USN-2626-1
June 03, 2015

qt4-x11, qtbase-opensource-src vulnerabilities
==

A security issue affects these releases of Ubuntu and its derivatives:

- Ubuntu 15.04
- Ubuntu 14.10
- Ubuntu 14.04 LTS
- Ubuntu 12.04 LTS

Summary:

Qt could be made to crash or run programs as your login if it opened a
specially crafted file.

Software Description:
- qt4-x11: Qt 4 libraries
- qtbase-opensource-src: Qt 5 libraries

Details:

Wolfgang Schenk discovered that Qt incorrectly handled certain malformed
GIF images. If a user or automated system were tricked into opening a
specially crafted GIF image, a remote attacker could use this issue to
cause Qt to crash, resulting in a denial of service. This issue only
applied to Ubuntu 12.04 LTS and Ubuntu 14.04 LTS. (CVE-2014-0190)

Fabian Vogt discovered that Qt incorrectly handled certain malformed BMP
images. If a user or automated system were tricked into opening a specially
crafted BMP image, a remote attacker could use this issue to cause Qt to
crash, resulting in a denial of service. (CVE-2015-0295)

Richard Moore and Fabian Vogt discovered that Qt incorrectly handled
certain malformed BMP images. If a user or automated system were tricked
into opening a specially crafted BMP image, a remote attacker could use
this issue to cause Qt to crash, resulting in a denial of service, or
possibly execute arbitrary code. (CVE-2015-1858)

Richard Moore and Fabian Vogt discovered that Qt incorrectly handled
certain malformed ICO images. If a user or automated system were tricked
into opening a specially crafted ICO image, a remote attacker could use
this issue to cause Qt to crash, resulting in a denial of service, or
possibly execute arbitrary code. (CVE-2015-1859)

Richard Moore and Fabian Vogt discovered that Qt incorrectly handled
certain malformed GIF images. If a user or automated system were tricked
into opening a specially crafted GIF image, a remote attacker could use
this issue to cause Qt to crash, resulting in a denial of service, or
possibly execute arbitrary code. (CVE-2015-1860)

Update instructions:

The problem can be corrected by updating your system to the following
package versions:

Ubuntu 15.04:
  libqt5gui5  5.4.1+dfsg-2ubuntu4.1
  libqtgui4   4:4.8.6+git64-g5dc8b2b+dfsg-3~ubuntu6.1

Ubuntu 14.10:
  libqt5gui5  5.3.0+dfsg-2ubuntu9.1
  libqtgui4   4:4.8.6+git49-gbc62005+dfsg-1ubuntu1.1

Ubuntu 14.04 LTS:
  libqt5gui5  5.2.1+dfsg-1ubuntu14.3
  libqtgui4   4:4.8.5+git192-g085f851+dfsg-2ubuntu4.1

Ubuntu 12.04 LTS:
  libqtgui4   4:4.8.1-0ubuntu4.9

After a standard system update you need to restart your session to make
all the necessary changes.

References:
  http://www.ubuntu.com/usn/usn-2626-1
  CVE-2014-0190, CVE-2015-0295, CVE-2015-1858, CVE-2015-1859,
  CVE-2015-1860

Package Information:

https://launchpad.net/ubuntu/+source/qt4-x11/4:4.8.6+git64-g5dc8b2b+dfsg-3~ubuntu6.1
  
https://launchpad.net/ubuntu/+source/qtbase-opensource-src/5.4.1+dfsg-2ubuntu4.1

https://launchpad.net/ubuntu/+source/qt4-x11/4:4.8.6+git49-gbc62005+dfsg-1ubuntu1.1
  
https://launchpad.net/ubuntu/+source/qtbase-opensource-src/5.3.0+dfsg-2ubuntu9.1

https://launchpad.net/ubuntu/+source/qt4-x11/4:4.8.5+git192-g085f851+dfsg-2ubuntu4.1
  
https://launchpad.net/ubuntu/+source/qtbase-opensource-src/5.2.1+dfsg-1ubuntu14.3
  https://launchpad.net/ubuntu/+source/qt4-x11/4:4.8.1-0ubuntu4.9





-- 
ubuntu-security-announce mailing list
ubuntu-security-annou...@lists.ubuntu.com
Modify settings or unsubscribe at: 
https://lists.ubuntu.com/mailman/listinfo/ubuntu-security-announce


- End forwarded message -

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpTgRmLtGhrq.pgp
Description: PGP signature


Qt 5.4.2 released!

2015-06-04 Thread Florian Bruhin
Hi,

On Tuesday, Qt 5.4.2 has finally been released:
http://blog.qt.io/blog/2015/06/02/qt-5-4-2-released/

The Arch packages in my debug repo got rebuilt yesterday.

This release brings many fixes which are relevant to qutebrowser:

http://code.qt.io/cgit/qt/qtwebkit.git/tree/dist/changes-5.4.2?h=5.4.2

https://bugreports.qt.io/browse/QTBUG-46233?jql=component%20%3D%20WebKit%20and%20fixVersion%20%3D%205.4.2%20order%20by%20created%20desc

Notably, the crash/high memory usage on pages like DuckDuckGo,
LinkedIn or Kotaku has been fixed.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpc9I9arIYvU.pgp
Description: PGP signature


This week's qutebrowser updates

2015-06-10 Thread Florian Bruhin
Hi,

Another week with some contributions (thanks to Carpetsmoker,
lamarpavel and ProtractorNinja) and some other progress :)

Overview


Excluding merges, 5 authors have pushed 69 commits to master and 108
commits to all branches. On master, 44 files have changed and there
have been 799 additions and 452 deletions.

8 Pull requests merged by 4 people
7 Pull requests proposed by 2 people
10 Issues closed by 1 person
7 Issues created by 2 people

https://github.com/The-Compiler/qutebrowser/pulse

Added
-

- New (hidden) command `:clear-keychain` to clear a partially entered
  keychain (bound to `` by default, in addition to clearing
  search).

- Many new color settings (foreground setting for every background
  setting)

Changed
---

- The `ui -> user-stylesheet` setting now also takes file paths
  relative to the config directory.

- The `content -> cookies-accept` setting now has new `no-3rdparty`
  (default) and `no-unknown-3rdparty` values to block third-party
  cookies. The `default` value got renamed to `all`.

Deprecated
--

- Support for Qt installations without SSL support was dropped.

Fixed
-

- Fixed horrible completion performance when the `shrink` option was
  set.

Under the hood
--

- The tests now run on Travis[1] and AppVeyor[2] so pull requests
  should get near-immediate feedback.

- Various small fixes related to running the tests on Windows and
  Ubuntu Trusty.

Florian

[1] http://www.travis-ci.org/
[2] http://www.appveyor.com/

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpBnhymkn_Up.pgp
Description: PGP signature


Fwd: [arch-security] [ASA-201506-3] openssl: multiple issues

2015-06-12 Thread Florian Bruhin
Hi,

please update your OpenSSL to get protected against LogJam (see
http://weakdh.org/ ).

(I experimented with blacklisting those ciphers in qutebrowser, but
the Qt API doesn't provide a way to get the DH bits used - so I
decided to just wait for OpenSSL to be updated instead of blacklisting
*all* DH keys).

Florian

- Forwarded message from Levente Polyak  -

Arch Linux Security Advisory ASA-201506-3
=

Severity: High
Date: 2015-06-12
CVE-ID  : CVE-2015-1788 CVE-2015-1789 CVE-2015-1790 CVE-2015-1791
  CVE-2015-1792 CVE-2015-4000
Package : openssl
Type: multiple issues
Remote  : Yes
Link: https://wiki.archlinux.org/index.php/CVE

Summary
===

The package openssl before version 1.0.2.b-1 is vulnerable to multiple
issues including but not limited to man-in-the-middle via cipher
downgrade, double free and denial of service.

Resolution
==

Upgrade to 1.0.2.b-1.

# pacman -Syu "openssl>=1.0.2.b-1"

The problems have been fixed upstream in version 1.0.2.b.

Workaround
==

None.

Description
===

- CVE-2015-1788 (denial of service)

When processing an ECParameters structure OpenSSL enters an infinite
loop if the curve specified is over a specially malformed binary
polynomial field.
This can be used to perform denial of service against any system which
processes public keys, certificate requests or certificates.  This
includes TLS clients and TLS servers with client authentication enabled.

- CVE-2015-1789 (out-of-bounds read)

X509_cmp_time does not properly check the length of the ASN1_TIME string
and can read a few bytes out of bounds. In addition, X509_cmp_time
accepts an arbitrary number of fractional seconds in the time string.
An attacker can use this to craft malformed certificates and CRLs of
various sizes and potentially cause a segmentation fault, resulting in a
DoS on applications that verify certificates or CRLs. TLS clients that
verify CRLs are affected. TLS clients and servers with client
authentication enabled may be affected if they use custom verification
callbacks.

- CVE-2015-1790 (denial of service)

The PKCS#7 parsing code does not handle missing inner EncryptedContent
correctly. An attacker can craft malformed ASN.1-encoded PKCS#7 blobs
with missing content and trigger a NULL pointer dereference on parsing.
Applications that decrypt PKCS#7 data or otherwise parse PKCS#7
structures from untrusted sources are affected. OpenSSL clients and
servers are not affected.

- CVE-2015-1791 (double free)

If a NewSessionTicket is received by a multi-threaded client when
attempting to reuse a previous ticket then a race condition can occur
potentially leading to a double free of the ticket data.

- CVE-2015-1792 (denial of service)

When verifying a signedData message the CMS code can enter an infinite
loop if presented with an unknown hash function OID.
This can be used to perform denial of service against any system which
verifies signedData messages using the CMS code.

- CVE-2015-4000 (cipher downgrade)

A vulnerability in the TLS protocol allows a man-in-the-middle attacker
to downgrade vulnerable TLS connections using ephemeral Diffie-Hellman
key exchange to 512-bit export-grade cryptography. This vulnerability is
known as Logjam.
OpenSSL has added protection for TLS clients by rejecting handshakes
with DH parameters shorter than 768 bits. This limit will be increased
to 1024 bits in a future release.

Impact
==

A remote attacker is able to perform man-in-the-middle via cipher
downgrade, denial of service or possibly have other unspecified impact
via various vectors.

References
==

https://www.openssl.org/news/secadv_20150611.txt
https://access.redhat.com/security/cve/CVE-2015-1788
https://access.redhat.com/security/cve/CVE-2015-1789
https://access.redhat.com/security/cve/CVE-2015-1790
https://access.redhat.com/security/cve/CVE-2015-1791
https://access.redhat.com/security/cve/CVE-2015-1792
https://access.redhat.com/security/cve/CVE-2015-4000




- End forwarded message -

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpSlzJvVLOzk.pgp
Description: PGP signature


This week's qutebrowser updates

2015-06-18 Thread Florian Bruhin
Hi,

Another week (or more) has passed, of course not without some
qutebrowser commits! ;)

Overview


Excluding merges, 3 authors have pushed 49 commits to master and 72
commits to all branches. On master, 49 files have changed and there
have been 2,947 additions and 503 deletions.

3 Pull requests merged by 3 people
2 Pull requests proposed by 2 people
11 Issues closed by 1 person
6 Issues created by 2 people

https://github.com/The-Compiler/qutebrowser/pulse

Added
-

- New flag `-d`/`--detach` for `:spawn` to detach the spawned process
  so it's not closed when qutebrowser is.

- New flag `-v`/`--verbose` for `:spawn` to print informations when
  the process started/exited successfully. -q/--quiet got removed.

- New command `:jseval` to run a javascript snippet on the current
  page. Thanks to Carpetsmoker for the contribution!

Changed
---

- Improved startup time by reading the webpage history while
  qutebrowser is open.

- The way `:spawn` splits its commandline has been changed slightly to
  allow commands with flags.

Deprecated
--

- The -q/--quiet argument to :spawn got removed.

Fixed
-

- Fixed wrong cursor position when completing the first item in the
  completion.

Under the hood
--

- The tests now also run on OS X Mavericks on Travis.

- Many tests for qutebrowser.utils.{utils,version,standarddir,qtutils}
  have been added or improved.

Florian


pgpSm1EH9B_8x.pgp
Description: PGP signature


qutebrowser v0.3.0 released!

2015-06-28 Thread Florian Bruhin
Hi!

I'm happy to announce qutebrowser v0.3.0 was released today - with a
lot of new features and some bugfixes.

Note a breaking change for userscripts was necessary: $QUTE_HTML and
$QUTE_TEXT now contain a filename instead of the HTML/text content.

Also, if you have an userscript which could be useful for the public,
please consider contributing it to the new `misc/userscripts`
directory!

This is the full changelog compared to v0.2.1:

Added
~

- New commands `:message-info`, `:message-error` and
  `:message-warning` to show messages in the statusbar, e.g. from an
  userscript.
- New command `:scroll-px` which replaces `:scroll` for pixel-exact
  scrolling.
- New command `:jseval` to run a javascript snippet on the current
  page.
- New (hidden) command `:follow-selected` (bound to
  `Enter`/`Ctrl-Enter` by default) to follow the link which is
  currently selected (e.g. after searching via `/`).
- New (hidden) command `:clear-keychain` to clear a partially entered
  keychain (bound to `` by default, in addition to clearing
  search).
- New setting `ui -> smooth-scrolling`.
- New setting `content -> webgl` to enable/disable WebGL.
- New setting `content -> css-regions` to enable/disable support for
  CSS Regions.
- New setting `content -> hyperlink-auditing` to enable/disable
  support for hyperlink auditing.
- New setting `tabs -> mousewheel-tab-switching` to control mousewheel
  behavior on the tab bar.
- New arguments `--datadir` and `--cachedir` to set the data/cache
  location.
- New arguments `--basedir` and `--temp-basedir` (intended for
  debugging) to set a different base directory for all data, which
  allows multiple invocations.
- New argument `--no-err-windows` to suppress all error windows.
- New arguments `--top-navigate` and `--bottom-navigate` (`-t`/`-b`)
  for `:scroll-page` to specify a navigation action (e.g.
  automatically go to the next page when arriving at the bottom).
- New flag `-d`/`--detach` for `:spawn` to detach the spawned process
  so it's not closed when qutebrowser is.
- New flag `-v`/`--verbose` for `:spawn` to print informations when
  the process started/exited successfully.
- Many new color settings (foreground setting for every background
  setting).
- New setting `ui -> modal-js-dialog` to use the standard modal
  dialogs for javascript questions instead of using the statusbar.
- New setting `colors -> webpage.bg` to set the background color to
  use for websites which don't set one.
- New setting `completion -> auto-open` to only open the completion
  when tab is pressed (if set to false).
- New visual/caret mode (bound to `v`) to select text by keyboard.
- There are now some example userscripts in `misc/userscripts`.
- Support for Qt 5.5 and tox 2.0

Changed
~~~

- *Breaking change for userscripts:* `QUTE_HTML` and `QUTE_TEXT` for
  userscripts now don't store the contents directly, and instead
  contain a filename.
- The `content -> geolocation` and `notifications` settings now
  support a `true` value to always allow those. However, this is *not
  recommended*.
- New bindings `` (rapid), `` (foreground) and
  `` (background) to switch hint modes while hinting.
- `` and numpad-enter are now bound by default for bindings
  where `` was bound.
- `:hint tab` and `F` now respect the `background-tabs` setting. To
  enforce a foreground tab (what `F` did before), use `:hint tab-fg`
  or `;f`.
- `:scroll` now takes a direction argument
  (`up`/`down`/`left`/`right`/`top`/`bottom`/`page-up`/`page-down`)
  instead of two pixel arguments (`dx`/`dy`). The old form still works
  but is deprecated.
- The `ui -> user-stylesheet` setting now also takes file paths
  relative to the config directory.
- The `content -> cookies-accept` setting now has new `no-3rdparty`
  (default) and `no-unknown-3rdparty` values to block third-party
  cookies. The `default` value got renamed to `all`.
- Improved startup time by reading the webpage history while
  qutebrowser is open.
- The way `:spawn` splits its commandline has been changed slightly to
  allow commands with flags.
- The default for the `new-instance-open-target` setting has been
  changed to `tab`.
- Sessions now store zoom/scroll-position separately for each entry.

Deprecated
~~

- `:scroll` with two pixel-arguments is now deprecated - `:scroll-px`
  should be used instead.

Removed
~~~

- The `--no-crash-dialog` argument which was intended for debugging
  only was removed as it's replaced by `--no-err-windows` which
  suppresses all error windows.
- Support for Qt installations without SSL support was dropped.

Fixed
~

- Scrolling should now work more reliably on some pages where arrow
  keys worked but `hjkl` didn't.
- Small improvements when checking if an input is an URL or not.
- Fixed wrong cursor position when completing the first item in the
  completion.
- Fixed exception when using search engines with {foo} in their name.
- Fixed a bug where the same title was shown for all tabs on some
  s

This week's qutebrowser updates

2015-07-02 Thread Florian Bruhin
Hi,

Apparently it's been two weeks since the last update mail already...
whoops!

Overview


(from the last week)

Excluding merges, 4 authors have pushed 42 commits to master and 55
commits to all branches. On master, 71 files have changed and there
have been 2,176 additions and 2,066 deletions.

4 Pull requests merged by 4 people
1 Pull request proposed by 1 person
8 Issues closed by 2 people
5 Issues created by 2 people

https://github.com/The-Compiler/qutebrowser/pulse

Added
-

- Alt-Backspace is now bound to rl-unix-word-rubout by default.

- The version info now displays the desktop environment and used
  style.

- New completion -> auto-open option to only open the completion if
  tab is pressed.

  Thanks to Carpetsmoker for the initial pull request.

Changed
---

- pkg_resources instead of distutils is used to compare versions,
  which should work better in some edge cases.

- When entering caret mode with a text selected, the caret is
  positioned at the current selection's position instead of the top of
  the page.

- The version output with --version is now shorter.

- The default for new-instance-open-target is now 'tab'.

Fixed
-

- Hopefully fixed a crash on Windows when pinning qutebrowser to the
  taskbar and starting it.

- The javascript folder (needed for caret mode) now gets included
  properly when freezing (e.g. windows executables).

- Using {foo} in search engine URLs no longer causes a crash.

- Various fixes regarding updating of the zoom position.

- Fixed a bug where all tabs showed the title of the first one.
  Thanks to Franz Fellner for the fix!

- There's no longer a 'scripts' package installed with qutebrowser.

- Scroll position and zoom are now properly stored for each item in a
  session.

Under the hood
--

- Tests now also run in a frozen environment.

- Building of Windows executables now use a virtualenv to make sure
  all dependencies are present in the right version.

- Fixed tests with Qt 5.5.

- Various updates of testing tools.

- Various documentation and spelling fixes.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpTnl_XpD2vD.pgp
Description: PGP signature


This week's qutebrowser updates

2015-07-07 Thread Florian Bruhin
Hi,

Not too much interesting stuff this week, as I'm busy with preparing
for my EuroPython talk[1] and other stuff.

[1] 
https://ep2015.europython.eu/conference/talks/pytest-simple-rapid-and-fun-testing-with-python

Overview


Excluding merges, 2 authors have pushed 20 commits to master and 22
commits to all branches. On master, 20 files have changed and there
have been 871 additions and 303 deletions.

3 Pull requests merged by 2 people
3 Issues closed by 1 person
1 Issue created by 1 person

https://github.com/The-Compiler/qutebrowser/pulse

Changed
---

- The backspace default binding has been removed as it was annoying
  when pressing backspace while accidentally not in insert mode.

- Scrolling now aborts when the beginning/end of the page has been
  reached, which causes qutebrowser not to hang when doing something
  like 2j.

- Downloading to a special file (FIFO, device, etc.) now asks for
  confirmation as it could cause qutebrowser to hang.

  Thanks to Carpetsmoker for the contribution!

Fixed
-

- Adjusted scripts/importer.py to not show a warning with
  BeautifulSoup 4.4.0.

Under the hood
--

- Various improvements for tests and new tests.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpUp4kAFD2ct.pgp
Description: PGP signature


Fwd: [arch-security] [ASA-201507-7] flashplugin: remote code execution

2015-07-08 Thread Florian Bruhin
FYI - update your flash player, or leave allow-plugins set to false ;)

Florian

- Forwarded message from Remi Gacogne  -

Arch Linux Security Advisory ASA-201507-7
=

Severity: Critical
Date: 2015-07-08
CVE-ID  : CVE-2015-5119
Package : flashplugin
Type: remote code execution
Remote  : Yes
Link: https://wiki.archlinux.org/index.php/CVE

Summary
===

The package flashplugin before version 11.2.202.481-1 is vulnerable to
remote code execution.

Resolution
==

Upgrade to 11.2.202.481-1.

# pacman -Syu "flashplugin>=11.2.202.481-1"

The problem has been fixed upstream in version 11.2.202.481.

Workaround
==

None.

Description
===

A critical vulnerability (use-after-free in the AS3 ByteArray class) has
been identified in Adobe Flash Player 18.0.0.194 and earlier versions
for Windows, Macintosh and Linux. Successful exploitation could cause a
crash and potentially allow an attacker to take control of the affected
system.

Adobe is aware of reports that an exploit targeting this vulnerability
has been published publicly.

Impact
==

A remote attacker can execute arbitrary code on the affected host using
a crafted flash application.

References
==

https://access.redhat.com/security/cve/CVE-2015-5119
https://helpx.adobe.com/security/products/flash-player/apsa15-03.html
https://www.kb.cert.org/vuls/id/561288
http://blog.trendmicro.com/trendlabs-security-intelligence/unpatched-flash-player-flaws-more-pocs-found-in-hacking-team-leak/

- End forwarded message -

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgphH9YgUBJCy.pgp
Description: PGP signature


Fwd: [arch-security] [ASA-201507-13] flashplugin: arbitrary code execution

2015-07-16 Thread Florian Bruhin
I don't think I have to comment on this anymore, but it might be nice
to know if you didn't already ;)

- Forwarded message from Levente Polyak  -

Arch Linux Security Advisory ASA-201507-13
==

Severity: Critical
Date: 2015-07-16
CVE-ID  : CVE-2015-5122 CVE-2015-5123
Package : flashplugin
Type: arbitrary code execution
Remote  : Yes
Link: https://wiki.archlinux.org/index.php/CVE

Summary
===

The package flashplugin before version 11.2.202.491-1 is vulnerable to
arbitrary code execution.

Resolution
==

Upgrade to 11.2.202.491-1.

# pacman -Syu "flashplugin>=11.2.202.491-1"

The problems have been fixed upstream in version 11.2.202.491.

Workaround
==

None.

Description
===

- CVE-2015-5122 (arbitrary code execution)

Use-after-free vulnerability in the DisplayObject class in the
ActionScript 3 (AS3) implementation allows remote attackers to execute
arbitrary code or cause a denial of service (memory corruption) via
crafted Flash content that leverages improper handling of the
opaqueBackground property.

- CVE-2015-5123 (arbitrary code execution)

Use-after-free vulnerability in the BitmapData class in the ActionScript
3 (AS3) implementation allows remote attackers to execute arbitrary code
or cause a denial of service (memory corruption) via crafted Flash
content that overrides a valueOf function.

Impact
==

A remote attacker is able to use a specially crafted flash application
to execute arbitrary code.

References
==

https://helpx.adobe.com/security/products/flash-player/apsb15-18.html
https://access.redhat.com/security/cve/CVE-2015-5122
https://access.redhat.com/security/cve/CVE-2015-5123




- End forwarded message -

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpKEmgtC8_zZ.pgp
Description: PGP signature


This week's qutebrowser updates

2015-07-16 Thread Florian Bruhin
Hi,

There still not too much going on as:

a) it's too hot to think
b) I was busy with my EuroPython talk
c) it's too hot to think
d) I'm working on some improvements to some tools qutebrowser
   uses.
e) it's too hot to think

Development will probably get more interesting in August again :)

Overview


Excluding merges, 5 authors have pushed 15 commits to master and 29
commits to all branches. On master, 13 files have changed and there
have been 188 additions and 98 deletions.

2 Pull requests proposed by 2 people
3 Issues closed by 2 people
11 Issues created by 2 people

https://github.com/The-Compiler/qutebrowser/pulse

Changed
---

- Various user-friendlyness improvements and QtWebEngine support for
  minimal_webkit_testbrowser.

- link_pyqt.py was improved to hopefully work better on various
  untested distributions.

Fixed
-

- The OS X-only tests now actually run under OS X.
- Fixed a crash when an invalid quickmark entry was found or an
  invalid URL was given on startup.

Under the hood
--

- The tests were fixed on machines with non-english locales

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgp12iAG9Tulb.pgp
Description: PGP signature


Re: Youtube (HTML5 player) doesn't go to fullscreen

2015-07-21 Thread Florian Bruhin
* Abraham Baker  [2015-07-20 15:21:28 -0500]:
> When I go to any youtube video and try to make it fullscreen, nothing
> happens.  The button that increases the video size (by moving the 'next
> videos' bar) does work.

As others have mentioned, that's a missing feature in QtWebKit.

I recommend binding a key to open videos in a real video player like
mpv - see the FAQ[1] (9.) for details.

[1] https://github.com/The-Compiler/qutebrowser/blob/master/FAQ.asciidoc

> I noticed during the Arch AUR git installation I had to install
> python-pypeg manually before makepkg -s would even run.

That's because that's an AUR package as well, and makepkg doesn't know
about the AUR. When using an AUR helper[2], that should resolve this
dependency for you.

[2] https://wiki.archlinux.org/index.php/AUR_Helpers

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgp0PY6BjyIja.pgp
Description: PGP signature


Re: Opening gmail links in new tabs

2015-08-10 Thread Florian Bruhin
* Abraham Baker  [2015-08-10 07:37:15 -0500]:
> When I middle-click on a link in any email I get through gmail, the link
> opens in a new tab and focuses that tab even though I thought I set the
> browser to open middle-clicked links in a new background tab (don't focus
> it yet).
> 
> This affects me the most when I return to an email I've sent that has many
> links and I try to use ;r on them (rapid-mode open in background tabs),
> since opening one this way switches to that tab immediately.
> 
> Is there a setting I forgot to change (maybe site-specific quirks?), or is
> this just a gmail bug?

I can reproduce it - not sure what's going on, but I opened [1] and
will look into it later.

Setting tabs -> background-tabs should be enough, but I guess GMail
does some javascript magic or so.

[1] https://github.com/The-Compiler/qutebrowser/issues/865

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpPQGNG2bivw.pgp
Description: PGP signature


Re: Opening gmail links in new tabs

2015-08-11 Thread Florian Bruhin
* Nate Patterson  [2015-08-11 18:59:20 -0500]:
> I think you sent this to the wrong person

I sent it to the (right) mailinglist. ;)

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgp7P_aivouCh.pgp
Description: PGP signature


Re: :buffers?

2015-08-16 Thread Florian Bruhin
* Anton Löfgren  [2015-08-16 19:03:07 +0200]:
> Hi quties,

Hah, I like that :)

> Coming from Vimperator, I've been trying to find a qutebrowser
> equivalent to its "B"/:buffers functionality (which lists & filters
> current "buffers", as in tabs). Is there such a thing? If so, how do I
> find it? If not, any particular reason why?

There isn't yet - see [1]. There are two main reasons really:

1) Nobody did it yet, and I'm busy working on other stuff,

2) It's quite hard with the current architecture to add a completion
which is dynamic - all the current completions are "static" and
updated manually when e.g. a setting is changed - this might be hard
to do right for tabs/windows. See [2].

My hope is that I'll get to 2) somewhen in the next months, and then
someone else will implement 1) ;)

Florian

[1] https://github.com/The-Compiler/qutebrowser/issues/32
[2] https://github.com/The-Compiler/qutebrowser/issues/74

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpWq7BydupWn.pgp
Description: PGP signature


qutebrowser updates and roadmap

2015-08-27 Thread Florian Bruhin
Heya!

As you might have noticed, I stopped doing the weekly update mails
recently since they were quite a bit of work I'd rather invest in
writing code ;)

But I think it's time for another update mail - I'm still mainly
working on tests (and will probably continue to do so for a few more
weeks to months), but thanks to some awesome contributors there are
some great new features!

The GitHub statistics for the last month are mindblowing:

Excluding merges, 9 authors have pushed 374 commits to master and
401 commits to all branches. On master, 193 files have changed and
there have been 17,591 additions and 11,777 deletions.

18 Pull requests merged by 7 people
4 Pull requests proposed by 3 people
30 Issues closed by 2 people
25 Issues created by 8 people

Some highlights of new features - sorry if I missed something:

- Antoni Boucher contributed the possibility to create bookmarks -
  they are similar to quickmarks, but don't have a label and store the
  page's title.

- Antoni Boucher also contributed local directory browsing.

- The column widths in the completion are now dependent on the active
  completion, thanks to Alexander Cogneau.

- Martin Tournoij added a new network -> referer-header setting which
  allows you to control when the Referer header should be sent.

- New settings to add padding to the tabbar and statusbar - thanks to
  Martin Tournoij and Icabob4 for their help with this!

- Downloads now remember the last used directory - thanks to Martin
  Tournoij for the initial PR!

- New setting to show the tabbar only when switching tabs, thanks to
  Artur Shaik.

- New setting to not ask for the download location, thanks to
  Alexander Cogneau. This also enabled rapid hinting for downloads.

- Many small bugfixes - thanks to Thorsten Wißmann, kingdread,
  Alexander Cogneau and Leon Schwalb for related contributions.

- Many many many new tests - thanks to Alexander Cogneau for some
  recent help with them!

As for my future plans/roadmap, since I get asked a lot:

- More tests. There's still plenty of easy unittests to be done, and
  on top of that I want enough end-to-end tests where qutebrowser is
  running with a local HTTP server and recieving commands.

- Doing some remaining bugfixes and releasing v0.4.0 somewhen in the
  near future.

- Some refactorings which are necessary for the next point.

- A QtWebEngine backend, which will make the rendering/networking part
  of qutebrowser essentially equal with Chromium, which comes with
  performance, security and stability benefits:

  https://github.com/The-Compiler/qutebrowser/issues/666

- Ripping out all the config code and replacing it by something with
  some more thought (and tests) behind it:

  
https://github.com/The-Compiler/qutebrowser/issues?q=is%3Aopen+is%3Aissue+milestone%3A%22config+revolution%22
  https://github.com/The-Compiler/qutebrowser/issues/499

- Releasing v1.0.0

- Plugin API, and refactoring a large part of qutebrowser to be
  plugin-based.

Of course I'll also take care of pull requests along the way :)

Thanks again to all contributors - around 40 of them by now.
When I started with qutebrowser, I'd never have imagined this.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpbfbWSVQ14q.pgp
Description: PGP signature


qutebrowser v0.4.0 released!

2015-09-11 Thread Florian Bruhin
Hi,

I'm happy to annouce the release of qutebrowser v0.4.0!

While my own efforts mainly went into writing more tests, there are
still some new useful features thanks to contributors.

It's now possible to browse local directories, and there are many new
settings to allow finer control of the UI and other things.

This release also comes with two privacy-related fixes, so please
upgrade!

I'm still working on getting everything updated (AUR package, Windows
builds), but source packages are available already.

The full changelog:

Added
~

- New bookmark functionality (similar to quickmarks without a name).
* New command `:bookmark-add` to bookmark the current page (bound to `M`).
* New command `:bookmark-load` to load a bookmark (bound to `gb`/`gB`/`wB`).
- New (hidden) command `:completion-item-del` (bound to ``) to delete
  the current item in the completion (for quickmarks/bookmarks).
- New settings `tabs -> padding` and `tabs -> indicator-tabbing` to control the
  size/padding of the tabbar.
- New setting `ui -> statusbar-padding` to control the size/padding of the
  status bar.
- New setting `network -> referer-header` to configure when the referer should
  be sent (by default it's only sent while on the same domain).
- New setting `tabs -> show` which supersedes the old `tabs -> hide-*` options
  and has an additional `switching` option which shows tab while switching
  them. There's also a new `show-switching` option to configure the timeout.
- New setting `storage -> remember-download-directory` to remember the last
  used download directory.
- New setting `storage -> prompt-download-directory` to download all downloads
  without asking.
- Rapid hinting is now also possible for downloads.
- Directory browsing via `file://` is now supported.

Changed
~~~

- Some developer scripts got moved to `scripts/dev/`
- When downloading to a FIFO or special file, a confirmation is displayed as
  this might cause qutebrowser to hang.
- The `:yank-selected` command now works in all modes instead of just caret
  mode and is not hidden anymore.
- `minimal_webkit_testbrowser.py` now has a `--webengine` switch to test
  QtWebEngine if it's installed.
- The column width percentages for the completion view now depend on the
  completion model.
- The values for `tabs -> position` and `ui -> downloads-position` got changed
  from `north`/`south`/`west/`east` to `top`/`bottom`/`left`/`right`. Existing
  configs should be adjusted automatically.
- `:tab-focus`/`gt` now behaves like `:tab-next` if no count/index is given.
- The completion widget doesn't show a border anymore.
- The tabbar doesn't display ugly arrows anymore if there isn't enough space
  for all tabs.
- Some insignificant Qt warnings which were printed on OS X are now hidden.
- Better support for Qt 5.5 and Python 3.5.

Fixed
~

- Fixed a bug where cookies were saved despite qutebrowser being started in
  private browsing mode.
- The local socket used for inter-process communication (opening new instances)
  is now ensured to only be accessible by the user on all operating systems.
- Various corner cases for inter-process communication issues got fixed.
- `link_pyqt.py` now should work better on untested distributions.
- Fixed various corner-cases with crashes when reading invalid config values
  and the history file.
- Fixed various corner-cases when setting text via an external editor.
- Fixed potential crash when hinting a text field.
- Fixed entering of insert mode when certain disabled text fields were clicked.
- Fixed a crash when using `:set` with `-p` and `!` (invert value)
- Downloads with unknown size are now handled correctly.
- `:navigate increment/decrement` (``/``) now handles some
  corner-cases better.
- Fixed a bug where the completion got affected by another window's completion
  if it was open in both windows.
- Fixed a performance issue with large histories when opening previously
  unvisited websites.
- The progress bar now doesn't cause the statusbar to change it's height
  anymore.
- `~` is now always expanded when spawning a script.
- Fixed various corner cases when opening links in an existing instance.
- Fixed a race-condition causing an exception when starting qutebrowser.

Removed
~~~

- The `tabs -> indicator-space` setting got removed as the new padding settings
  should be used instead.
- The `tabs -> hide-always` and `tabs -> hide-auto` settings got merged into
  the new `tabs -> show` setting.

Since v0.3.0, the following people have contributed to qutebrowser:

- Antoni Boucher
- Alexander Cogneau
- Martin Tournoij
- Daniel
- jnphilipp
- Thorsten Wißmann
- Artur Shaik
- zwarag
- meles5
- Tim Harder
- Arseniy Seroka

Thank you!

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


pgpsfrIbmeDD4.pgp
Description: PGP signature


qutebrowser v0.4.1 released!

2015-09-30 Thread Florian Bruhin
Hi,

I'm happy to annouce the release of qutebrowser v0.4.1!

This is a bugfix-only release which (amongst other things) fixes
crashes with Debian experimental and Python 3.5.

Fixed
~

- Adjusted AppArmor config for the IPC changes in v0.4.0.
- Fixed atime update frequency for IPC file.
- Worked around a Qt issue where middle-clicking caused scrolling with
  a touchpad to restart at the beginning of the page.
- The `completion -> web-history-max-items` setting is now also
  respected for items added after starting qutebrowser.
- Search terms are now shared between different tabs again
- Tests (a reduced subset of them) now run correctly again when
  DISPLAY is not set.
- Fixed an issue causing qutebrowser to crash with Python 3.5 as soon
  as an ad was blocked.
- Fixed an issue causing qutebrowser to not start with more recent
  Python 3.4 versions (e.g. on Debian experimental).
- Fixed various `PendingDeprecationWarnings` shown with Python 3.5.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: Password management et al

2015-09-30 Thread Florian Bruhin
Hey Mel,

* Mel Boyce  [2015-10-01 16:20:50 +1000]:
> What's the story with password management in Qutebrowser? i.e.,
> remembering them?

There's currently an userscript in development which integrates with
'pass':

https://github.com/The-Compiler/qutebrowser/pull/873

The author (which also is on this list, I believe) told me he wanted
to work a bit more on it before merging, so it's not merged yet.

As soon as there's plugin support in qutebrowser (which will still
take a few months, unfortunately), I plan to write plugins to directly
integrate KeePassX, pass, and probably others:

https://github.com/The-Compiler/qutebrowser/issues/30
https://github.com/The-Compiler/qutebrowser/issues/180

> Also, some sites I use (basic challenge) "forget" my authentication
> after some number of minutes - something I hadn't noticed in dwb and
> certainly doesn't happen in FF.

Dou you have a publicly accessible example somewhere? I never had any
issues with Icinga, cups, and some other things.

Also, what Qt version? (see :open qute:version)

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: Slow Qutebrowser

2015-10-22 Thread Florian Bruhin
Hey,

* Abraham Baker  [2015-10-22 22:55:08 -0500]:
> Today I was composing an email in Gmail when the browser slowed to the
> point of being barely useable.  I took a screenshot of htop (username
> redacted):
> 
> 
> I closed qutebrowser and killed the remaining processes using htop, and now
> qutebrowser is working at full speed again (though the swap hasn't fully
> emptied yet).
> 
> I'm using qutebrowser-git on Arch, and I updated recently (though I didn't
> see qutebrowser in the list of updates on the last update).
> 
> Is there anything in a recent update or something I might be inadvertently
> doing that would cause this to happen?

Those kind of things are typically bugs in QtWebKit, the underlying
rendering engine - not in qutebrowser itself. What Qt version are you
using? (See :open qute:version).

There was an issue regarding extreme memory consumption fixed with
Qt 5.4.2 - so if you're on that or something newer, I have no idea how
this happened.

I'm sorry I can't help you much - things hopefully will get a lot
better in the future with the QtWebEngine/Chromium backend:

https://github.com/The-Compiler/qutebrowser/issues/666

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: Slow Qutebrowser

2015-10-23 Thread Florian Bruhin
* Abraham Baker  [2015-10-23 07:17:16 -0500]:
> I ran pacaur, and while the non-AUR packages upgraded well, there was
> apparently 'nothing to do'  for the AUR packages even though I have a
> (slightly) older qutebrowser.

Do you have qutebrowser or qutebrowser-git installed? This seems to
suggest -git:

> qutebrowser v0.4.0
> Git commit: v0.4.0-220-g55efd13 (2015-10-04 18:33:37 +0200)

For git packages, you usually have to take care of rebuilding them
yourself, as there's no easy way for the AUR agent to figure out if it
was updated (short of cloning the repo and comparing the versions, but
I don't think any AUR agent does that).

For qutebrowser, there are new commits almost daily ;)

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: Slow Qutebrowser

2015-10-23 Thread Florian Bruhin
* Abraham Baker  [2015-10-23 07:27:15 -0500]:
> I will backup my settings and try switching to the non-git version since
> that sounds current enough for my purposes.

Yeah, you aren't missing out on *that* much:

https://github.com/The-Compiler/qutebrowser/blob/master/CHANGELOG.asciidoc#v050-unreleased

> Is there anything special that I have to do besides backing up before
> switching?

Prepare to get an error thrown at you for every now unknown config
option - might want to start with --relaxed-config and then do :save
to make things easier.

> Thanks for all the help!

You're welcome!

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: Tabs with online accounts failing to reload after un-suspending at different access point

2015-11-02 Thread Florian Bruhin
Hey,

* Abraham Baker  [2015-11-02 17:35:40 -0600]:
> The message that shows up on my laptop is always something like: "network
> access is disabled", though I couldn't find any relevant settings in the
> qutebrowser settings page.  The message shows up regardless of whether the
> network is already connected or not.

This is an issue which turned up with Qt 5.5.1. See
https://github.com/The-Compiler/qutebrowser/issues/1054

Chances are it's already fixed with Qt 5.5.2 (or 5.6, if there's no
5.5.2), but I haven't gotten the chance to build and test that yet.

I plan to try that somewhen this week (I hope) and then either close
that bug and wait for the next Qt release, or report the issue
upstream if it still exists.

You can downgrade to 5.5.0 in the meantime if this is bothering you
too much. I usually work around it by using du (close tab and undo) or
gC (clone current tab).

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


qutebrowser v0.5.0 released!

2016-01-05 Thread Florian Bruhin
Hi,

I'm happy to annouce the release of qutebrowser v0.5.0!

This release comes with various new features, commands and settings -
such as the ability to use pdf.js to display PDF files in browser,
:download --mhtml to download a page including all ressources or
prettier error pages.

A note for packagers: qutebrowser now uses pdf.js to display PDFs if
the user enables that feature, and searches pdf.js in various common
places like /usr/share/pdf.js and /usr/share/javascript/pdf. If pdf.js
is packaged for your distribution (or you want to package it), please
add it as optional/recommended dependency.

The Windows packages are still building, but everything else should be
updated.

The full changelog:

Added
~

- Ability to preview PDFs using pdf.js in the browser if it's installed. This
  is disabled by default and can be enabled using the
  `content -> pdfjs-enabled` setting.
- New setting `ui -> hide-wayland-decoration` to hide the window decoration
  when using wayland.
- New userscripts in `misc/userscripts`:
- `open_download` to easily open a file in your downloads folder.
- `view_in_mpv` to open a video in mpv and remove it from the page.
- `qutedmenu` and `dmenu_qutebrowser` to select URLs via dmenu
- New setting `content -> host-blocking-whitelist` to whitelist certain domains
  from the adblocker.
- `{scroll_pos}` can now be used in `ui -> window-title-format` and
  `tabs -> title-format`.
- New setting `general -> url-incdec-segments` to configure which segments of
  the URL should be affected by `:navigate increment/decrement`.
- New `--target` argument to specify how URLs should be opened in an existing
  instance.
- New setting `statusbar.url.fg.success.https` to set the foreground color for
  the URL when a page was loaded via HTTPS.
- The scrollbar in the completion is now styled, and the following new options
  got added:
* `completion -> scrollbar-width`
* `completion -> scrollbar-padding`
* `colors -> completion.scrollbar.fg`
* `colors -> completion.scrollbar.bg`
- New value `none` for options taking a color system so they don't display a
  gradient:
* `colors -> tabs.indicator.system`
* `colors -> downloads.fg.system`
* `colors -> downloads.bg.system`
- New command `:download-retry` to retry a failed download.
- New command `:download-clear` which replaces `:download-remove --all`.
- `:set-cmd-text` has a new `--append` argument to append to the current
  statusbar text.
- qutebrowser now uses `~/.netrc` if available to authenticate via HTTP.
- New `:fake-key` command to send a fake keypress to a website or to
  qutebrowser.
- New `--mhtml` argument for `:download` to download a page including all
  ressources as MHTML file.
- New option `tabs -> title-alignment` to change the alignment of tab titles.

Changed
~~~

- The `colors -> tabs.bg/fg.selected` option got split into
  `tabs.bg/fg.selected.odd/even`.
- `:spawn --userscript` and `:hint` with the `userscript` target now look up
  relative paths in `~/.local/share/qutebrowser/userscripts` or
  `$XDG_DATA_DIR`. Using a binary in `$PATH` won't work anymore with
  `--userscript`.
- New design for error pages
- Link filtering for hints now checks if the text is contained anywhere in
  the link, and matches case-insensitively.
- The `ui -> remove-finished-downloads` option got changed to an integer and
  now takes a time (in milliseconds) to keep the download around after it's
  finished. When set to `-1`, downloads are never removed.
- The `:follow-hint` command now optionally takes the keystring of a hint to
  follow.
- `:scroll-px` now doesn't take floats anymore, which made little sense.
- Updated the user agent list for the `:set network user-agent` completion.
- Starting with `--debug` doesn't log `VDEBUG` messages anymore (add
  `--loglevel VDEBUG` to get them).
- `:debug-console` now hides the console if it's already shown.
- `:yank-selected` now doesn't log the selected text anymore.
- `general -> log-javascript-console` got changed from a boolean to an option
  taking a loglevel (`none`, `info`, `debug`).
- `:tab-move +/-` now wraps around if `tabs -> wrap` is `true`.
- When a subprocess (like launched by `:spawn`) fails, its stdout/stderr is now
  logged to the console.
- A search engine name can now contain any non-space character, like dashes.

Deprecated
~~

- `:download-remove --all` is now deprecated and `:download-clear` should be
  used instead.
- `:download  ` is now deprecated and
  `:download --dest  ` should be used instead.

Removed
~~~

- `:scroll` with two pixel-arguments (deprecated in v0.3.0)
- The `:run-userscript` command (deprecated in v0.2.0)
- The `rapid` and `rapid-win` targets for `:hint` (deprecated in v0.2.0)
- The `:cancel-download` command (deprecated in v0.2.0)
- The `:download-page` command (deprecated in v0.2.0)

Fixed
~

- Fixed retrying of downloads which were started in a now closed tab.
- Fixed displaying of web history if `web-hi

Fwd: [archlinux] Moved qutebrowser to community

2016-01-16 Thread Florian Bruhin
Hey,

Awesome news, qutebrowser is now in the Archlinux community
repository:

- Forwarded message from Pierre Neidhardt  -

As you requested, I've moved qutebrowser to community.
Thanks again for the good work!

Cheers!

- End forwarded message -

A Chocolatey package for Windows also got added recently:

https://github.com/The-Compiler/qutebrowser/blob/master/INSTALL.asciidoc#chocolatey-package

Thanks to everyone involved!

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


qutebrowser v0.5.1 released!

2016-01-18 Thread Florian Bruhin
Hi,

I'm happy to annouce the release of qutebrowser v0.5.1!

This release fixes three bugs:

- Fixed completion for various config values when using `:set`.
- Fixed config validation for various config values.
- Prevented an error being logged when a website with HTTP
  authentication was opened on Windows.

Since the second one can cause all kinds of funny crashes with
unexpected/wrong config values, I decided to do another release rather
sooner than later ;)

As usual, the Windows packages are still building while I'm writing
this, but everything else should be updated.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: Gmail bug?

2016-01-19 Thread Florian Bruhin
* Abraham Baker  [2016-01-19 09:05:57 -0600]:
> After upgrading to qutebrowser 0.5.0, I've noticed that when I try to drag
> emails from the inbox to labels on the side, instead of dragging the email
> as before, the mouse just selects the entire page.

First of all, please upgrade to v0.5.1 and check if there's any
invalid setting in the config - v0.5.0 has a bug where it doesn't
validate most setting values, which can cause all kinds of fun
trouble.

If you get the same on v0.5.1, can you please downgrade to v0.4.1 and
see if that makes things work again? I'd be quite surprised, as
usually those kinds of things are due to QtWebKit issues.

Thanks,

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: Gmail bug?

2016-01-19 Thread Florian Bruhin
* Abraham Baker  [2016-01-19 19:52:49 -0600]:
> When I first tried qutebrowser, I installed the git version.  So, I don't
> have any versions cached in pacman (I'm using Arch) older than .5.0.  Where
> can I get older versions so I could try downgrading?

You should be able to close all running qutebrowser instances and do
the following:

$ git clone https://github.com/The-Compiler/qutebrowser.git
$ cd qutebrowser
$ git checkout v0.4.1
$ python3 -m qutebrowser --version

If that shows you v0.4.1, start it via python3 -m qutebrowser and
that's it.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


PSA: GitHub broken with qutebrowser

2016-01-20 Thread Florian Bruhin
Hey,

it seems like GitHub did some changes to their site which means all
their JS is broken in QtWebKit based browsers, like qutebrowser.

Among other things, this means pressing Ctrl-Enter to submit a comment
doesn't work, and clicking "Comment" *does* work, but does not update
the page (so take care to not duplicate stuff when commenting on an
issue please).

Unfortunately there isn't very much I can do right now - so if you use
GitHub and it's broken for you too, please contact GitHub support:

https://github.com/contact

Sorry for the trouble, and let's hope GitHub fixes this soon.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: Gmail bug?

2016-01-20 Thread Florian Bruhin
* Abraham Baker  [2016-01-20 12:27:48 -0600]:
> Interestingly enough, for me this problem now also happens in Firefox
> (43.0.4).  Perhaps this has something to do with some other recently
> updated package.

That, or a change on GMail's side.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: List of Currently Opened Tabs?

2016-01-29 Thread Florian Bruhin
Hey,

* Stefan Tatschner  [2016-01-29 10:28:51 +0100]:
> I often have a lot of tabs open in qutebrowser. So I am looking for a
> solution to deal better with a lot of tabs. I have come to the idea that
> some dmenu/rofi userscript would be fine.

IMHO ideally this would be integrated into qutebrowser's completion,
see this issue: https://github.com/The-Compiler/qutebrowser/issues/32

Unfortunately I'm working on stuff which is higher priority right now,
probably for some more months (tests, QtWebEngine, per domain
settings, plugins).

I'm still hoping someone will contribute that one ;)

> That script should get a list of all currently opened tabs, pipe it into
> dmenu/rofi and finally send some "please change to tab number soandso"
> command to qutebrowser.
> 
> I have not yet found a qutebrowser command to get a list of all opened
> tabs. Am I missing something?

There isn't. You'd typically do this via an userscript, and there's
currently no way for an userscript to request more information (or get
"answers" to commands it sends).

qutebrowser could expose this information to userscripts via an
environment variable, e.g. some $QUTE_TABS variable set to something
like:

0 0 url title of first tab in first window
0 1 url title of second tab in first window
[...]

The problem with that approach is that it might be too much data for
an environment variable, so maybe $QUTE_TABS would need to be a
filename of a temporary file, like $QUTE_HTML and $QUTE_TEXT is.

Then again I'm not sure how much it makes sense to shoehorn all
possible usecases into somewhat fragile userscripts. I'd rather see
plugins written in Python (or possibly JS at some later point), but it
might still take a while until that's ready.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: List of Currently Opened Tabs?

2016-01-31 Thread Florian Bruhin
* Matt  [2016-01-29 22:54:02 +0100]:
> Then I am not sure qutebrowser is capable of syncing history between
> instances (like zsh or neovim do) ? which can be annoying

qutebrowser doesn't really run separate instances (unless you're using
another --basedir or --temp-basedir) - when you open a second one, it
communicates via IPC with the existing one and tells it to open
whatever you passed.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Fwd: [TIP] python testing sprint June 2016 (pytest/tox) / funding needed

2016-02-05 Thread Florian Bruhin
Hey,

as you might know, qutebrowser is using pytest for its tests, and I'm
also a pytest core developer.

We're hosting a sprint in June in Freiburg, Germany, where
contributors from all over the world participate - including me!

A crowdfunding campaign just got launched to collect money to pay
travel/accomodation expenses - please consider donating:

http://igg.me/at/pytest-sprint/x/4034848

See the forwarded message for more details.

Thank you!

Florian

- Forwarded message from holger krekel  -

Hello all,

we are heading for a one-week python testing sprint focusing on
improving the open source pytest and tox tools in June 20th-26th 2016 in
Freiburg, Germany. We have around 10 core maintainers from all across
the globe who want to participate.  We just started an indiegogo
campaign to get the neccessary funding for travel/accomodation and hope
you or your organisation help to make it happen and/or even participate
yourself.

See here for more details on the sprint: 

http://pytest.org/latest/announce/sprint2016.html

and here for donating to make it happen:

http://igg.me/at/pytest-sprint/x/4034848

thanks!
holger

-- 
about me:http://holgerkrekel.net/about-me/
contracting: http://merlinux.eu

- End forwarded message -

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


qutebrowser cloaks on Freenode

2016-02-11 Thread Florian Bruhin
Hey!

qutebrowser just got added as an official Freenode project, which
means I can now give out qutebrowser/user/* and qutebrowser/dev/*
cloaks/hostmasks for freenode.

If you'd like one, just PM me on Freenode (The-Compiler) and I'll set
it up.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: qutebrowser: feature suggestion

2016-02-21 Thread Florian Bruhin
Hey,

* Abraham Baker  [2016-02-19 20:51:07 -0600]:
> Minor suggestion:
> When sites that have "SSL Errors" try to load, a prompt appears asking if I
> want to continue (since the certificate is invalid).  Usually I just press
> 'y' and continue, but sometimes I'd rather just close the tab ('d') since I
> don't need it anymore.  However, I can't close the tab right away since the
> prompt wants 'y' or 'n'.
> 
> Would it be possible to change prompts so that 'd' or other similar actions
> would still work (since close is the same as "no and close this tab")?

I'm not sure whether I should add that as a default binding or not,
but you can simply add such a binding yourself:

:bind --mode prompt d tab-close

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: ram

2016-02-29 Thread Florian Bruhin
Hey,

* Ibon Santisteban  [2016-02-29 22:18:30 +0100]:
> First of all, I just discovered qutebrowser, and congratulations
> (and thanks) for such a good piece of software.

You're welcome!

> I'm not really sure this is an issue, but I thought I rather say
> something than not: I have the feeling that for a minimalistic
> browser, it uses too much RAM. I just compared to other browsers and
> this is what I got, having the same amount of tabs (five) open with
> the exact same websites:
>  
> midori: 154.8 MiB
> otter browser: 286.6 MiB
> qupzilla: 198.0 MiB
> luakit: 375.7 MiB (even though it started at around 278, it increases as time 
> goes by for some reason)
> QUTEBROWSER: 587.9 MiB

Hmm, interesting qutebrowser would use this much more RAM compared to
Otter and QupZilla. What pages did you have open, and how precisely
did you measure?

(also note you're not subscribed to the list - I approved your posting
by hand)

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: ram

2016-03-02 Thread Florian Bruhin
Hey,

* Ibon Santisteban  [2016-03-02 20:48:13 +0100]:
> The websites that I​ had open were:
>  
> lxer.com
> elcorreo.com
> argia.eus
> hoechberg.de
> primewire.ag (the main website; I wasn't streaming anything yet)
>  
> To meassure I used ps_mem; a package from the Manjaro repositories.
> I could try other methods, but besides htop and conky I don't know
> how. Conky's overall RAM usage matched the one I got with ps_mem,
> but I don't have configured so that you can see the processes and
> how much they are using. I could do that for testing though, if it
> were of any help...

I tried to reproduce this, with a freshly opened instance, and
measuring qutebrowser's RAM usage after all pages were loaded.
I get 310 MB (rather than your 588 MiB), and 318 MB with Otter.

I'm wondering, does it look the same for you when you launch with
--temp-basedir?

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: Wikipedia page?

2016-03-06 Thread Florian Bruhin
Hey,

* Abraham Baker  [2016-03-05 21:36:14 -0600]:
> I just made a wikipedia account to fix a mistake on an unrelated page, and
> I realized that there's no wikipedia page for qutebrowser yet.
> 
> There are lots of pages about other open-source browsers, as well as
> userboxes for them.
> https://en.wikipedia.org/wiki/Comparison_of_web_browsers
> 
> Should there be a page and/or a userbox for qutebrowser?
> https://en.wikipedia.org/wiki/Wikipedia:Userboxes/Browsers

If someone steps up to write and maintain a page which won't end up
getting marked as irrelevant/stub - sure, go ahead!
I know I won't try ;)

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


RFC - Doing a crowdfunding for QtWebEngine in qutebrowser?

2016-03-07 Thread Florian Bruhin
Hi!

(Warning, somewhat long mail ahead - tl;dr: I'm thinking about doing a
crowdfunding to work full-time on qutebrowser for a while, and I'm
trying to collect thoughts and opinions on that)

As some of you might know, over the past few months I've mostly been
working on qutebrowser's testsuite to prepare for the upcoming
integration of QtWebEngine, the new backend based on Chromium.

Since last year, I've brought the test coverage up from something like
20% to 77%, and now I hope there won't be too much left until I feel
confident starting to work on QtWebEngine support.

QtWebEngine will bring many improvements to qutebrowser in various
areas - compatibility, stability, and security. This is due to it
being based on a modern Chromium instead of using an oudated WebKit as
backend.

However, this is a major undertaking. While I had plans to switch to
QtWebEngine since day one, I didn't anticipate it would be as
backwards-incompatible as it is (and I think neither did Qt people,
back then).



Right now, I can only work on qutebrowser quite fragmented. Most of
the stuff happens in the 2 hours I drive per day in public transports,
with multiple distractions (due to switching trains) in between. I
found it very hard to work on bigger things in qutebrowser that way.

Twice I took time off from work to be able to do more focused work.
Once before the v0.1 release, and once somewhat recently to work on
tests.

Inspired by pytest doing a fundraiser for a sprint, I looked at a
topic I had in the back of my mind for some while already: Collecting
some money so I can work on qutebrowser full-time, ideally for a
timespan between 2 weeks and 2 months.

It's not like I plan to stop working on qutebrowser in my free time,
it's just much easier when I can do so for hours without being
interrupted rather than minutes. QtWebEngine will come either way, but
it'll come a lot faster with your help!

As mentioned I mainly plan to work on QtWebEngine in that time, but if
time permits, there are other big undertakings (like config
adjustments to allow for per-domain settings) waiting to be tackled.



Since I'm saving for starting to study later this year, I won't be
able to do this without any income at all, however.

After some thinking about this, I'd need to have something like
3000 CHF per month to be able to follow those plans.

If you wanted to exchange your local currency to that, that'd be
about:

- 2800 EUR
- 2100 GBP
- 3000 USD

... I know this is probably sounding like a lot of money.

The problem is, living in Switzerland is quite expensive, and what
you'd probably consider quite a good salary is really modest here.

Adjusting the amounts based on the "location factors"[1] (which I
believe are a quite reasonable combination of various sources) yields
the following results[2]:

- 1300 EUR (assuming you're living in Germany)
- 1200 GBP
- 2300 USD

So what I thought about is doing a "flexible funding" campaign with
the goal of probably 3000 EUR, which translates to a month of
full-time work on qutebrowser.

If there's less than that, I'll get the money either way, and work
less time. If there's more, I'll be able to work on it longer (up to
something like 7500 EUR, i.e. 2.5 months).

In exchange, I could provide some schwag, like qutebrowser stickers
and t-shirts.



I realize this is quite crazy, and - also due to the lack of cooperate
backers - I'm really not sure what to expect, this is more of a
(public) thought experiment for now.

This is why I'd appreciate hearing any comments and thoughts you all
have on that matter - whether you know about similar projects which
did such a thing in the past, or you think this is completely crazy,
or you dislike the idea in general.

Also, if you think you'd donate to the cause, please let me know as
well!

Feel free to reply to me privately/off-list too.

Thanks,

Florian

[1] http://location.rkh.im/
[2] http://location.rkh.im/calculator/DE;US;GB;CH/3k?time_unit=month&base=CH

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: RFC - Doing a crowdfunding for QtWebEngine in qutebrowser?

2016-03-07 Thread Florian Bruhin
* Mel Boyce  [2016-03-07 22:39:22 +1100]:
> On Mon, Mar 7, 2016, at 19:12, Florian Bruhin wrote:
> > - 2800 EUR
> > - 2100 GBP
> > - 3000 USD
> 
> USD$10 from 300 people sounds manageable in exchange for modernizing a
> web browser of this caliber.

Hmm, I doubt that. Hell, I'm not even sure it has 300 users.
Unfortunately, those things are quite hard to predict/measure.

I guess in the end I'll just have to try and see what happens ;)

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: :wq and restart not working as expected

2016-03-08 Thread Florian Bruhin
Hey,

* Abraham Baker  [2016-03-08 07:40:47 -0600]:
> When I close qutebrowser with :wq and then restart it after restarting the
> computer, all of my previously opened tabs remain shown, but fail to load.

What does "fail to load" mean exactly? Do they stay blank? Display an
error? Does this always happen?

Can you do :report after it happens so I get a debug log with the
information necessary to investigate this?

> *I like how transparent history logging is in this browser, making it easy
> to search through and manage.

Yeah - I hope I'll be able to stick to that even with QtWebEngine,
which is a bit more integrated. It's definitely a feature I like as
well :)

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: qutebrowser and Github

2016-03-10 Thread Florian Bruhin
* Ryan Roden-Corrent  [2016-03-10 21:08:43 -0500]:
> I remember a while back a mail went around about qutebrowser having trouble 
> with
> Github's web UI. Has anyone tried contacting their support about this? I did,
> and was told they couldn't repro it. I just waited figuring the problem would
> sort itself out eventually, but it still hasn't. In particular, I need to 
> launch
> chromium every time I want to open a PR because the buttons and dropdowns 
> don't
> work in qutebrowser. For those that weren't following this, there _was_ a time
> when it worked, but it hasn't for a while (months, maybe?).

After some people contacted support, it worked again after a few
days - but only if you set your user-agent to the default.

Not sure what weird stuff they do, but things are going to get better
with QtWebEngine in the future either way.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: Remapping Escape

2016-03-10 Thread Florian Bruhin
Hey,

* Tomáš Orsava  [2016-03-10 22:51:36 +0100]:
> I recently mapped the letters "jk" to Escape in vim, as it has numerous
> advantages: http://learnvimscriptthehardway.stevelosh.com/chapters/10.html

I just mapped capslock to esc via xmodmap ;)

> This sadly does not work (at least not from insert mode where I need it).
> Am I doing something wrong, or is this not possible in qutebrowser as of
> yet?

You can currently only bind special chars (i.e. non-alphanumeric ones,
or involving a modifier) in insert mode, yeah.

There is an issue for it though:
https://github.com/The-Compiler/qutebrowser/issues/1044

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


PSA: Don't upgrade to Qt 5.6 with Homebrew on OS X

2016-03-18 Thread Florian Bruhin
Hey,

Homebrew apparently decided to not package QtWebKit with Qt 5.6
anymore: https://github.com/Homebrew/homebrew/pull/50234

I'll figure out what to do about this later(tm) - for now, please
don't upgrade your packages.

If someone has an idea what the best way to solve this is, please let
me know.

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


New qutebrowser-ML subscriptions

2016-03-20 Thread Florian Bruhin
Hey!

I noticed a lot of new subscriptions to the ML today/yesterday, and a
spike in GitHub traffic and new people in IRC - however I have no idea
why, and got curious.

How did you all find qutebrowser? Is it in some Linux magazine or
something I'm not aware of yet? ;)

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


Re: Gmail support?

2016-03-20 Thread Florian Bruhin
Hey,

* Abraham Baker  [2016-03-19 19:41:51 -0500]:
> I'm using the stable arch version of qutebrowser (0.5.1,
> https://www.archlinux.org/packages/?name=qutebrowser), and a few days ago I
> started seeing a message at the top of the gmail interface saying:
> "This version of Safari is no longer supported. Please upgrade to a
> supported browser."
> 
> Does anybody know if this just applies to .5.1, or if gmail is displaying
> this notice on every version of qutebrowser?  This does not break any
> functionality, but it seems strange.

A couple of websites do that, and as Ryan said - changing the UA
works, but breaks other pages.

* Ryan Roden-Corrent  [2016-03-19 20:56:41 -0400]:
> I see it too (0.5.1, Archlinux).
> It goes away if you change the user agent from the default. 
> Try :set network user-agent and tab through the suggestions.
> I've found this is actually necessary to use google hangouts.
> Unfortunately, a non-default user-agent breaks a lot of the Github UI.

Let's add this to the pile of issues which will be fixed by per-domain
settings[1] and/or the QtWebEngine backend[2].

[1] https://github.com/The-Compiler/qutebrowser/issues/27
[2] https://github.com/The-Compiler/qutebrowser/issues/666

Florian

-- 
http://www.the-compiler.org | m...@the-compiler.org (Mail/XMPP)
   GPG: 916E B0C8 FD55 A072 | http://the-compiler.org/pubkey.asc
 I love long mails! | http://email.is-not-s.ms/


signature.asc
Description: Digital signature


  1   2   3   4   5   >