* Fix how redirects are handled so we can have requests with the same URL be used distinctly
* Add support for request_info. Remove `past` kwarg.
* Remove as e to make linter happy
* Add unreleased 3.0.0 to changelog.
* The choice is not what the function *returns*, but what it *does*
(raising an exception is not returning a value).
* Recommend "assert" more strongly, and additionally recommend an
error message with the assert.
* Back up that recommendation in the sample code.
* Add travis testing support for python 3.8
* Use Xenial for all
* Simplify matrix
* Consistent indents
* Add py38 to tox and update contributing guide for how to use pyenv
* Fix travis spec to allow 3.8-dev to fail and tox should pass 90% coverage for full suite
Format with line length 110 to match flake8
make black part of linting check
Update travis spec for updated black requirements
Add diff output for black on failure
update changelog
* chore(changelog): add changelog for 2.1.0 release
* doc(rewind): add documentation a new feature `rewind` that can replay a cassette
* doc(exception): add documentation on the new behavior of the CannotOverwriteExistingCassetteException message
When I ran the test suite on macOSX, I had some issues regarding SSL configuration, I have documented the error I encounter and the solution to deal with it.
I noticed these were out of sync, especially weirdly one mentioning boto and the other mentioning boto3. I figure the list in the README is redundant when the Installation docs section lists the supported libraries, so I've removed it. I also:
* alphabetically sorted the list
* Highlighted the library names as code
* Added both `boto` and `boto3` to the list since there is support for both
* Removed the comment about Tornado's AsyncHTTPClient since that's an implementation detail plus the patch happens on a couple different classes
* Removed the note about `http.client` being part of Python 3, because everyone is Python 3 these days anyway :)
"i.e." is misleading because it means "in other words". In the context of this paragraph, "i.e." implies that "unexpected requests" are those that have a different URI.
I think a URI change is just one example of what could constitute an "unexpected" request. vcr does request matching based on method, port, body, etc.
So, I think "e.g." which means "for example" is the right phrase in this context.
As per [their blog post of the 27th April](https://blog.readthedocs.com/securing-subdomains/) ‘Securing subdomains’:
> Starting today, Read the Docs will start hosting projects from subdomains on the domain readthedocs.io, instead of on readthedocs.org. This change addresses some security concerns around site cookies while hosting user generated data on the same domain as our dashboard.
Test Plan: Manually visited all the links I’ve modified.