1
0
mirror of https://github.com/webrecorder/pywb.git synced 2025-03-15 16:14:48 +01:00

1667 Commits

Author SHA1 Message Date
Ilya Kreymer
0dff388e4e cdx: CDXQuery takes params dict not **params
CDXObject comparison using to_json()
2016-02-23 01:36:39 -08:00
Ilya Kreymer
57991fd0cf cdx: ensure url param required check is performed on init 2016-02-22 13:59:07 -08:00
Ilya Kreymer
af7c876263 cdx: ensure CDXQuery computes key and end_key automatically
key and end_key encoded as utf-8 by default
2016-02-22 13:39:47 -08:00
Ilya Kreymer
1a0b2fba17 add aggregate index source and tests! 2016-02-22 13:30:12 -08:00
Ilya Kreymer
7513011cac path resolvers: add PathResolverMapper for converting paths to resolvers,
ResolvingLoader takes a list of resolvers, not paths (to allow for custom overrides)
ResolvingLoader and ArcWarcRecordLoader support 'no_record_parse' on load to not parse http headers from stream
2016-02-19 22:33:38 -08:00
Ilya Kreymer
37198767ed add utils, responseloader and liverec 2016-02-19 17:27:19 -08:00
Ilya Kreymer
baa02add69 add indexloader and tests, including file, redis, remote cdx, memento, and live sources 2016-02-19 17:25:54 -08:00
Ilya Kreymer
bd841b91a9 more python 3 support work -- pywb.cdx, pywb.warc tests succeed
most relative imports replaced with absolute
2016-02-18 21:26:40 -08:00
Ilya Kreymer
b7008920de fix setup.py typo 2016-02-16 16:14:10 -08:00
Ilya Kreymer
3c85f7b7ac py3: make pywb.utils work with python 3! 2016-02-16 14:52:20 -08:00
Mat Kelly
50dab0bc98 Fixed misspelling 2016-01-12 18:21:05 -05:00
Ilya Kreymer
7cf81935e1 Update CHANGES for 0.11.1 2015-12-29 23:03:51 -08:00
Ilya Kreymer
d1c0bfac10 warc indexing: refactor to add create_payload_buffer() which can be overriden in custom iterators to create a file-like object
that will receive write() calls to buffer the payload when indexing. Default implementation does not buffer the payload
2015-12-29 17:01:25 -08:00
Ilya Kreymer
98843a2551 wombat: call reload() on actual location, possible fix related to #164 2015-12-29 16:17:39 -08:00
Ilya Kreymer
1e54f8c8fa proxy: add tests for proxy-mode 'Pywb-Rewrite-Prefix' header which adds optional prefix to proxy mode rewrites.. ensures such rewrites always absolute to include the prefix 2015-12-29 16:10:23 -08:00
Ilya Kreymer
a25096968a proxy: ip resolver: show 500 error if incorrect coll preconfigured for ip-based settings (todo: make it configurable?) 2015-12-29 14:53:50 -08:00
Ilya Kreymer
ba19ff1cd5 proxy: add custom rewrite prefix in proxy mode with 'pywb-proxy-rewrite: prefix' header 2015-12-23 23:14:47 -08:00
Ilya Kreymer
0cf6b40af9 wombat: add option to def_prop() to make overriden property enumerable, make WombatLocation and other loc overrides enumerable, fixes #163 2015-12-18 21:46:50 -08:00
Ilya Kreymer
79d5ec2b2d statusheaders: when not verifying protocol line, avoid indexerror when no space in first line, add tests 2015-12-18 21:46:00 -08:00
Ilya Kreymer
f6a4f80e47 bump to 0.11.1 2015-12-18 21:27:03 -08:00
Ilya Kreymer
6e58fe7a40 CHANGES.rst clarification 0.11.0 2015-12-13 00:40:01 -08:00
Ilya Kreymer
7d4c76f308 CHANGES.rst fixes 2015-12-13 00:37:01 -08:00
Ilya Kreymer
da01f107c7 Update CHANGES for 0.11.0 2015-12-13 00:31:38 -08:00
Ilya Kreymer
79b35a64b3 bump wombat version to 2.10 2015-12-13 00:31:01 -08:00
Ilya Kreymer
381f350917 proxy: switching not available for ip resolver either
tests: update tests for auth and ip resolver to check that proxy magic is not set
2015-12-12 22:59:32 -08:00
Ilya Kreymer
e9b11fcbf2 proxy: default to cookie resolver, which allows switching collections and datetime, instead of auth resolver
auth resolver can be used by setting 'cookie_resolver: false' explicitly. when using auth resolver,
don't set proxy magic path as switching collections or datetime is not possible with auth resolver
closes #160
2015-12-12 21:58:12 -08:00
Ilya Kreymer
64fe49d703 wombat: add CSSStyleSheet.prototype href override
karma tests: change name to just 'pywb'
2015-12-11 17:33:22 -08:00
Ilya Kreymer
467ea0f68b Merge branch 'client-side-tests' into develop 2015-12-10 12:50:40 -08:00
Ilya Kreymer
9b8b4d8388 tests/typo fix: add tests for truncated record detection (see: ikreymer/webarchiveplayer#14) fix typo, closes #161 2015-12-10 12:31:58 -08:00
Ilya Kreymer
3e3d7e4d87 Merge pull request #159 from robertknight/anchor-override-tostring
wombat: Override HTMLAnchorElement.prototype.toString()
2015-12-10 11:34:56 -08:00
Ilya Kreymer
b12a24e990 Merge pull request #162 from robertknight/resolve_relative_rel_canon
rewrite: Resolve relative canonical paths if rewriting is disabled
2015-12-10 11:33:15 -08:00
Robert Knight
83a33e0541 Resolve relative canonical paths if rewriting is disabled
For Via, we want rel=canonical links to resolve to the same
absolute URL as it did on the original page.

For absolute URLs, no rewriting is necessary. If the original
rel=canonical URL was relative however, it needs to be resolved
relative to the original URL.

See https://github.com/hypothesis/via/issues/65 for context.
2015-12-10 08:31:50 +00:00
Robert Knight
34721a6742 Override HTMLAnchorElement.prototype.toString()
The values returned by getting the 'href' and 'toString'
properties of an anchor element should be the same.

This inconsistency broke the URL polyfill in
https://github.com/inexorabletash/polyfill under Microsoft Edge
2015-12-02 20:09:09 +00:00
Ilya Kreymer
7a0680fb35 memento: for not found timemap query, return empty timemap, instead of html query error page, closes #158 2015-11-30 09:40:07 -08:00
Ilya Kreymer
04104f04d3 travis: move to travis env settings instead 2015-11-26 11:12:39 -08:00
Ilya Kreymer
fa8528b885 travis: testing with sauce connect enabled! 2015-11-26 11:00:01 -08:00
Ilya Kreymer
b3c9a47ec7 Merge pull request #157 from robertknight/wombat-ms-edge-compat
Microsoft Edge compatibility fixes, including Safari fix from #156 and Node.prototype fix from #154
2015-11-26 10:11:21 -08:00
Robert Knight
977647cea9 Override the baseURI property on the correct object
baseURI is a property of Node.prototype
in current browsers and should be overridden there,
except for Safari where it cannot be overridden at all.
2015-11-26 17:09:26 +00:00
Robert Knight
1997c4a180 Run Karma tests against Microsoft Edge
* Increase the default timeouts to account for the relative
   slowness of setting up connections to remote browsers.

 * Change the URL into which Wombat JS is loaded for
   tests to be a valid URL. Under Microsoft Edge, the JS
   code in the page is not run if the URL fetch returns a 404.

 * Change assert.equal() implementation to avoid confusion due
   to Karma's reformatting of URLs in exception error messages.
2015-11-26 17:09:20 +00:00
Robert Knight
e4e3de85e2 Increase the browser inactivity timeout
Increase the inactivity timeout when running
CI tests in case as recommended at
https://docs.travis-ci.com/user/gui-and-headless-browsers/#Karma-and-Firefox-inactivity-timeouts

That guidance applies to Travis but also to Sauce Labs.
2015-11-26 13:57:35 +00:00
Robert Knight
1484b06da6 Avoid changing the writability of the 'href' attr of <base>
Wombat overrides document.baseURI and <base>.href in order
to return the original URL rather than the proxied URL.

The <base>.href override however ended up making a writable
attribute read-only, which could trigger script errors
in strict-mode JS.

Fix this by avoiding replacing the setter for a DOM property
if no replacement setter is provided.

Fixes an error loading Hypothesis under Microsoft Edge.
2015-11-26 13:54:47 +00:00
Robert Knight
70a098cbd4 Enable Sauce Connect in Travis
Rather than specifying the username and encrypted
key in the Travis config, we just enable Sauce Connect
and require SAUCE_USERNAME and SAUCE_ACCESS_KEY env vars
to be set.

This is so that the Karma tests have the same env vars
available to them which they can use to check whether
to run against Sauce Labs or not.
2015-11-26 11:10:38 +00:00
Robert Knight
a153ada08e Configure Travis to make Firefox available for Karma tests
For some Karma tests, we can run them faster by running
against a local browser in the Travis CI instance rather
than Sauce Labs.

This is also useful for:

 - Contributors wishing to run
   the Travis tests against their own forks and have not
   set up Sauce Labs credentials.

 - Running Karma tests against Pull Request builds where
   Sauce Connect is not available.
2015-11-26 11:09:41 +00:00
Robert Knight
4f86a895c5 Enable testing against Safari on Sauce Labs
* Provide a fallback mode in the Karma tests which tests
   against a local browser (defaults to Firefox) if Sauce Labs
   credentials are not set.

   This is useful for local testing for contributors who
   might not have a Sauce Labs account.

 * Add Safari under OS X to the set of Sauce Labs browsers
   that the Karma tests are run against, following the merge
   of the WombatJS fixes for Safari and Edge.

   Although Edge now works under manual testing, automated
   testing against Sauce Labs is not yet working for reasons
   yet to be determined.
2015-11-26 10:16:23 +00:00
Robert Knight
9c88b1fd20 Enable running Karma tests against Safari
Detect in the test whether overriding of DOM properties
is supported in the current environment and skip testing
for the baseURI override in that case.
2015-11-26 10:15:35 +00:00
Robert Knight
f2fdbcc511 Lookup baseURI getter on Node.prototype, not Node
Fix regression in baseURI override, spotted by the Karma
tests.

The getter should be looked up on Node.prototype, not Node.
2015-11-26 10:00:09 +00:00
Ilya Kreymer
cd2390333a Merge pull request #153 from robertknight/safari-dom-fixes
Fix Wombat in Safari 9
2015-11-26 01:15:30 -08:00
Ilya Kreymer
bb8f384244 Merge branch 'develop' into client-side-tests 2015-11-26 01:01:03 -08:00
Ilya Kreymer
9f77ac50e7 setup.py: better fix for test suite with latest setuptool 2015-11-26 00:59:57 -08:00
Ilya Kreymer
4303ce4ecb warc indexing: better handling of records with content-length to small, read first line to get to warc end (fixes indexing of warc in ikreymer/webarchiveplayer#14) 2015-11-26 00:47:15 -08:00