Add API caching support to rbtools.
Review Request #6504 — Created Oct. 24, 2014 and submitted
Add the
rbtools.api.cache
module. This module includes the
APICache
class, which allows the results ofHTTP GET
requests to
be cached locally to achieve faster lookup. TheAPICache
understands
the following headers:
Cache-Control
Pragma
Vary
Last-Modified
ETag
Expires
The APICache
is backed by a SQLite database in the user's cache
directory. If the cache cannot be accessed, the APICache
will pass
all requests to the specified urlopen
(defaulting to
urllib2.urlopen
) method.
The APICache
allows for a custom urlopen
function so that it can
be tested without making actual HTTP requests.
The APICache
stores the version of its schema in the database. If
the APICache
is instantiated and the versions of the schema in the
class doesn't match the version of the schema in the database, then
the current cache will be invalidted and the schema will be updated.
Add the ActiveState appdirs
module (at version 1.4.0) as
rbtools.utils.appdirs
. This module is used to find the user cache
directory in platform-dependant ways.
Add the rbtools.api.cache.Response
class which emulates the
behaviour of a urllib2
response. This class allows the read
method to be called more than once.
Add the rbtools.api.cache.CachedResponse
class, which is the result
of a cach entry being found the the APICache
. It also emulates the
behaviour of a urllib2
response.
Add the clear-cache
command. This command manually clears the API
cache.
Added unit tests for the APICache
.
Unit tests pass.
The following commands were tested and were successful:
rbt status
rbt post
rbt diff
rbt patch
rbt close
rbt clear-cache
Upon clearing the cache with clear-cache
, a new cache is created.
The first run of a command always creates cache entries (where
appropriate, i.e., not for PUT or POST requests).
The /api/
endpoint is successfully cached and the cached version is
used.
When using the patch
command for the second time on the same review
request, if the diff has not been updated, then the cached version of
the /api/review-requests/<id>/diff/<diff_revision>/
endpoint is
used.
This review request was posted with the APICache
enabled.
Description | From | Last Updated |
---|---|---|
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 34 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 5 E303 too many blank lines (2) |
reviewbot | |
Col: 13 E303 too many blank lines (3) |
reviewbot | |
Col: 9 E303 too many blank lines (2) |
reviewbot | |
Col: 5 E303 too many blank lines (2) |
reviewbot | |
Col: 80 E501 line too long (88 > 79 characters) |
reviewbot | |
Col: 32 E261 at least two spaces before inline comment |
reviewbot | |
Col: 5 E303 too many blank lines (2) |
reviewbot | |
Col: 1 W391 blank line at end of file |
reviewbot | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
local variable 'kernel' is assigned to but never used |
reviewbot | |
undefined name 'kernal' |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
Col: 1 W293 blank line contains whitespace |
reviewbot | |
Col: 1 W293 blank line contains whitespace |
reviewbot | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
Col: 9 E303 too many blank lines (2) |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
'json' imported but unused |
reviewbot | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
'json' imported but unused |
reviewbot | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
'json' imported but unused |
reviewbot | |
Col: 23 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
'json' imported but unused |
reviewbot | |
Switch these two. (cle before clo) |
david | |
I know that this module is part of the standard library, but is it always guaranteed to work? I don't … |
david | |
Since this will be going into master, and we're bumping the minimum python version, you can change this to just … |
david | |
except OSError as e: |
david | |
This can go away. |
david | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
'json' imported but unused |
reviewbot | |
Can you alphabetize this list? |
david | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
'json' imported but unused |
reviewbot | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
These should each be using the :file: markup. (I know we don't have that above, but we should there as … |
chipx86 | |
We should maybe say the HTTP cache for the API. |
chipx86 | |
This and the doc page should match the command: clear-cache |
chipx86 | |
We can just import os. |
chipx86 | |
This isn't part of Python, so it must go in import group #2. |
chipx86 | |
This is a Python standard library module, so it can go in the group above. |
chipx86 | |
What's the reason for setting __slots__ here? Generally speaking, there's rarely a reason to actually set this. It can be … |
chipx86 | |
The function name and docstring sort of contradict each other. |
chipx86 | |
Might be worth mentioning that this is intended to be API-compatible with a urllib2's response object. Same with CachedResponse below. … |
chipx86 | |
Can this be a @staticmethod on ApiCache? |
chipx86 | |
Trailing period at the end of the log message. Variable on the next line. |
chipx86 | |
No blank line here. |
chipx86 | |
These could result in exceptions as well, right? Anything we should be catching here? Also, you could skip doing this … |
chipx86 | |
No blank line here. |
chipx86 | |
Unless we're explicitly needing to worry about the difference between None, empty strings, 0, etc., it's usually best to just … |
chipx86 | |
No blank line. |
chipx86 | |
In this particular case, it's fine to use \ instead of parens for line continuation. |
chipx86 | |
No blank line. |
chipx86 | |
"cacheable" |
chipx86 | |
No blank line. |
chipx86 | |
We return response in all of these cases. We should probably just do a single return response at the end. … |
chipx86 | |
Must be on one line. Doc generators will chop it off otherwise. |
chipx86 | |
I read this incorrectly at first. Can you add a small comment saying that we restore the old value below? … |
chipx86 | |
Blank line between these. |
chipx86 | |
expires can be a separate parameter. |
chipx86 | |
How about "The C locale is not available on this system. The 'Expires' header cannot be parsed." |
chipx86 | |
We should actually grab the old locale and set it, instead of calling resetlocale, in case the caller has actually … |
chipx86 | |
No blank line before elif and else. Same below. |
chipx86 | |
"posterity's" |
chipx86 | |
Should be on the same line. I'd rather not do the map/strip trick inline like this, and like the one … |
chipx86 | |
We don't need to check against None unless there's a reason to worry about empty strings and zero. I believe … |
chipx86 | |
We should probably catch errors for all these commands. |
chipx86 | |
Missing a trailing period. |
chipx86 | |
No blank line here. |
chipx86 | |
We use dumps to serialize, but are loading above with a custom split. dumps may be too heavy. Can we … |
chipx86 | |
"ensures" |
chipx86 | |
Swap these. |
chipx86 | |
Missing a docstring. |
chipx86 | |
How about "Deletes the HTTP cache used for the API." |
chipx86 | |
Rather than this, how about a method on ApiCache for deleting the cache? |
chipx86 | |
Parameters should go on the line after the log message. |
chipx86 | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
Col: 13 E303 too many blank lines (2) |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
Should go up before logging. |
chipx86 | |
This blank line should be removed. |
chipx86 | |
""" on the next line. |
chipx86 | |
Instead of terminating the process, can we just not cache? RBTools is often run in places where it's locked down … |
chipx86 | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
'urlopen' imported but unused |
reviewbot | |
undefined name 'urllib2' |
reviewbot | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
'urlopen' imported but unused |
reviewbot | |
undefined name 'urllib2' |
reviewbot | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
Should catch sqlite3.Error here and die gracefully. |
brennie | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
For consistency with the RB database, mind if we use cache_info? |
chipx86 | |
And api_cache. |
chipx86 | |
"URL" |
chipx86 | |
"URL" |
chipx86 | |
"If-None-Match" |
chipx86 | |
No blank line. |
chipx86 | |
No blank line. |
chipx86 | |
These are only available in Python 2.7+. |
chipx86 | |
"API" |
chipx86 | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot | |
Col: 80 E501 line too long (96 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (93 > 79 characters) |
reviewbot | |
Col: 38 E261 at least two spaces before inline comment |
reviewbot | |
Col: 36 E261 at least two spaces before inline comment |
reviewbot | |
Col: 10 E261 at least two spaces before inline comment |
reviewbot | |
Col: 1 E303 too many blank lines (3) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (107 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (122 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (87 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (94 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (92 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (85 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (89 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (116 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (81 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (115 > 79 characters) |
reviewbot | |
Col: 80 E501 line too long (80 > 79 characters) |
reviewbot | |
Col: 30 E128 continuation line under-indented for visual indent |
reviewbot | |
Col: 1 E265 block comment should start with '# ' |
reviewbot | |
Col: 1 E302 expected 2 blank lines, found 1 |
reviewbot | |
'win32com' imported but unused |
reviewbot | |
'windll' imported but unused |
reviewbot | |
'com' imported but unused |
reviewbot |
- Change Summary:
-
Formatting.
- Commit:
-
c627b96ab984e257ee15a304c77eb061671d7006e603220a0073b645e35865515af55dc7b90e5214
-
Tool: Pyflakes Processed Files: rbtools/api/transport/sync.py rbtools/api/request.py rbtools/utils/appdirs.py rbtools/api/cache.py Ignored Files: rbtools/utils/COPYING.appdirs rbtools/utils/README.appdirs docs/rbtools/index.rst Tool: PEP8 Style Checker Processed Files: rbtools/api/transport/sync.py rbtools/api/request.py rbtools/utils/appdirs.py rbtools/api/cache.py Ignored Files: rbtools/utils/COPYING.appdirs rbtools/utils/README.appdirs docs/rbtools/index.rst WARNING: Number of comments exceeded maximum, showing 30 of 32.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Change Summary:
-
Refactor ApiCache to use dependancy injection so that a mockup urlopen can be used. Fully flesh out behaviour. Write unit tests.
- Summary:
-
[WIP] API CachingAdd API caching support to rbtools.
- Description:
-
~ Add an API caching layer to the
ReviewBoardServer
class. All HTTP requests go through that layer so that they may be cached.~ Add the
rbtools.api.cache
module. This module includes the+ ApiCache
class, which allows the results ofHTTP GET
requests to+ be cached locally to achieve faster lookup. The ApiCache
understands+ the following headers: + + Cache-Control
+ Pragma
+ Vary
+ Last-Modified
+ ETag
+ Expires
+ + The
ApiCache
is backed by a SQLite database in the user's cache+ directory. If the cache cannot be accessed, the ApiCache
will pass+ all requests to the specified urlopen
(defaulting to+ urllib2.urlopen
) method.+ + The
ApiCache
allows for a customurlopen
function so that it can+ be tested without making actual HTTP requests. + + Add the ActiveState
appdirs
module (at version 1.4.0) as+ rbtools.utils.appdirs
. This module is used to find the user cache+ directory in platform-dependant ways. + + Add the
rbtools.api.cache.Response
class which emulates the+ behaviour of a urllib2
response. This class allows theread
+ method to be called more than once. + + Add the
rbtools.api.cache.CachedResponse
class, which is the result+ of a cach entry being found the the ApiCache
. It also emulates the+ behaviour of a urllib2
response.+ + Added unit tests for the
ApiCache
. - Testing Done:
-
~ TODO:
~ Unit tests pass.
- - - Test if API caching actually works as intendend
- - Write unit tests
- Commit:
-
e603220a0073b645e35865515af55dc7b90e52148f6bef0e66611c51057b60e17bdeeb01e10e9ce0
-
Tool: Pyflakes Processed Files: rbtools/api/tests.py rbtools/utils/appdirs.py rbtools/api/request.py rbtools/api/cache.py Ignored Files: rbtools/utils/COPYING.appdirs rbtools/utils/README.appdirs docs/rbtools/index.rst Tool: PEP8 Style Checker Processed Files: rbtools/api/tests.py rbtools/utils/appdirs.py rbtools/api/request.py rbtools/api/cache.py Ignored Files: rbtools/utils/COPYING.appdirs rbtools/utils/README.appdirs docs/rbtools/index.rst WARNING: Number of comments exceeded maximum, showing 30 of 35.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Change Summary:
-
Formatting
- Commit:
-
8f6bef0e66611c51057b60e17bdeeb01e10e9ce0fdaefc92e256302f66a14b83b62c10685e9afd60
-
Tool: Pyflakes Processed Files: rbtools/api/tests.py rbtools/utils/appdirs.py rbtools/api/request.py rbtools/api/cache.py Ignored Files: rbtools/utils/COPYING.appdirs rbtools/utils/README.appdirs docs/rbtools/index.rst Tool: PEP8 Style Checker Processed Files: rbtools/api/tests.py rbtools/utils/appdirs.py rbtools/api/request.py rbtools/api/cache.py Ignored Files: rbtools/utils/COPYING.appdirs rbtools/utils/README.appdirs docs/rbtools/index.rst WARNING: Number of comments exceeded maximum, showing 30 of 32.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-