Commit Graph

1155 Commits

Author SHA1 Message Date
Florian Bruhin
86bd42ec93 build_release: Rebuild tox environments
This way we can be sure we have updated dependencies installed.
2016-07-26 16:38:32 +02:00
Florian Bruhin
12007dd0d0 DMG Makefile: Don't generate template.dmg.bz2
Let's not have this in the workingdir, instead just regenerate it every
time.
2016-07-26 16:30:34 +02:00
Florian Bruhin
ed67b988f9 DMG Makefile: Increase template size to 300 MB
Otherwise QtWebEngine wouldn't fit.
2016-07-26 16:29:29 +02:00
Florian Bruhin
fb20352e3f build_release: Add smoke test for OS X
This should prevent something like #1686 in the future.
2016-07-26 16:10:25 +02:00
Florian Bruhin
614794a62a link_pyqt: Use PyQt5.QtCore to find PyQt5 path
For some reason on OS X, PyQt5.__file__ does not exist as it's a
namespace package.
2016-07-26 13:59:25 +02:00
Florian Bruhin
f4f6a3dac1 Merge branch 'open-download' of https://github.com/Kingdread/qutebrowser into Kingdread-open-download 2016-07-26 10:32:34 +02:00
Florian Bruhin
04fdce9058 Close file stream in qute_pylint.modeline 2016-07-23 17:00:05 +02:00
Florian Bruhin
6f65973237 Adjust freeze_tests for cherrypy.wsgiserver merge 2016-07-15 17:05:41 +02:00
Florian Bruhin
701c2fe7d0 appveyor: Don't patch registry
In newer Appveyor images, only a key for Python 3.5 exists here.
2016-07-15 17:05:16 +02:00
Florian Bruhin
d079caafa8 Add possibility to disable spellcheck 2016-07-15 00:07:37 +02:00
Jan Verbeek
bbc46d28ff Use lists instead of tuples for comparing
Per one of the diff comments on #1597:
> I used to use a tuple for constant things, but nowadays I'd actually
> prefer a list as a tuple is something more heterogeneous (i.e. it
> makes sense to have a `(x, y)` point as a tuple, but a list of points
> would be a list).
> At some point I should probably change it to a list everywhere 😉
2016-07-12 22:05:32 +02:00
Daniel Schadt
220203dd9c spellchecker: mark "occurs" as correct
See http://www.thefreedictionary.com/occur
2016-07-12 16:52:01 +02:00
Florian Bruhin
37d20023b3 Remove now unneeded vulture ignore
We're now using __slots__
2016-07-08 10:10:08 +02:00
Florian Bruhin
3fe851ed84 Temporarily remove tab.py from perfect_files
We have things like the mousewheel event handling in there which we
can't easily test just yet.
2016-07-07 18:32:52 +02:00
Florian Bruhin
ec053f8007 Simplify TabData implementation
This uses direct attributes instead of self._data which means we can
only override __setattr__, and pylint will better understand what's
happening.
2016-07-07 18:32:52 +02:00
Florian Bruhin
4305966f7b Add WrapperLayout/AbstractTab 2016-07-07 18:32:52 +02:00
Florian Bruhin
a58c3ff0c6 Print some version numbers in travis_install.sh 2016-07-06 22:25:14 +02:00
Florian Bruhin
89cdef851d Install new node 2016-07-06 17:05:12 +02:00
Ryan Roden-Corrent
f94ee172c9 Add completion/models/base to perfect_files.
It now has 100% test coverage.
2016-06-30 07:26:02 -04:00
Florian Bruhin
ad83950410 travis: Install v5.6.1_1-1 bottle
This should fix OS X builds.
2016-06-30 09:54:03 +02:00
Florian Bruhin
03fbacd93c requirements: Update vulture to 0.9
* Don't flag attributes as unused if they are used as global variables in
  another module.
* Don't consider "True" and "False" variable names.
* Abort with error message when invoked on .pyc files.

This means we can remove the whitelisted globals in run_vulture.py and
the associated xfailing test.

We also needed to adjust run_vulture.py slightly as the file attribute
got renamed to filename.
2016-06-29 23:44:39 +02:00
Ryan Roden-Corrent
9578a3324e Break two long lines that were failing pylint. 2016-06-13 22:31:21 -04:00
Florian Bruhin
4fccc89d7d Split browser into browser/browser.webkit 2016-06-13 11:18:21 +02:00
Florian Bruhin
cfe360b95e travis: Update OS X bottle to Qt 5.6.1 2016-06-10 23:14:57 +02:00
Florian Bruhin
7511bc1fe5 tests: 100% coverage for browser.history 2016-06-10 12:01:14 +02:00
Florian Bruhin
bd111c2ab1 Fix lint 2016-06-08 07:16:27 +02:00
Florian Bruhin
016c102e57 Fix lint 2016-06-08 00:05:57 +02:00
Florian Bruhin
f6473620c5 Fix recompile_requirements.py without arguments 2016-06-07 23:44:50 +02:00
Florian Bruhin
55da4ffc03 Also generate root requirements 2016-06-07 23:44:22 +02:00
Florian Bruhin
164d7bea4b recompile_requirements: Add replace command 2016-06-07 23:40:00 +02:00
Florian Bruhin
1c6b4da706 Use #@ as chars 2016-06-07 23:21:50 +02:00
Florian Bruhin
6249436bde Rename raw-requirements files
This hopefully means they're not picked up on requires.io.
2016-06-07 23:21:50 +02:00
Florian Bruhin
34a6451806 Add special #! commands to recompile_requirements 2016-06-07 23:08:14 +02:00
Florian Bruhin
136cb19814 reqs: Comment out ignored dependencies 2016-06-07 22:53:17 +02:00
Florian Bruhin
1a26c8c61f Add a script to compile requirement files 2016-06-07 22:45:59 +02:00
Florian Bruhin
41fcf0ed33 Make pytest_rerunfailures work with frozen tests 2016-06-04 17:07:51 +02:00
Florian Bruhin
ce0b50bafd Fix pytest_rerunfailures package name 2016-06-01 13:13:41 +02:00
Florian Bruhin
e6f3a200c8 Include pytest-rerunfailures for frozen tests 2016-06-01 12:39:29 +02:00
Florian Bruhin
2a49dbe817 Fix handling of cmd.no_cmd_split for docs 2016-05-30 16:42:53 +02:00
Florian Bruhin
e8528c2c75 travis: Switch back to autogenerated Docker images
Archlinux updated to PyQt 5.6 in [extra] now, so the autobuilt image
should work fine with Qt 5.6 now.
2016-05-29 23:00:32 +02:00
Florian Bruhin
070e30658f Fix lint 2016-05-29 22:22:34 +02:00
Florian Bruhin
001670969b tests: Ignore segfaults on pytest exit
In various situations (especially on OS X), pytest segfaults on exit probably
due to Qt/PyQt bugs.

We now have a wrapper script which ignores those segfaults if pytest did run
successfully.
2016-05-29 22:06:24 +02:00
Florian Bruhin
1332258767 Revert "travis_run: Show tox exit status"
This reverts commit 144a37ec06.
We accidentally always exit with status 0 with this...
2016-05-29 20:46:48 +02:00
Florian Bruhin
144a37ec06 travis_run: Show tox exit status 2016-05-29 18:47:58 +02:00
Florian Bruhin
64d4c9f83e Clean up end2end test file structure
This renames tests/integration to tests/end2end and moves some files to
tests/end2end/fixtures.
2016-05-29 18:20:00 +02:00
Florian Bruhin
6f6303e0a6 Use requirements files for tox dependencies
While this makes things a little more complicated and means we'll need to use
`-r` to recreate tox environments, it has several advantages:

- Full support from requires.io (including PRs)
- Workaround for https://bitbucket.org/hpk42/tox/issues/332/ so we can update
  virtualenv/pip
2016-05-29 16:53:54 +02:00
Florian Bruhin
cd7b8c65df Remove OS X specific options from freeze.py 2016-05-29 16:26:21 +02:00
Florian Bruhin
9bb425d598 Install Qt5/PyQt5 from custom bottles on OS X
We have a custom build which comes with QtWebKit now.
2016-05-29 15:46:43 +02:00
Florian Bruhin
345768bfc4 Fix requirements installing on Appveyor 2016-05-29 15:28:49 +02:00
Florian Bruhin
a987b714de appveyor: Install pip/tox from requirements files 2016-05-29 15:14:42 +02:00
Florian Bruhin
f4ce199968 ci: Blacklist virtualenv > 15.0.1 2016-05-29 15:09:14 +02:00
Florian Bruhin
f72fc04bb1 Revert "ci: Update virtualenv to 15.0.2"
This reverts commit 3c978aa203.
We need to revert this due to the tox/pip bug with inline comments.
2016-05-29 15:08:43 +02:00
Florian Bruhin
1e55db0630 Follow the American way(tm) of spelling things 2016-05-29 10:57:41 +02:00
Florian Bruhin
3c978aa203 ci: Update virtualenv to 15.0.2 2016-05-28 23:27:42 +02:00
Florian Bruhin
4066696956 tox/requirements: Update coverage to 4.1
Version 4.1 --- 2016-05-21

- The internal attribute Reporter.file_reporters was removed in 4.1b3.
  It should have come has no surprise that there were third-party tools
  out there using that attribute. It has been restored, but with a
  deprecation warning.

Version 4.1b3 --- 2016-05-10

- When running your program, execution can jump from an except X: line
  to some other line when an exception other than X happens. This jump
  is no longer considered a branch when measuring branch coverage.
- When measuring branch coverage, yield statements that were never
  resumed were incorrectly marked as missing. This is now fixed.
- During branch coverage of single-line callables like lambdas and
  generator expressions, coverage.py can now distinguish between them
  never being called, or being called but not completed.
- The HTML report now has a map of the file along the rightmost edge of
  the page, giving an overview of where the missed lines are. Thanks,
  Dmitry Shishov.
- The HTML report now uses different monospaced fonts, favoring Consolas
  over Courier. Along the way not properly handling one-space indents
  was fixed. The index page also has slightly different styling, to try
  to make the clickable detail pages more apparent.
- Missing branches reported with coverage report -m will now say ->exit
  for missed branches to the exit of a function, rather than a negative
  number.
- coverage --help and coverage --version now mention which tracer is
  installed, to help diagnose problems. The docs mention which features
  need the C extension.
- Officially support PyPy 5.1, which required no changes, just updates
  to the docs.
- The Coverage.report function had two parameters with non-None
  defaults, which have been changed. show_missing used to default to
  True, but now defaults to None. If you had been calling
  Coverage.report without specifying show_missing, you'll need to
  explicitly set it to True to keep the same behavior. skip_covered used
  to default to False. It is now None, which doesn't change the
  behavior.
- It's never been possible to pass a namespace module to one of the
  analysis functions, but now at least we raise a more specific error
  message, rather than getting confused.
- The coverage.process_startup function now returns the Coverage
  instance it creates.
- Make a small tweak to how we compare threads, to avoid buggy custom
  comparison code in thread classes.

Version 4.1b2 --- 2016-01-23

- Problems with the new branch measurement in 4.1 beta 1 were fixed:
  - Class docstrings were considered executable. Now they no longer are.
  - yield from and await were considered returns from functions, since
    they could tranfer control to the caller. This produced unhelpful
    "missing branch" reports in a number of circumstances. Now they no
    longer are considered returns.
  - In unusual situations, a missing branch to a negative number was
    reported.
- The XML report now produces correct package names for modules found in
  directories specified with source=.
- coverage report won't produce trailing whitespace.

Version 4.1b1 --- 2016-01-10

- Branch analysis has been rewritten: it used to be based on bytecode,
  but now uses AST analysis. This has changed a number of things:
  - More code paths are now considered runnable, especially in
    try/except structures. This may mean that coverage.py will identify
    more code paths as uncovered. This could either raise or lower your
    overall coverage number.
  - Python 3.5's async and await keywords are properly supported
  - Some long-standing branch coverage bugs were fixed:
    - functions with only a docstring for a body would incorrectly
      report a missing branch on the def line.
    - code in an except block could be incorrectly marked as a missing
      branch.
    - context managers (with statements) in a loop or try block could
      confuse the branch measurement, reporting incorrect partial
      branches.
    - In Python 3.5, an actual partial branch could be marked as
      complete.
- Pragmas to disable coverage measurement can now be used on decorator
  lines, and they will apply to the entire function or class being
  decorated.
- Multiprocessing support is now available on Windows.
- Files with two encoding declarations are properly supported.
- Non-ascii characters in regexes in the configuration file worked in
  3.7, but stopped working in 4.0. Now they work again.
- Form-feed characters would prevent accurate determination of the
  beginning of statements in the rest of the file. This is now fixed.
2016-05-22 14:35:26 +02:00
Florian Bruhin
5c8d1656ff Fix path to test_keyhints.py in check_coverage.py
utils -> misc
2016-05-18 07:34:40 +02:00
Florian Bruhin
d0af80fbd5 Merge branch 'keystring' of https://github.com/rcorre/qutebrowser into rcorre-keystring 2016-05-18 07:33:17 +02:00
Florian Bruhin
c0d044447d Add tests for qutebrowser.utils.typing 2016-05-18 06:55:17 +02:00
Florian Bruhin
a0d0b6464f Use typing.py-like annotations for command args
This means:

- An annotation like (int, str) is now typing.Union[int, str].
- utils.typing got expanded so it acts like the real typing.py, with
  issubclass() working properly with typing.Union and __union_params__
  being set.
- A literal string doesn't exist anymore as annotation, instead
  @cmdutils.argument now has a 'choices' argument which can be used like
  @cmdutils.argument('arg', choices=['val1', 'val2']).
- Argument validating/converting is now entirely handled by
  argparser.type_conv instead of relying on python's argparse, i.e.
  type/choices is now not passed to argparse anymore.
2016-05-18 06:55:17 +02:00
Florian Bruhin
2fc4f408cd Fix src2asciidoc 2016-05-18 06:55:17 +02:00
Florian Bruhin
965a012db7 Name strip_whitespace.sh correctly 2016-05-18 06:54:14 +02:00
Florian Bruhin
ee579b4bc3 Add a script to strip trailing whitespace
Obsoletes #1498
2016-05-18 06:37:26 +02:00
Ryan Roden-Corrent
822d148713 Update key hint tests for new format.
Change the unit tests to expect the new tabular format.
Also generally clean up the tests -- refactor from a class to
module-level functions as there was no need for a class here.
2016-05-17 07:04:53 -04:00
Florian Bruhin
b6abada50a Fix lint 2016-05-13 06:42:09 +02:00
Florian Bruhin
a7ece80d34 Merge branch 'pyinstaller' 2016-05-13 06:21:28 +02:00
Florian Bruhin
7901d2929a ci: Update pip to 8.1.2
Since virtualenv uses the built-in pip version with VIRTUALENV_DOWNLOAD=no we
need to make sure we keep virtualenv capped, but we can use a newer pip.
2016-05-12 20:32:03 +02:00
Florian Bruhin
e70d6d49d9 travis: Separate requirement files
This way we can update pip independently before installing the rest, and
avoid installing codecov (and thus coverage which attempts to build C
extension) where it's not needed.
2016-05-12 20:32:03 +02:00
Florian Bruhin
d4e2b4ebb4 travis: Don't update Python for flake8 env
This was needed because of a bug for which the backfix seems to be
ported to Ubuntu now.
2016-05-12 20:32:03 +02:00
Florian Bruhin
56a2b6778c travis: Install libpython3.4-dev
This is now needed because we use "language: generic" which doesn't come
with that package.
2016-05-12 20:32:03 +02:00
Florian Bruhin
e13320b398 travis: Use python2 for pip
This means we won't need to install pip via apt-get, and using a
Python 2 tox/pip is fine.
2016-05-12 20:32:03 +02:00
Florian Bruhin
3033f77f99 travis: Use (( in travis_retry
If we use [, the script exits when a condition is false (as we use
set -e).
2016-05-12 20:32:03 +02:00
Florian Bruhin
cdc79339fb travis: Use requirement files for pip
This way we can pin tox/pip versions (which are used in the native
Travis environment) *and* get notified about updates by requires.io.
2016-05-12 20:32:03 +02:00
Florian Bruhin
6558e196b4 Simplify package installation on CI
Having a Python script was a good idea back when we could do almost the
same steps on every CI configuration.

This turned out to grow into a complicated script, so it's easier to
split off things for Linux/OS X into a small shell script (and keep
Python for Windows, as I really don't want to use .bat/.ps).
2016-05-12 20:32:03 +02:00
Daniel Schadt
dcb2c7f868 link_pyqt: fix crash with spaces in pypath
This fixes a bug where link_pyqt crashes when the path to the python
interpreter contains a space.
2016-05-08 01:08:36 +02:00
Florian Bruhin
ccd0d1621c Regenerate authors 2016-05-07 22:10:19 +02:00
Florian Bruhin
a5cea14a0f Update docs 2016-05-07 21:39:19 +02:00
Florian Bruhin
e06a32ff42 Revert "travis: Switch to autobuilt Docker images"
This reverts commit b2e52408f7.
Turns out only [testing] is on PyQt 5.6, and even with that the testsuite
doesn't seem to load properly...
2016-04-29 23:21:41 +02:00
Florian Bruhin
b2e52408f7 travis: Switch to autobuilt Docker images
Since Archlinux switched to PyQt 5.6, we can now use the autobuilt image
without a handbuilt PyQt. This means we have an up-to-date image with
each build again.
2016-04-29 22:54:00 +02:00
Florian Bruhin
2a343cb3a1 Various code style improvements 2016-04-27 20:25:27 +02:00
Florian Bruhin
eeb830e040 travis: Ignore doc changes when building a PR
Fixes #1441
2016-04-20 22:35:02 +02:00
Florian Bruhin
d33fae455d Remove unused import 2016-04-15 19:31:54 +02:00
Florian Bruhin
1f66d74f01 Use __file__ instead of sys.argv[0] 2016-04-15 19:12:10 +02:00
Jan Verbeek
7f9a7a282f Make update_3rdparty.py install correctly when run from any directory 2016-04-15 11:23:52 +02:00
Florian Bruhin
642dc46ba9 flake8: Add hacking 2016-04-08 07:35:53 +02:00
Florian Bruhin
0e6bada68f build_release: Build docs/update 3rdparty on OS X 2016-04-07 08:53:34 +02:00
Florian Bruhin
3f0429574c Makefile-dmg: Add /Applications link to dmg 2016-04-07 08:53:34 +02:00
Florian Bruhin
3984437484 build_release: Build dmg via Makefile-dmg 2016-04-07 08:53:34 +02:00
Florian Bruhin
03be10b4fe Makefile-dmg: Copy files from subdirs
We don't want a /dist/qutebrowser.app in the dmg, only a /qutebrowser.app.
2016-04-07 08:53:34 +02:00
Florian Bruhin
97cb429b57 Makefile-dmg: Set variables 2016-04-07 08:53:34 +02:00
Florian Bruhin
533b9d22e7 Add fancy-dmg Makefile 2016-04-07 08:53:34 +02:00
Florian Bruhin
362837e98c update_3rdparty: Add fancy-dmg Makefile 2016-04-07 08:53:25 +02:00
Florian Bruhin
ae41a074e8 build_release: Add basic OS X build 2016-04-07 08:53:17 +02:00
Florian Bruhin
2aef8913ec travis: Don't install recommended packages via apt
This passes --no-install-recommends both for Dockerfiles and Travis
itself.
2016-04-06 08:22:41 +02:00
Florian Bruhin
14eb63d9e9 ci/install: Fix updating of pip on Appveyor
Windows can't update pip when using the wrapper-executable.
2016-04-06 07:43:55 +02:00
Florian Bruhin
57cb812219 ci/install: Wait 30s before re-calling apt-get
See #1396.
2016-04-06 07:14:21 +02:00
Florian Bruhin
b70975223f travis: Use sudo -H to call pip
pip apparently needs this to make caching work properly?
See #1396.
2016-04-06 07:13:03 +02:00
Florian Bruhin
812c255379 travis: Use pip install -U to install packages 2016-04-06 07:12:21 +02:00
Florian Bruhin
2ad4fa5c8a ci/install: Upgrade pip on Travis/AppVeyor
See #1396
2016-04-06 07:11:57 +02:00
Florian Bruhin
fb741582ef scripts/dev/ci/install: Retry apt-get if it fails 2016-04-05 12:43:51 +02:00
Florian Bruhin
6c1ee07c85 travis: Self-update npm in eslint env 2016-04-05 07:34:57 +02:00
Florian Bruhin
b9b2297d64 Add minimal C++ testbrowser 2016-04-05 06:56:57 +02:00
Florian Bruhin
f91935c8e8 freeze: Add pkg_resources._vendor.six
Another package added by pkg_resources and not picked up by cx_Freeze...
2016-04-04 21:31:27 +02:00
Florian Bruhin
910adaf097 build_release: Don't call update_3rdparty.main
main tries to parse sys.argv which will fail when called from
build_release when e.g. --asciidoc is given.
2016-04-04 18:32:49 +02:00
Florian Bruhin
9b25f8f91d Add --cheatsheet to src2asciidoc.py 2016-04-01 18:18:41 +02:00
Florian Bruhin
4daf4a8e64 Fix lint 2016-04-01 08:16:28 +02:00
Florian Bruhin
e3a8d00f27 Include cheatsheet images in offline help
Fixes #329.
Note the png's are kind of outdated right now.
2016-04-01 07:42:40 +02:00
Florian Bruhin
dd9145d650 travis: Remove sources.list patching again
Turns out the other mirrors aren't really more stable either.
2016-03-31 21:26:44 +02:00
Florian Bruhin
99263ae351 Rename minimal_webkit_testbrowser.py to testbrowser.py 2016-03-31 06:29:48 +02:00
Florian Bruhin
25555682dc Merge branch 'master' of https://github.com/arsana7/qutebrowser into arsana7-master 2016-03-29 18:59:06 +02:00
Florian Bruhin
606471c4b6 Merge branch 'test_statusbar_url' of https://github.com/craftyguy/qutebrowser into craftyguy-test_statusbar_url 2016-03-29 07:07:45 +02:00
Clayton Craft
8addc19d47 Added option to output in "bookmark" format, clarified some "help" msgs 2016-03-25 13:01:21 -07:00
Clayton Craft
81ce9b818f Fix importer script to output bookmarks in the right format for qutebrowser to use 2016-03-24 18:58:08 -07:00
Clayton Craft
a78644a199 Implement statusbar.url test 2016-03-24 12:57:14 -07:00
Florian Bruhin
cd5cb2f50d Improve check_coverage.py output on failure 2016-03-24 06:51:22 +01:00
Philipp Hansch
a50363ca67 Fix flake8 issues 2016-03-20 13:02:04 +01:00
Philipp Hansch
573660f36d Fix lint issue 2016-03-20 12:08:48 +01:00
Philipp Hansch
8000af1664 Generalize bookmarks import
This change adds `firefox` and `ie` as possible arguments to the importer
script.
2016-03-20 10:49:33 +01:00
Florian Bruhin
abfadb5631 Fix asciidoc2html --no-authors 2016-03-16 07:35:12 +01:00
Florian Bruhin
ee4fa6c118 travis: Use prebuilt docker images 2016-03-16 07:23:17 +01:00
Florian Bruhin
b76886d2ff Ignore --no-authors in asciidoc2html.py
This makes it possible to run "tox -e docs -- --no-args" with {posargs} passed
to both src2asciidoc.py and asciidoc2html.py.
2016-03-16 07:11:40 +01:00
Florian Bruhin
bb2847fee9 Fix argument passing to Travis 2016-03-16 06:52:06 +01:00
Florian Bruhin
0eb12b8fa0 Fix spelling 2016-03-16 06:23:39 +01:00
Florian Bruhin
236572e0f5 Check docs on Travis, take two
We don't regenerate the authors there, as that doesn't work due to Travis
cloning with --depth=50
2016-03-16 06:22:36 +01:00
Florian Bruhin
172611a1b9 Revert "Revert "Check docs on Travis""
This reverts commit cc6d2ddc1d.
2016-03-16 06:19:33 +01:00
Florian Bruhin
cc6d2ddc1d Revert "Check docs on Travis"
This reverts commit f1ec6e1e00.
--depth=50 on Travis messes up author generation
2016-03-15 23:22:19 +01:00
Florian Bruhin
f1ec6e1e00 Check docs on Travis 2016-03-15 22:46:49 +01:00
Florian Bruhin
07d31634c6 Add script to check for doc changes 2016-03-15 22:43:47 +01:00
Florian Bruhin
123de8783f ci/install.py fixup 2016-03-15 19:32:20 +01:00
Florian Bruhin
62db2c724f Try to run Docker on Travis 2016-03-15 19:25:01 +01:00
Florian Bruhin
cc94e7bfee Move ci_install.py to subdir 2016-03-15 19:20:28 +01:00
Florian Bruhin
43a4a6a3e7 Add pkg_resources._vendor.pyparsing when freezing.
This is similar to 85299d293f.
2016-03-02 08:01:47 +01:00
avk
c9bb6d0111 tests for browser.network.pastebin - code refactor 2016-02-22 20:46:22 +01:00
Florian Bruhin
d0e79b2af7 Fix lint 2016-02-19 07:39:17 +01:00
Florian Bruhin
0b362e76ea Move pylint plugins to an installed package.
This means we can now run things like running pylint --version without having
to set PYTHONPATH correctly now.

When using skip_install=true, the plugins wouldn't work as they need to import
qutebrowser.

We have to keep setting PYTHONPATH in run_pylint_on_tests.py, otherwise we get
this error I don't quite understand:

    F:  1, 0: error while code parsing: Unable to load file
    '/home/florian/proj/qutebrowser/git/__init__.py' ([Errno 2] No such
    file or directory: '...') (parse-error)
2016-02-19 07:15:09 +01:00
Florian Bruhin
67b9904772 Include pytest-xvfb properly in frozen tests 2016-02-19 06:52:19 +01:00
Florian Bruhin
504bf6eb3b Remove xvfbwrapper from freeze_tests.py. 2016-02-17 07:45:36 +01:00
Florian Bruhin
07492db9fe Merge branch 'contributing-toxhelp' of https://github.com/flv0/qutebrowser into flv0-contributing-toxhelp 2016-02-12 06:43:10 +01:00
Florian Bruhin
5b66d81f7d Include pstats for frozen tests. 2016-02-11 08:26:31 +01:00
Florian Bruhin
6d11e9ffd8 Fix lint. 2016-02-11 07:17:00 +01:00
Florian Bruhin
45935c86af Rewrite run_profile script.
There's now --profile-tool to select between various tools, a new
--profile-file option, and it uses argparse.
2016-02-11 06:48:16 +01:00
Patric Schmitz
5878cd37fa add CONTRIBUTING to index and asciidoc2html.py 2016-02-10 18:37:46 +01:00
Florian Bruhin
1a42bae627 ci_install: Cleanup, improve messages.
This cleans up the whole script, and outputs nicer folded messages.
2016-02-05 09:24:39 +01:00
Florian Bruhin
41f82b2ad4 travis: Avoid using the default GCE mirror.
We patch sources.list to use the US loudbalancer instead of the hardcoded GCE
mirror which Travis uses by default - because that seems to be quite unstable.
2016-02-05 09:23:52 +01:00
Florian Bruhin
79f83a033d Add a fake clipboard for tests
There are a lot of problems and flakiness with using a real clipboard.

Instead we now have a :debug-set-fake-clipboard command to set a text, and use
logging when getting the contents.

Fixes #1285.
2016-02-03 20:27:11 +01:00
Florian Bruhin
4103e7eba2 Revert "update_3rdparty: add docstring to main()"
This reverts commit 90e88ce0d0.
2016-02-01 20:09:17 +01:00
Florian Bruhin
7be296333a Merge branch 'pdfjs' of https://github.com/Kingdread/qutebrowser into Kingdread-pdfjs 2016-02-01 20:07:56 +01:00
Florian Bruhin
7a268a41f6 pylint: Don't require docstring for main() funcs. 2016-02-01 20:06:49 +01:00
Daniel Schadt
90e88ce0d0 update_3rdparty: add docstring to main() 2016-02-01 18:14:24 +01:00
Daniel Schadt
63f0171d30 update_3rdparty: add option for pdfjs version
This way we can instruct update_3rdparty to download a specific version
of pdfjs, e.g. to make debugging easier or to match the version of a
system package.

Syntax:
update_3rdparty.py -p 1.2.109
or
update_3rdparty.py --pdfjs=1.2.109

If the command line argument is not given, the script will automatically
download the latest release.
2016-02-01 17:46:16 +01:00
Florian Bruhin
0e6c6d3750 Revert "ci_install: Pin virtualenv to 14.0.3 on Windows."
This reverts commit ec214f4897.
Fixed upstream in virtualenv 14.0.5.
2016-02-01 08:43:42 +01:00
Florian Bruhin
ec214f4897 ci_install: Pin virtualenv to 14.0.3 on Windows.
WORKAROUND for https://github.com/pypa/virtualenv/issues/858
2016-02-01 07:29:41 +01:00
Florian Bruhin
e9662b71f0 Move pytest arguments to pytest.ini.
Closes #1260.
2016-01-24 21:10:22 +01:00
Florian Bruhin
95fe54f010 Avoid running coverage when it's unneeded.
Unfortunately running coverage means our tests need more than a minute longer
to run.

We still run it in the following scenarios:
    - Full 'tox' run
    - On Travis CI on Linux
    - On the buildbot on Archlinux

But not anymore in the following scenarios:
    - When running 'tox -e py35' (or py34)
    - On Travis CI on OS X
    - On AppVeyor
    - On the buildbot except on Archlinux
2016-01-24 20:17:28 +01:00
Florian Bruhin
85299d293f Add pkg_resources._vendor.packaging to freeze.py.
Workaround for https://bitbucket.org/anthony_tuininga/cx_freeze/issues/175/
Also see https://github.com/pyinstaller/pyinstaller/issues/1773

This hopefully fixes AppVeyor builds.
2016-01-24 00:30:26 +01:00
Florian Bruhin
7fa0dc68bf flake8: Add flake8-pep3101 plugin.
Checks for old string formatting.
https://pypi.python.org/pypi/flake8-pep3101/
2016-01-22 19:40:10 +01:00
Florian Bruhin
d5d4e42c64 ci_install: Update Python3 for flake8 env. 2016-01-22 17:33:57 +01:00
Florian Bruhin
af0067526b ci_install: Show Python version. 2016-01-22 17:33:57 +01:00
Florian Bruhin
70cd18fc98 100% coverage for mainwindow/statusbar/prompt.py. 2016-01-11 07:14:51 +01:00
Florian Bruhin
5ddc94bc8d Whitelist prompt.py for 100% coverage check.
It has 100% due to integration tests, but no unit tests yet.
2016-01-10 23:22:44 +01:00
Florian Bruhin
8acbdda00e Don't hide stderr in link_pyqt.py.
We're just hiding useful debug information this way.
2016-01-05 19:17:56 +01:00
Florian Bruhin
2ccb4342a4 Merge branch 'Kingdread-pdfjs' 2016-01-05 19:12:57 +01:00
Florian Bruhin
e603470260 Fix asciidoc2html on Windows.
Windows needs the SystemRoot environment variable set to initialize the crypto
API, what running Python in a subprocess does.

However, we did override the whole environment instead of extending it, which
means this broke on Windows when calling asciidoc:

    Traceback (most recent call last):
      File "C:\asciidoc-8.6.9\asciidoc.py", line 9, in <module>
        import sys, os, re, time, traceback, tempfile, subprocess, codecs, locale, unicodedata, copy
      File "C:\Python27\lib\tempfile.py", line 35, in <module>
        from random import Random as _Random
      File "C:\Python27\lib\random.py", line 885, in <module>
        _inst = Random()
      File "C:\Python27\lib\random.py", line 97, in __init__
        self.seed(x)
      File "C:\Python27\lib\random.py", line 113, in seed
        a = long(_hexlify(_urandom(2500)), 16)
    WindowsError: [Error -2146893795] Provider DLL failed to initialize correctly
2016-01-05 08:00:35 +01:00
Florian Bruhin
5b68092277 Download pdfjs in build_release.py.
freeze.py now optionally includes pdfjs if it's present. This means we don't
need to download it every time to run frozen tests, but we can include it in
build_release.py when building a windows package.
2016-01-05 07:27:58 +01:00
Florian Bruhin
e05bc20885 Revert "Call update_3rdparty before freezing"
This reverts commit 384a9ad923.
2016-01-05 07:22:26 +01:00
Florian Bruhin
a97ba9aa09 Merge branch 'pdfjs' of https://github.com/Kingdread/qutebrowser into Kingdread-pdfjs 2016-01-05 07:21:26 +01:00
Florian Bruhin
814e6f5959 Fix lint. 2016-01-05 07:16:39 +01:00
Florian Bruhin
eefc94fb4d Fix build_release.py with inexistent dist-dir. 2016-01-05 07:14:11 +01:00
Florian Bruhin
8ab0b5b4ac Use build_release.py to build sdist on Linux.
See #1091.
2016-01-05 06:54:37 +01:00
Florian Bruhin
8d63f2bf93 www: symlink quickstart.html correctly.
Fixes #1203.
2016-01-04 22:51:01 +01:00
Florian Bruhin
a5f2ac5f03 Adjust copyright years. 2016-01-04 07:12:39 +01:00
Daniel Schadt
be0eb0b1cd Add pdfjs.is_available to vulture whitelist
vulture reports it as a false-positive, it's used in the tests but not
picked up by vulture.
2015-12-20 20:08:24 +01:00
Daniel Schadt
49ed04715e Remove unused tempfile import 2015-12-20 19:24:41 +01:00
Daniel Schadt
a072cf0175 Fix update_3rdparty on windows
You cannot open a file twice on windows, so the call to
urllib.request.urlretrieve was invalid, since we already opened the
temporary file. urlretrieve without a filename will automatically create
and return a temp-file, so we're fine.
2015-12-20 19:24:41 +01:00
Daniel Schadt
384a9ad923 Call update_3rdparty before freezing 2015-12-20 19:24:41 +01:00
Daniel Schadt
c3f2cb02c8 pdfjs: adjust path in scripts/dev/misc_checks.py 2015-12-20 19:24:41 +01:00
Daniel Schadt
d7d577b1fa Fix pep8/pylint 2015-12-20 19:24:41 +01:00
Daniel Schadt
0095b72e03 Update pdfjs path in freeze.py 2015-12-20 19:24:41 +01:00
Daniel Schadt
ef85d1af4c Move pdfjs and use original files
* No modified pdfjs installation needed
-> Groundwork for using a system-wide installation

* Script update_3rdparty.py to download and upack the latest pdfjs
  release
2015-12-20 19:24:41 +01:00
Daniel Schadt
60b9d7e6c3 Fix lints 2015-12-20 19:24:41 +01:00
Daniel Schadt
1882fb6006 Add pdf.js in frozen distribution 2015-12-20 19:24:41 +01:00
Florian Bruhin
f342f129c6 Refactor how use_color is set in scripts/utils. 2015-12-02 18:14:34 +01:00
Florian Bruhin
eff0e4c7cc pylint: Enable useless-suppression globally.
We deactivate it locally where needed, i.e. where we are sure it's some
platform-specific thing.
2015-12-01 23:01:09 +01:00
Florian Bruhin
109984c96e pylint: Check attr-defined-outside-init for tests. 2015-12-01 22:41:16 +01:00
Florian Bruhin
788a096150 pylint: Ignore import-error globally for tests. 2015-12-01 22:03:59 +01:00
Florian Bruhin
150a83d8f4 pylint: Remove unneeded supressions. 2015-12-01 22:03:58 +01:00
Florian Bruhin
81f522336f Do PYTHONPATH shenanigans in run_pylint_on_tests.
If we do it in tox.ini, there are two drawbacks:

- We have more stuff in PYTHONPATH even if we don't when actually using
  qutebrowser.
- The separator is platform specific, so we can't easily do this in a portable
  way in tox.ini.
2015-12-01 08:07:42 +01:00
Florian Bruhin
9cce8fe825 Adjust vulture whitelist for pylint changes. 2015-12-01 07:48:33 +01:00
Florian Bruhin
6f9b02741a Switch from map() to list comprehensions. 2015-12-01 07:16:32 +01:00
Florian Bruhin
101f81844c pylint: Adjust custom checkers for astroid 1.4.
Otherwise we'd run into https://bitbucket.org/logilab/pylint/issues/711
2015-12-01 07:10:39 +01:00
Florian Bruhin
a9de97968d Make pylint shut up about ua_fetch.py. 2015-11-30 07:12:18 +01:00
Florian Bruhin
2ba55a0e77 Split generate_settings in src2asciidoc. 2015-11-30 07:11:03 +01:00
Florian Bruhin
f577da9a6b Disable App Nap on OS X on Travis. Fixes #1143. 2015-11-27 17:50:19 +01:00
Florian Bruhin
0d60ec43ed Regenerate docs. 2015-11-23 13:26:32 +01:00
Florian Bruhin
16e1a65448 Merge branch 'download-page' of https://github.com/Kingdread/qutebrowser into Kingdread-download-page 2015-11-23 13:16:16 +01:00
Florian Bruhin
049102c644 Regenerate authors. 2015-11-23 11:24:40 +01:00
meles5
401f71236d pylint: disable too-many-statements 2015-11-20 21:53:28 +01:00
meles5
b9240924d2 Seperated into two lines 2015-11-20 21:39:17 +01:00
meles5
d9f1699a3b Improved website titles 2015-11-20 21:12:06 +01:00
Daniel Schadt
fe1c8ee4e8 Also add cherrypy.wsgiserver.wsgiserver3 to freeze 2015-11-20 15:27:17 +01:00
Daniel Schadt
cb40b1020c Add cherrypy.wsgiserver to frozen tests 2015-11-20 14:00:17 +01:00
Florian Bruhin
271cb47f87 Merge branch 'netrc' of https://github.com/Konubinix/qutebrowser into Konubinix-netrc 2015-11-18 20:38:57 +01:00
Daniel Schadt
3438a45b19 Merge branch 'master' into download-page 2015-11-18 19:27:26 +01:00
Florian Bruhin
202fc8a5bd Only run codecov once.
Otherwise coverage diffs make no sense...

This reverts commit daaa15396c.
2015-11-18 17:47:26 +01:00
Samuel Loury
0298fcc841 Use credentials from netrc when available 2015-11-18 16:44:45 +01:00
Florian Bruhin
a845bf22ff ci_install: Clean up PyQt URL. 2015-11-18 08:28:35 +01:00
Florian Bruhin
3251bd8419 doc: Merge "error800"/"Error 800" in author list. 2015-11-18 08:12:02 +01:00
Florian Bruhin
dcfa73cf91 AppVeyor: Use PyQt 5.5.1. 2015-11-18 08:08:40 +01:00
Florian Bruhin
89e3c2a703 Fix lint. 2015-11-18 07:43:10 +01:00
Florian Bruhin
b735d079d5 Merge branch 'www' 2015-11-18 07:02:40 +01:00
Florian Bruhin
7239f7bb68 www: Don't build unneeded files. 2015-11-18 06:54:59 +01:00
Florian Bruhin
98fbdde846 www: Remove author line/asciidoc vars from output. 2015-11-18 06:51:46 +01:00
Florian Bruhin
244d86c85a www: Make script work if output path exists. 2015-11-18 06:41:40 +01:00
Florian Bruhin
ad5988513b Fix lint. 2015-11-17 20:28:27 +01:00
Florian Bruhin
0ccd19f980 Fix lint. 2015-11-17 20:10:53 +01:00
Florian Bruhin
ea5484c3a2 Fix nitpicks. 2015-11-17 19:46:24 +01:00
Florian Bruhin
f20ffca540 Merge branch 'issue923' of https://github.com/lamarpavel/qutebrowser into lamarpavel-issue923 2015-11-17 19:43:35 +01:00
Florian Bruhin
4b531d142b Regenerate authors. 2015-11-17 19:30:51 +01:00
Lamar Pavel
d745819715 Improve script to print entries grouped by browser
The ua_fetch.py has been re-written entirely to find specific entries for
each browser based on diversity rather than sole popularity. The output
is now formatted to print the entries for each browser grouped together.
2015-11-14 15:57:24 +01:00
Florian Bruhin
9607fae935 Skip check_coverage.py with --lf. 2015-11-13 22:43:12 +01:00
Florian Bruhin
1da7996c3b Style fixes. 2015-11-13 22:27:41 +01:00
Florian Bruhin
256352024b Fix lint. 2015-11-11 22:39:17 +01:00
Florian Bruhin
ad8c9988f0 Fix lint. 2015-11-11 22:23:43 +01:00
Florian Bruhin
f0083adfb5 Remove unused import. 2015-11-11 21:14:26 +01:00
Florian Bruhin
15b77bf2e9 Fix catchlog move in run_frozen_tests.py. 2015-11-11 21:13:48 +01:00
Florian Bruhin
e25ae49c0e Use os.path.commonprefix to get common path.
os.path.commonpath is only available on Python 3.5.
2015-11-11 21:11:14 +01:00
Florian Bruhin
3680f01576 Switch to pytest 2.8.
Closes #1077.

There were two issues:

- Paths for coverage.py suddenly were absolute instead of relative, so we strip
  the common base part if that happens.

  /home/florian/proj/qutebrowser/git/qutebrowser/browser/cookies.py has 100%
  coverage but is not in perfect_files!
  /home/florian/proj/qutebrowser/git/qutebrowser/browser/http.py has 100%
  coverage but is not in perfect_files!
  [...]

- There was an io.UnsupportedOperationError in test_check_coverage.py because
  of pytest-faulthandler, so we just don't load that in the subprocess.
2015-11-11 20:57:47 +01:00
Florian Bruhin
7cddd52b2d Merge branch 'download-page' of https://github.com/Kingdread/qutebrowser into Kingdread-download-page 2015-11-10 22:39:07 +01:00
Florian Bruhin
250f0e7410 Merge branch 'test-browser-cache-more' of https://github.com/lamarpavel/qutebrowser into lamarpavel-test-browser-cache-more 2015-11-10 18:57:28 +01:00
Lamar Pavel
aaf62fc6d0 Add cache tests to perfectly covered files. 2015-11-10 03:49:18 +01:00
Florian Bruhin
0162583444 Fix check_coverage.py return value. 2015-11-09 20:07:08 +01:00
Daniel
c2218f51cd Add mhtml.last_used_directory to vulture whitelist 2015-11-09 17:01:08 +01:00
Florian Bruhin
ac10fbc095 Handle qute:... handlers in run_vulture. 2015-11-04 17:45:16 +01:00
meles5
6d6ef1e386 tox fixes 2015-10-30 14:52:09 +01:00
meles5
7cb462ff82 Improved the folder-copy function 2015-10-29 16:52:38 +01:00
meles5
1488f59d8f Close file 2015-10-29 16:33:20 +01:00
meles5
f807842a52 Improved code style 2015-10-29 16:30:25 +01:00
meles5
8600acddb1 Moved everything into one block and used with to open files 2015-10-29 15:41:57 +01:00
meles5
8de3f8d487 Improved script 2015-10-27 22:24:28 +01:00
Florian Bruhin
8004508b3c wip 2015-10-27 17:57:06 +01:00
Florian Bruhin
9b104b0af7 ci_install: Update installed packages. 2015-10-27 17:54:23 +01:00
Florian Bruhin
fc573963f4 Fix lint. 2015-10-26 08:43:55 +01:00
Florian Bruhin
4e48e3d725 ci_install: Only install codecov when needed. 2015-10-26 07:37:20 +01:00
Florian Bruhin
cf623f0d8d ci_install: Also install codecov on OS X. 2015-10-26 07:34:56 +01:00
Florian Bruhin
14334dce21 Don't remove coverage.xml on CI. 2015-10-23 19:14:46 +02:00
Florian Bruhin
67a0a6b944 Try codecov. 2015-10-23 19:14:46 +02:00
Florian Bruhin
daf81f5fcd www: Working website generation. 2015-10-21 07:31:47 +02:00
Florian Bruhin
f6fffee9d3 www: Keep modified sources if building failed. 2015-10-21 07:19:04 +02:00
Florian Bruhin
b12cfa9d05 Fix filters in run_vulture.py. 2015-10-20 23:31:46 +02:00
Florian Bruhin
db350719d5 Make run_vulture.py more modular. 2015-10-20 23:25:50 +02:00
Florian Bruhin
4f4dfb1e31 Add arguments to run_vulture.py. 2015-10-20 22:48:01 +02:00
Florian Bruhin
0187dd6ac6 Add get_coredumpct_traces script. 2015-10-20 21:26:53 +02:00
Florian Bruhin
7d026efbfb Revert "travis: Patch PyQt on OS X."
This reverts commit 5fce514168.
2015-10-20 18:14:25 +02:00
Florian Bruhin
e03068ed84 Start adding website features to asciidoc2html. 2015-10-20 18:13:31 +02:00
Lamar Pavel
7703fa217b Add some UAs manually for diversity
The automatically fetched list includes popular user-agents but does not
guarantee any kind of diversity, so there are now a few statically
printed UAs from mobile browsers.
2015-10-20 17:28:22 +02:00
Florian Bruhin
71a150af22 Refactor asciidoc2html.py. 2015-10-20 06:54:43 +02:00
Lamar Pavel
332df99a77 Add docstring to new script 2015-10-20 03:28:27 +02:00
Lamar Pavel
6ebb37aa17 Update UA list and add script to fetch UAs
The script is based on a gist posted by @averrin and has been modified
to print the output according to the format expected by qutebrowser,
ready to be pasted into configtypes.py.
2015-10-20 02:52:11 +02:00
Florian Bruhin
5fce514168 travis: Patch PyQt on OS X.
This is to circumvent https://github.com/Homebrew/homebrew/issues/45114
The build takes a lot longer now, but at least it works.
2015-10-19 17:29:01 +02:00
Florian Bruhin
4bb1a37cf1 Rename travis fold name. 2015-10-15 22:22:28 +02:00
Florian Bruhin
309be9b057 Use travis_fold on ci_install.py. 2015-10-15 21:46:24 +02:00
Florian Bruhin
67ecd93326 Spell-check committing and existent. 2015-10-14 06:56:13 +02:00
Florian Bruhin
ffab11c871 Install tox for eslint on Travis. 2015-10-08 06:24:31 +02:00
Florian Bruhin
0960f229f0 Get rid of ci_run.py again. 2015-10-07 23:12:33 +02:00
Florian Bruhin
0845671165 Start Xvfb for CI from tests. 2015-10-07 23:05:39 +02:00
Florian Bruhin
94d88e280b tox: Add pytest-sugar.
Nicer test output FTW!
2015-10-07 22:13:22 +02:00
Florian Bruhin
2918f33569 Include xvfbwrapper when freezing tests. 2015-10-07 17:06:19 +02:00
Florian Bruhin
7e2ae9f39f Also install nodejs-legacy on Travis.
This is needed to get /usr/bin/node which npm/eslint seem to use.
2015-10-06 07:32:22 +02:00
Florian Bruhin
439c00f32a Run eslint on Travis.
See #773.
2015-10-06 07:10:32 +02:00
Florian Bruhin
d094a495cc Avoid apt-get on Travis if possible.
This should speed up builds as no apt-get update is needed.
2015-10-06 07:10:32 +02:00
Florian Bruhin
d9018fed14 Don't install python-dev packages on Travis.
Those don't seem to be needed anymore.
2015-10-06 07:10:32 +02:00
Florian Bruhin
aa9498bb41 Add separate testenv for vulture. 2015-10-06 07:10:32 +02:00
Florian Bruhin
4b2e0470c8 Parallelize test runs on Travis. 2015-10-06 07:10:32 +02:00
Florian Bruhin
04619e0f81 Run Python 3.5 on OS X and get rid of Xvfb wrapper. 2015-10-06 07:10:32 +02:00
Florian Bruhin
54557fee20 Fix lint. 2015-10-05 06:53:56 +02:00
Florian Bruhin
6293842c18 Run vulture in misc testenv.
Closes #973.
2015-10-04 23:04:09 +02:00
Florian Bruhin
f4fdcbdd71 Add a --check-all to check_coverage.py. 2015-10-04 20:35:24 +02:00
Florian Bruhin
54ae1582af Make check_coverage work when called with a file. 2015-10-04 19:36:26 +02:00
Florian Bruhin
d229e90724 Fix some splelling mistakes. 2015-10-04 15:41:42 +02:00
Florian Bruhin
0b4cee420f Merge same authors and regenerate authors. 2015-10-01 18:25:46 +02:00
Florian Bruhin
866017f9c1 Pass --verbose to Homebrew.
The homebrew progress bars cause Travis to bail out because the 4MB maximum log
size was reached. Ironically, that does not happen with --verbose.
2015-09-29 06:54:14 +02:00
Florian Bruhin
a6ceab5dbc Fix pip executable name for OS X. 2015-09-24 08:53:20 +02:00
Florian Bruhin
311ae78bc3 Adjust check_coverage.py for coverage 4.0. 2015-09-21 07:42:10 +02:00
Florian Bruhin
5ba7b5cf0f Fix lint. 2015-09-19 22:03:56 +02:00
Florian Bruhin
957116658d Clean up freeze.py. 2015-09-18 22:33:50 +02:00
Florian Bruhin
7d6c39d64b Run frozen smoke test via pytest. 2015-09-18 22:23:18 +02:00
Florian Bruhin
a8a2fd2e7d Rename webserver.py to webserver_sub.py. 2015-09-18 20:08:31 +02:00
Florian Bruhin
2cb1f9226a Make httpbin tests run when frozen. 2015-09-17 21:51:09 +02:00
Florian Bruhin
d5baed5e83 Merge branch 'cookies_tests' of https://github.com/acogneau/qutebrowser into acogneau-cookies_tests 2015-09-16 22:58:28 +02:00
Florian Bruhin
2a4cd02704 100% coverage for misc.ipc. 2015-09-04 06:58:46 +02:00
Alexander Cogneau
418328e61b Cookie tests done 2015-09-03 18:17:39 +02:00
Florian Bruhin
1fe1200b71 Install libpython3.4-dev on Travis. 2015-09-01 08:54:53 +02:00
Florian Bruhin
0c3ee46fe0 Merge branch 'autoupdate_tests' of https://github.com/acogneau/qutebrowser into acogneau-autoupdate_tests 2015-09-01 08:48:52 +02:00
Florian Bruhin
9e6bcb97ca Output coverage to coverage.xml.
This avoids https://bitbucket.org/ned/coveragepy/issues/400/
2015-08-31 07:41:06 +02:00
Alexander Cogneau
ee77951e66 PEP8 fixes 2015-08-31 01:25:42 +02:00
Florian Bruhin
4fb3114af8 Merge branch 'cmdhistory_tests' of git://github.com/acogneau/qutebrowser into acogneau-cmdhistory_tests 2015-08-27 06:18:30 +02:00
Florian Bruhin
d3e9ffec65 Revert "Revert "Add basekeyparser.py to PERFECT_FILES""
This reverts commit 35cbee41d6.
2015-08-26 20:38:56 +02:00
Florian Bruhin
2750c6ab5a Make check_coverage.py more testable and add tests. 2015-08-26 20:08:40 +02:00
Florian Bruhin
ae2ee68b85 Fix branch checking in check_coverage.py. 2015-08-26 17:51:51 +02:00
Alexander Cogneau
3a4069667a Remove test functions out of class 2015-08-26 12:07:47 +02:00
Alexander Cogneau
933d683ff4 Add cmdhistory.py to PERFECT_FILES 2015-08-26 01:20:57 +02:00
Florian Bruhin
f3b4d0ce38 Ignore htmlcov dir for spellchecks. 2015-08-25 22:09:15 +02:00
Florian Bruhin
abba3215f2 Add missing docstring. 2015-08-25 21:17:04 +02:00
Florian Bruhin
5eed9e55ad check_coverage.py: Always delete .coverage.xml. 2015-08-25 17:59:10 +02:00
Florian Bruhin
7ee4d2f2c9 100% test coverage for commands.argparser. 2015-08-20 07:14:25 +02:00
Florian Bruhin
5a975d1b90 100% test coverage for config.style. 2015-08-19 20:43:06 +02:00
Florian Bruhin
685bbaae6d 100% test coverage for misc.editor. 2015-08-19 09:34:44 +02:00
Florian Bruhin
aca082ce83 100% test coverage for misc.guiprocess. 2015-08-19 07:57:02 +02:00
Florian Bruhin
1a61e53daa 100% test coverage for misc.checkpyver. 2015-08-19 05:58:52 +02:00
Florian Bruhin
5d013a67a7 100% coverage for misc.msgbox. 2015-08-17 23:18:52 +02:00
Florian Bruhin
9892c10f49 100% test coverage for utils.error. 2015-08-17 23:18:39 +02:00
Florian Bruhin
9cd2f6ba24 100% test coverage for commands.cmdutils. 2015-08-17 21:13:13 +02:00
Florian Bruhin
00d81a74c2 100% coverage for browser.network.networkreply. 2015-08-17 07:16:33 +02:00
Florian Bruhin
dff4c37f54 100% test coverage for browser/signalfilter.py. 2015-08-16 23:16:13 +02:00
Florian Bruhin
641c09c011 Don't skip freezing qutebrowser/html for tests. 2015-08-16 21:48:41 +02:00
Florian Bruhin
a463811940 Include BeautifulSoup4 in freeze_tests.py. 2015-08-16 21:41:30 +02:00
Florian Bruhin
ffe6411a5a Fix asciidoc2html path in build_release.py. 2015-08-16 21:30:12 +02:00
Florian Bruhin
6b19a7b1fa Also include img directory when freezing. 2015-08-16 20:59:20 +02:00
Florian Bruhin
fb1cffd158 Merge branch 'feature/directory-browser' of git://github.com/antoyo/qutebrowser into dirbrowser 2015-08-16 18:27:05 +02:00
Florian Bruhin
402f9be7e9 Fix lint. 2015-08-16 15:40:26 +02:00
Florian Bruhin
9eca7ae556 appveyor: Fix Python path in registry.
This makes PyQt pick up C:\Python34 correctly so we can use the newer AppVeyor
image again.

See https://github.com/appveyor/ci/issues/363.
2015-08-16 11:14:40 +02:00
Florian Bruhin
952893d984 appveyor: Update to PyQt 5.5 and self-host it. 2015-08-16 11:13:05 +02:00
Florian Bruhin
f2c8ff8aa5 Remove .exe. 2015-08-15 19:19:03 +02:00
Florian Bruhin
36a9b816a7 *Really* fix path in ci_install.py 2015-08-15 19:08:22 +02:00
Florian Bruhin
5d0ffcd14d Whoops. 2015-08-14 07:56:51 +02:00
Florian Bruhin
2405bf1984 ci_install: Fix path. 2015-08-14 07:42:51 +02:00
Florian Bruhin
fb48059ae9 ci_install: Don't use os.system. 2015-08-14 07:17:53 +02:00
Florian Bruhin
515c9611c4 ci_install: Hopefully fix checking setup. 2015-08-14 07:14:13 +02:00
Florian Bruhin
3bfcfaba4c Fix lint. 2015-08-14 06:59:36 +02:00
Florian Bruhin
4dee427f0e ci_install: Check setup after installing. 2015-08-14 06:55:31 +02:00
Florian Bruhin
bbb581eaf8 100% coverage for browser.network.filescheme. 2015-08-13 21:56:22 +02:00
Florian Bruhin
5a1663c584 100% coverage for mainwindow.statusbar.textbase. 2015-08-12 07:40:45 +02:00
Florian Bruhin
927cf84e14 100% test coverage for config.textwrapper. 2015-08-12 07:01:21 +02:00
Florian Bruhin
a6d09b8cc9 100% coverage for browser.network.schemehandler. 2015-08-12 06:53:32 +02:00
Florian Bruhin
da9cb88c81 pylint: Disable protected-access for tests. 2015-08-12 06:44:33 +02:00
Florian Bruhin
83a4451f93 Skip coverage checks when tests are filtered. 2015-08-12 06:42:05 +02:00
Florian Bruhin
cf45d97046 100% test coverage for utils.jinja. 2015-08-12 06:25:05 +02:00
Florian Bruhin
2d8aaecd65 100% coverage for utils.debug. 2015-08-11 17:11:00 +02:00
Florian Bruhin
c8679d6544 100% coverage for browser.webelem. 2015-08-10 19:37:16 +02:00
Florian Bruhin
a28b0c3386 Remove .coverage.ini in check_coverage.py. 2015-08-08 22:55:37 +02:00
Florian Bruhin
3179455e69 Reorganize tox.ini.
- The environment to run unittests is now called py34 as that's the common
  thing used, and will also allow us to run the tests with Python 3.5.
- The default tests now also run coverage.py and do a coverage check (on
  Linux).
- The smoke tests are now part of the default environment.
2015-08-08 22:33:29 +02:00
Florian Bruhin
d23096f898 Also check opposite condition in check_coverage.py. 2015-08-02 22:16:03 +02:00
Florian Bruhin
7d284fa575 pylint: Disable missing-docstring for tests. 2015-08-02 20:38:13 +02:00
Florian Bruhin
e5056e1c43 100% coverage for mainwindow.statusbar.tabindex. 2015-08-02 20:34:37 +02:00
Florian Bruhin
6c0f523c89 100% coverage for browser.http and browser.rfc6266. 2015-08-02 19:52:43 +02:00
Florian Bruhin
1d4bb8d8da 100% coverage for misc.split. 2015-08-02 13:42:01 +02:00
Florian Bruhin
d5888fea89 100% coverage for mainwindow.statusbar.progress. 2015-08-02 01:49:33 +02:00
Florian Bruhin
f21cffd9b8 100% coverage for mainwindow.statusbar.percentage. 2015-08-02 01:45:19 +02:00
Florian Bruhin
e59f533f9d Add statusbar.keystring to 100% coverage modules. 2015-08-02 01:34:40 +02:00
Florian Bruhin
9db0e03f05 Add some tests for config.configexc. 2015-08-02 01:31:43 +02:00
Florian Bruhin
e94e90baec Add some tests for config.configdata. 2015-08-02 00:59:13 +02:00
Florian Bruhin
26f6bb7d0d Rewrite browser.test_tabhistory.py for pytest. 2015-08-02 00:34:04 +02:00
Florian Bruhin
907a4b0e5e Add path assertion to check_coverage.py.
https://bitbucket.org/ned/coveragepy/issues/235 confuses me - maybe the XML
format will change in the future to not contain the full filename? To make
sure I'll add this assertion, then I'll notice.
2015-07-29 17:31:26 +02:00
Florian Bruhin
b03fea26c2 Add hypothesis to frozen tests. 2015-07-24 18:43:08 +02:00
Florian Bruhin
fd5a89dccd scripts: Use runcall in run_profile.py. 2015-07-24 15:01:18 +02:00
Florian Bruhin
d805e2d71e Don't use lxml for check_coverage.py.
See #792.
2015-07-24 14:42:18 +02:00
Florian Bruhin
7f2abd1a46 tests: Enforce 100% coverage for perfect modules.
Fixes #792.
2015-07-24 14:04:40 +02:00
Florian Bruhin
60b6652006 Better output on errors. 2015-07-14 16:18:34 +02:00
Florian Bruhin
03383c48eb Use imported file paths in link_pyqt.py.
See #804.
2015-07-14 16:18:34 +02:00
Florian Bruhin
c310156dde Fix lint. 2015-07-13 18:11:35 +02:00
Florian Bruhin
a3776e361b minimal_webkit_testbrowser: Add WebEngine support. 2015-07-13 17:39:09 +02:00
Florian Bruhin
3a95cd470a minimal_webkit_testbrowser: Add switch for plugins. 2015-07-10 21:36:53 +02:00
Florian Bruhin
55cf470436 minimal_webkit_testbrowser: Add some output. 2015-07-10 21:34:33 +02:00
Florian Bruhin
0be2192eab minimal_webkit_testbrowser: Use QUrl.fromUserInput. 2015-07-10 21:32:36 +02:00
Florian Bruhin
0bdcf2910a minimal_webkit_testbrowser: Use argparse. 2015-07-10 21:32:00 +02:00
Florian Bruhin
d232437105 Update to beautifulsoup 4.4.0.
Upstream changelog:

Especially important changes:

* Added a warning when you instantiate a BeautifulSoup object without
  explicitly naming a parser. [bug=1398866]

* __repr__ now returns an ASCII bytestring in Python 2, and a Unicode
  string in Python 3, instead of a UTF8-encoded bytestring in both
  versions. In Python 3, __str__ now returns a Unicode string instead
  of a bytestring. [bug=1420131]

* The `text` argument to the find_* methods is now called `string`,
  which is more accurate. `text` still works, but `string` is the
  argument described in the documentation. `text` may eventually
  change its meaning, but not for a very long time. [bug=1366856]

* Changed the way soup objects work under copy.copy(). Copying a
  NavigableString or a Tag will give you a new NavigableString that's
  equal to the old one but not connected to the parse tree. Patch by
  Martijn Peters. [bug=1307490]

* Started using a standard MIT license. [bug=1294662]

* Added a Chinese translation of the documentation by Delong .w.

New features:

* Introduced the select_one() method, which uses a CSS selector but
  only returns the first match, instead of a list of
  matches. [bug=1349367]

* You can now create a Tag object without specifying a
  TreeBuilder. Patch by Martijn Pieters. [bug=1307471]

* You can now create a NavigableString or a subclass just by invoking
  the constructor. [bug=1294315]

* Added an `exclude_encodings` argument to UnicodeDammit and to the
  Beautiful Soup constructor, which lets you prohibit the detection of
  an encoding that you know is wrong. [bug=1469408]

* The select() method now supports selector grouping. Patch by
  Francisco Canas [bug=1191917]

Bug fixes:

* Fixed yet another problem that caused the html5lib tree builder to
  create a disconnected parse tree. [bug=1237763]

* Force object_was_parsed() to keep the tree intact even when an element
  from later in the document is moved into place. [bug=1430633]

* Fixed yet another bug that caused a disconnected tree when html5lib
  copied an element from one part of the tree to another. [bug=1270611]

* Fixed a bug where Element.extract() could create an infinite loop in
  the remaining tree.

* The select() method can now find tags whose names contain
  dashes. Patch by Francisco Canas. [bug=1276211]

* The select() method can now find tags with attributes whose names
  contain dashes. Patch by Marek Kapolka. [bug=1304007]

* Improved the lxml tree builder's handling of processing
  instructions. [bug=1294645]

* Restored the helpful syntax error that happens when you try to
  import the Python 2 edition of Beautiful Soup under Python
  3. [bug=1213387]

* In Python 3.4 and above, set the new convert_charrefs argument to
  the html.parser constructor to avoid a warning and future
  failures. Patch by Stefano Revera. [bug=1375721]

* The warning when you pass in a filename or URL as markup will now be
  displayed correctly even if the filename or URL is a Unicode
  string. [bug=1268888]

* If the initial <html> tag contains a CDATA list attribute such as
  'class', the html5lib tree builder will now turn its value into a
  list, as it would with any other tag. [bug=1296481]

* Fixed an import error in Python 3.5 caused by the removal of the
  HTMLParseError class. [bug=1420063]

* Improved docstring for encode_contents() and
  decode_contents(). [bug=1441543]

* Fixed a crash in Unicode, Dammit's encoding detector when the name
  of the encoding itself contained invalid bytes. [bug=1360913]

* Improved the exception raised when you call .unwrap() or
  .replace_with() on an element that's not attached to a tree.

* Raise a NotImplementedError whenever an unsupported CSS pseudoclass
  is used in select(). Previously some cases did not result in a
  NotImplementedError.

* It's now possible to pickle a BeautifulSoup object no matter which
  tree builder was used to create it. However, the only tree builder
  that survives the pickling process is the HTMLParserTreeBuilder
  ('html.parser'). If you unpickle a BeautifulSoup object created with
  some other tree builder, soup.builder will be None. [bug=1231545]
2015-07-06 10:49:59 +02:00
Florian Bruhin
7b8490b6c0 Fix 'an user' spelling. 2015-06-29 17:49:19 +02:00
Florian Bruhin
db06eeded5 Fix spelling. 2015-06-29 17:45:56 +02:00
Florian Bruhin
d845ecd7fc Also check for spelling errors in .asciidoc/.js files. 2015-06-29 17:44:36 +02:00
Florian Bruhin
be3f61af62 Move developer scripts to dev/ subfolder.
Closes #783.
2015-06-28 22:31:30 +02:00
Florian Bruhin
b21b4377a8 Add a smoke test to build_release.py. 2015-06-24 00:05:35 +02:00
Florian Bruhin
10b00da1ae Reorder commands in build_release.py.
This should be slightly faster as the venv is only recreated once.
2015-06-23 23:35:20 +02:00
Florian Bruhin
b337cfe4c6 Enforce a 32bit Python in build_release.py. 2015-06-23 23:34:30 +02:00
Florian Bruhin
3dbf3f9e0a Use tox/virtualenv to build Windows packages.
This makes sure we have all needed dependencies installed in the version which
is in requirements.txt.
Fixes #776.
2015-06-23 23:31:28 +02:00
Florian Bruhin
e2c375b874 Add missing docstring for get_build_exe_options(). 2015-06-19 09:40:48 +02:00
Florian Bruhin
fd82587213 Skip documentation when freezing for smoke-frozen. 2015-06-19 09:40:26 +02:00
Florian Bruhin
b0012fd410 Freeze utils/testfile when freezing tests. 2015-06-19 09:40:16 +02:00
Florian Bruhin
894ec7d66a Use a function for build_exe_options in freeze.py. 2015-06-19 09:40:15 +02:00
Florian Bruhin
42b5ee831e Add a unittests-frozen testenv.
See #770.
2015-06-19 09:39:55 +02:00
Florian Bruhin
425a6d33cf Add __name__ == '__main__' block in freeze.py.
freeze.py now gets imported from freeze_tests.py, and shouldn't run its own
setup in that case.
2015-06-19 07:35:01 +02:00
Florian Bruhin
2f59abaf13 Add empty includes=[] to freeze.py.
This makes freeze_tests.py easier.
2015-06-18 22:39:04 +02:00
Florian Bruhin
0d59a1cba8 Include javascript folder when freezing.
See #770.
2015-06-18 21:09:10 +02:00
Florian Bruhin
9bf749643a Fix ci_install.py for Travis on OS X. 2015-06-12 17:06:49 +02:00
Florian Bruhin
f17131f6c2 Change Qt links to point to qt.io. 2015-06-12 16:59:33 +02:00
Florian Bruhin
b1e9ff059a Update for PyQt 5.4.2.
Upstream changelog:

2015-06-11  Phil Thompson  <phil@riverbankcomputing.com>

    * .hgtags:
    Added tag 5.4.2 for changeset 5a34feb6b31d
    [6f80aa2771d3] [tip] <5.4-maint>

    * NEWS:
    Released as v5.4.2.
    [5a34feb6b31d] [5.4.2] <5.4-maint>

    * installers/PyQt5-Qt5-gpl.nsi:
    Fixed a missing image plugin in the Windows installer.
    [29760ab3d5f9] <5.4-maint>

    * Makefile:
    Clean up any extra Mac crap.
    [dcbc92d15a8b] <5.4-maint>

2015-06-07  Phil Thompson  <phil@riverbankcomputing.com>

    * pyuic/uic/Compiler/compiler.py,
    pyuic/uic/Compiler/qobjectcreator.py:
    Make sure all generedt imports are sorted and therefore repeatable.
    [9ad1a251d97b] <5.4-maint>

2015-06-05  Phil Thompson  <phil@riverbankcomputing.com>

    * NEWS, PyQt5.msp:
    Completed the support for Qt v5.4.2.
    [02c99f5affde] <5.4-maint>

    * PyQt5.msp:
    Scanned Qt v5.4.2.
    [7fbd795f8c5e] <5.4-maint>

    * installers/PyQt5-Qt5-gpl.nsi:
    Updated the Windows installer for Qt v5.4.2.
    [74c080b5bdb2] <5.4-maint>

    * PyQt5.msp:
    Added missing /Factory/ annotations from the create() and
    beginCreate() methods of QQmlComponent.
    [56be1a87fd2c] <5.4-maint>

2015-06-02  Phil Thompson  <phil@riverbankcomputing.com>

    * PyQt5.msp:
    Fixed the handling of the value returned by Python re-
    implementations of QSGMaterialShader.attributeNames().
    [cb620297cbc8] <5.4-maint>

2015-05-23  Phil Thompson  <phil@riverbankcomputing.com>

    * lib/configure.py, sphinx/installation.rst:
    Added the --no-python-dbus option to configure.py.
    [df17d3eace7a] <5.4-maint>

2015-05-18  Phil Thompson  <phil@riverbankcomputing.com>

    * pyuic/uic/uiparser.py:
    Fixed another deprecation warning in pyuic.
    [6333c15a9a6b] <5.4-maint>

    * pyuic/uic/driver.py, pyuic/uic/objcreator.py,
    pyuic/uic/port_v2/load_plugin.py, pyuic/uic/port_v3/load_plugin.py:
    Fixed all the deprecation warnings from pyuic.
    [e8f96fbc8cf0] <5.4-maint>

2015-05-08  Phil Thompson  <phil@riverbankcomputing.com>

    * Makefile:
    Fixed the path to SIP on OS/X.
    [39ecf0bc71e1] <5.4-maint>

2015-05-06  Phil Thompson  <phil@riverbankcomputing.com>

    * pyuic/uic/Compiler/qobjectcreator.py,
    pyuic/uic/Loader/qobjectcreator.py, pyuic/uic/icon_cache.py,
    pyuic/uic/objcreator.py:
    Fixed the handling of themed icons by uic.loadUi().
    [506c268c8f43] <5.4-maint>

2015-04-24  Phil Thompson  <phil@riverbankcomputing.com>

    * qpy/QtCore/qpycore_chimera.cpp:
    Handle properties that are objects that are defined in QML.
    [aebd6aab85d4] <5.4-maint>

2015-04-04  Phil Thompson  <phil@riverbankcomputing.com>

    * pyuic/uic/properties.py, pyuic/uic/uiparser.py:
    Fixed pyuic's handling of default margins.
    [6a7e3e6175c8] <5.4-maint>

    * pyuic/uic/properties.py, pyuic/uic/uiparser.py:
    Fixed pyuic's handling of the default spacing.
    [12193d5afbe1] <5.4-maint>

2015-04-03  Phil Thompson  <phil@riverbankcomputing.com>

    * pylupdate/main.cpp:
    pylupdate now saves locations as relative to the .ts file.
    [1757d2e318f6] <5.4-maint>

2015-04-01  Phil Thompson  <phil@riverbankcomputing.com>

    * PyQt5.msp:
    Added QWIDGETSIZE_MAX to QtWidgets.
    [b136fd7c485e] <5.4-maint>

2015-03-25  Phil Thompson  <phil@riverbankcomputing.com>

    * sphinx/static/classic.css, sphinx/static/default.css:
    Fixed the stylesheet.
    [d35996e57f02] <5.4-maint>

2015-03-16  Phil Thompson  <phil@riverbankcomputing.com>

    * PyQt5.msp:
    The GIL is now released for all QImage ctors and methods that might
    block.
    [3fd70eec66b9] <5.4-maint>

    * PyQt5.msp:
    Removed the internal QGraphicsSceneEvent.setWidget().
    [622e5b5ebcfc] <5.4-maint>

2015-03-11  Phil Thompson  <phil@riverbankcomputing.com>

    * installers/PyQt5-Qt5-gpl.nsi:
    Added the OpenGL v2.1 backend to the Windows installer.
    [ca1e4c121c78] <5.4-maint>

    * sphinx/conf.py:
    Updated for sphinx v1.3.
    [1c1cd1eac7ce] <5.4-maint>

    * qpy/QtCore/qsysinfo.sip:
    Added Yosemite and iOS v8.0 to QSysInfo.
    [01d4d1af5961] <5.4-maint>

    * pyuic/uic/uiparser.py:
    pyuic now handles empty zorder elements.
    [a0dcd07b7e72] <5.4-maint>

    * lib/configure.py:
    Added nostrup to the generated .pro file.
    [d6445df281a6] <5.4-maint>

2015-03-01  Phil Thompson  <phil@riverbankcomputing.com>

    * pyuic/uic/uiparser.py:
    pyuic will now ignore spacer items when setting the z-order.
    [28704a096a3a] <5.4-maint>

2015-02-26  Phil Thompson  <phil@riverbankcomputing.com>

    * installers/PyQt5-Qt5-gpl.nsi:
    Installer fix for Qt v5.4.1.
    [0b21a7fa6750] <5.4-maint>:
2015-06-12 13:21:37 +02:00
Florian Bruhin
167faafff2 Fix command parsing for arguments containing _. 2015-06-12 11:42:16 +02:00
Florian Bruhin
90bbe4d1ef Make ci_install.py python2 compatible. 2015-06-11 17:09:17 +02:00
Florian Bruhin
364e13f4c2 Add OS X support for Travis. 2015-06-11 16:36:58 +02:00
Florian Bruhin
a79b07bd94 Rename appveyor_install to ci_install. 2015-06-11 16:15:33 +02:00
Florian Bruhin
68d8900c6c link_pyqt: Support PYTHON environment variable. 2015-06-10 18:35:33 +02:00
Florian Bruhin
ddd343c89c link_pyqt: Be less verbose. 2015-06-10 18:35:33 +02:00
Florian Bruhin
fc15e85811 Add AppVeyor support. 2015-06-10 18:35:33 +02:00
Florian Bruhin
5a73ad0c19 Improve spell-checker case-sensitivity.
This only checks case-insensitively for the first char, so things like
"QMouseEvent" don't trigger the check.
2015-06-07 01:24:02 +02:00
Florian Bruhin
fd75f77108 Fix spell checker to check all files. 2015-06-07 01:24:02 +02:00
Florian Bruhin
015de0e6db misc_checks: Check spelling case-insensitively. 2015-06-05 17:51:33 +02:00
Florian Bruhin
4a909aa028 Use pylint's built-in checker to check for CRLF. 2015-06-04 15:25:36 +02:00
Florian Bruhin
0be0884a5b link_pyqt: Only link/copy files if they changed.
This reduces the output noise a bit and hopefully makes things a bit faster on
Windows.
2015-05-30 23:49:36 +02:00
Florian Bruhin
e48e063c0f src2asciidoc.py: Improve exception handling. 2015-05-30 19:29:37 +02:00
Florian Bruhin
2a269e9cd9 tox: Make sipconfig.py optional in link_pyqt.py.
For some reason sipconfig.py doesn't exist at all on Windows...
2015-05-27 08:10:02 +02:00
Florian Bruhin
1b48dc8749 tox: Also provide sipconfig in link_pyqt.py. 2015-05-27 07:54:25 +02:00
Florian Bruhin
ee0eabc202 scripts: Add --profile-dot to run_profile. 2015-05-21 07:45:20 +02:00
Florian Bruhin
37b431f72f Fix lint. 2015-05-18 22:37:48 +02:00
Florian Bruhin
c00dccfbb2 src2asciidoc: Improve error output on missing count arg. 2015-05-18 22:23:39 +02:00
Florian Bruhin
c91344cdf5 scripts: Add docstring for keytester. 2015-05-16 14:12:16 +02:00
Florian Bruhin
137badc77f Add some more informations to keytester script.
See #658, #420.
2015-05-16 12:57:29 +02:00
Florian Bruhin
ae512f451e Fix lint. 2015-05-12 09:10:02 +02:00
Florian Bruhin
c88393ccfd Add minimal key tester script.
See #658.
2015-05-12 09:03:25 +02:00
Florian Bruhin
7439586334 Move special params to cmdutils.register decorator
See #637.
2015-04-20 19:33:05 +02:00
Florian Bruhin
e5d33a6706 freeze.py: Set bundle_name for OS X.
See #384.
2015-04-13 15:39:31 +02:00
Florian Bruhin
d413aacc19 Add an .icns file for OS X.
See #384.
2015-04-13 15:01:30 +02:00
Florian Bruhin
bd9168fdfe Add qt_menu.nib for freeze.py on OS X. 2015-04-13 14:15:40 +02:00
Florian Bruhin
4547fd2c5d Add an applications shortcut to the .dmg.
See #384.
2015-04-13 12:33:18 +02:00
Florian Bruhin
566ffdbe23 scripts: Fix exe name for non-Windows in freeze.py.
See #384.
2015-04-13 12:25:57 +02:00
Florian Bruhin
425cffc2f7 pylint: Ignore 'undefined-variable' for tests.
It's less than optimal, but disabling it selectively because of
https://bitbucket.org/logilab/pylint/issue/511/ is too annoying.
2015-04-09 07:43:47 +02:00
Raphael Pierzina
ebfcc0a83c Merge remote-tracking branch 'upstream/master' 2015-04-08 23:56:17 +02:00
Florian Bruhin
76651822bd Merge pull request #16 from hackebrot/layout
Adopt test layout to pytest.
2015-04-08 14:03:02 +02:00
Florian Bruhin
b591dedf7f Move FAQ/INSTALL to repo root.
That's where most people probably expect them...
2015-04-07 22:38:51 +02:00
Florian Bruhin
1f39c7782a Add a changelog for released versions.
See #608.
2015-04-07 22:35:35 +02:00
Florian Bruhin
a480b297ca src2asciidoc: Split _get_command_doc. 2015-04-06 19:48:36 +02:00
Florian Bruhin
2d258ec53f Add note about maxsplit/no_split_cmd args to docs. 2015-04-06 17:32:33 +02:00
Florian Bruhin
9d44f777c0 Fix lint. 2015-04-05 20:30:31 +02:00
Florian Bruhin
143228d593 misc_checks.py: Fix exit status for spellcheck. 2015-04-05 19:37:56 +02:00
Florian Bruhin
d3a92d505c Make lints run with adjusted test folder location.
For pylint we need a custom script; see
https://bitbucket.org/logilab/pylint/issue/512/
2015-04-05 18:45:48 +02:00
Florian Bruhin
8748420b1b src2asciidoc: Skip suppressed arguments. 2015-04-01 21:37:06 +02:00
Florian Bruhin
38c63ca2ea Add a checker for words which I often misspell. 2015-03-31 22:12:38 +02:00
Florian Bruhin
8ebac8d38c Various spelling fixes. 2015-03-31 21:11:47 +02:00
Florian Bruhin
96090b86fd tox: Use pytest-cov for coverage. 2015-03-30 23:36:27 +02:00
Florian Bruhin
c562fac9cb tox: Use git directly to check for changes (docs).
We also remove checking for uncommited changes in misc_checks.py, as this
usually just is noise.
2015-03-26 20:37:53 +01:00
Florian Bruhin
cb3fcd3d8a Don't use {envsitepackagesdir} for link_pyqt.py.
It seems this is broken (and passes the global path) on Ubuntu Trusty.
2015-03-26 13:23:07 +01:00
Florian Bruhin
fc14b5b6b2 Fix link_pyqt.py on Debian/Windows. 2015-03-26 13:16:48 +01:00
Florian Bruhin
1d29e3462f Use tox to manage virtualenvs.
Obsoletes #463.
Fixes #558.
Fixes part of #474.
Closes #479.
Closes #452.
2015-03-26 08:15:38 +01:00
Florian Bruhin
07da31e2a0 Remove run_checks/init_venv.
This will be replaced by tox.
2015-03-26 07:59:01 +01:00
Florian Bruhin
513fbb1539 Make setup.py work with python2.
This is needed for distributions (Debian/Ubuntu) which only have a python2 tox.
Tests will still be run with python3, but the setup will be called with
python2.
2015-03-26 07:57:39 +01:00
Florian Bruhin
82322beb03 Fix pep257 issues. 2015-03-26 07:08:54 +01:00
Florian Bruhin
5f454f3440 Add a build_release.py script. 2015-03-24 23:14:09 +01:00
Florian Bruhin
09526ad715 asciidoc2html: Try to find asciidoc on the system.
Fixes #106.
2015-03-24 23:13:51 +01:00
Florian Bruhin
1a534454e2 Make it possible to correct author names in src2asciidoc. 2015-03-18 20:24:47 +01:00
Florian Bruhin
e8e6d8409b Adjust pylint exceptions. 2015-03-11 20:14:39 +01:00
Florian Bruhin
2b06d4e684 Add documentation about how to write userscripts.
Closes #450.
2015-03-10 23:22:53 +01:00
Florian Bruhin
bd3d091318 pylint/openencoding: Fix checking of nonconst mode 2015-03-08 22:31:29 +01:00
Florian Bruhin
86e77e19b6 run_checks: Add --verbose 2015-03-08 15:26:49 +01:00
Florian Bruhin
1d9738c1ab run_checks: Fix running of pyroma/check-manifest. 2015-03-06 17:51:21 +01:00
Florian Bruhin
e48f419f78 run_checks: Stop messing with logging config.
It seems pyroma got less insane, and this breaks logging in the unittests.
2015-03-06 17:50:49 +01:00
Florian Bruhin
a919ce2ffe init_venv: Also install pyroma/check-manifest. 2015-03-06 17:50:15 +01:00
Florian Bruhin
b61f8941de run_checks: Show coverage percentage. 2015-03-04 23:16:24 +01:00
Florian Bruhin
4fa5872733 Add coverage.py support to run_checks.py 2015-03-04 21:39:14 +01:00
Florian Bruhin
8f1d81a644 Add session support.
Closes #12.
See #499.
See #11.

This adds PyYAML as a new dependency.

It adds the following new commands:

    :session-delete <name>
    Delete a session.

    :session-load <name>
    Load a session.

    :session-save [<name>]
    Save a session.

    :wq [<name>]
    Save open pages and quit.

And the following new settings:

    general -> save-session:
    Whether to always save the open pages.
2015-02-16 20:26:09 +01:00
Florian Bruhin
2ad1c4737c Revert "Add QApplication check to init_venv.py."
This reverts commit 3729ccb8cf.

This just lead to unnecessary problems where the toolchain actually works just
fine.
2015-02-09 15:25:52 +01:00
Florian Bruhin
3729ccb8cf Add QApplication check to init_venv.py.
If no XServer is available, importing QtWidgets will work, but Qt will abort
when trying to construct a QApplication.
2015-02-09 00:19:02 +01:00
Florian Bruhin
a55076dfdf src2asciidoc: Fix metavar with nargs != 1. 2015-02-05 08:28:05 +01:00
Florian Bruhin
7d01abacaa run_checks: Add checker for missing __init__.py. 2015-02-05 06:55:48 +01:00