Ecosyste.ms: OpenCollective

An open API service for software projects hosted on Open Collective.

proxy.py

Lightweight, Programmable, TLS interceptor Proxy for HTTP(S), HTTP2, WebSockets protocols in a single Python file
Collective - Host: opensource - https://opencollective.com/proxypy - Website: https://abhinavsingh.com/about - Code: https://github.com/abhinavsingh/proxy.py

Fix the tagging condition in GHA build job (#816)

github.com/abhinavsingh/proxy.py - 43b267dd55f2a9e03c236e793ca06b7c5c7baea3 authored about 3 years ago
Fix matching requested version with Git tag in GHA (#815)

github.com/abhinavsingh/proxy.py - 48d7252fc37ede47859423dc69170b242d33a233 authored about 3 years ago
pip prod(deps): bump coverage from 6.1.1 to 6.1.2 (#813)

Bumps [coverage](https://github.com/nedbat/coveragepy) from 6.1.1 to 6.1.2.
- [Release notes](h...

github.com/abhinavsingh/proxy.py - c5dd39a146e733058ff74c3525d150964a495a63 authored about 3 years ago
Fix publishing a GitHub Release from GHA (#811)

github.com/abhinavsingh/proxy.py - 40a6f50a240041e959f37c1506c9cced35788a2a authored about 3 years ago
Build docker container for all linux target architectures`386`, `amd64`, `arm/v6`, `arm/v7`, `arm64/v8`, `ppc64le`, `s390x` (#797)

* Fixes #768

* buildx build

* We need `setuptools_scm` to run `Makefile`

* Build `docke...

github.com/abhinavsingh/proxy.py - e5e900f477f3485ff46ae8f17ee4941543d1afe6 authored about 3 years ago
npm: bump eslint-plugin-import from 2.22.1 to 2.25.3 in /dashboard (#798)

Bumps [eslint-plugin-import](https://github.com/import-js/eslint-plugin-import) from 2.22.1 to 2...

github.com/abhinavsingh/proxy.py - 3ff7f211e7dba687c293cc971b3fff2853344771 authored about 3 years ago
pip prod(deps): bump types-paramiko from 2.7.4 to 2.8.1 (#799)

Bumps [types-paramiko](https://github.com/python/typeshed) from 2.7.4 to 2.8.1.
- [Release note...

github.com/abhinavsingh/proxy.py - c9dc88949fcf0895c9e19ea3616bc83150211e0f authored about 3 years ago
npm: bump chrome-devtools-frontend in /dashboard (#786)

Bumps [chrome-devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend) from 1.0.8...

github.com/abhinavsingh/proxy.py - 8cec0bfb49103a7ca10fa8588b5f8160b33349ba authored about 3 years ago
pip prod(deps): bump rope from 0.21.0 to 0.22.0 (#785)

Bumps [rope](https://github.com/python-rope/rope) from 0.21.0 to 0.22.0.
- [Release notes](http...

github.com/abhinavsingh/proxy.py - 3704bb4bd79d1c85e191fcef99d22a66a5ae476c authored about 3 years ago
Bump actions/cache from 2.1.5 to 2.1.7 (#784)

Bumps [actions/cache](https://github.com/actions/cache) from 2.1.5 to 2.1.7.
- [Release notes](...

github.com/abhinavsingh/proxy.py - 9bba14f632084b766d92b185860a880fd3332b5b authored about 3 years ago
Update codecov config to include separate tests and lib sub-projects (#788)

* Update codecov config to include separate tests and lib sub-projects

* Yaml lint

github.com/abhinavsingh/proxy.py - 78d20d98f60d838b859e9fad1bf5391189831399 authored about 3 years ago
Convert `recv` errors as warnings and not exceptions (#787)

github.com/abhinavsingh/proxy.py - 54baf62bea52113d6ed8b0965db19ba8e25e0c46 authored about 3 years ago
Optimize (#780)

* Optimize `find_http_line` which is in critical path

* Update benchmark results

* Keep th...

github.com/abhinavsingh/proxy.py - 99fc17b2a3224a26fedd4e678ad5b9d6052b718f authored about 3 years ago
Create `dependabot.yml` (#783)

* Create dependabot.yml

* Lint fixes

* Yamllint

* Reviewers fix

github.com/abhinavsingh/proxy.py - 833eeba52200003b2ef1f7140e3e0697ea6a48fd authored about 3 years ago
Publish a GitHub Release after tagging (#782)

Co-authored-by: Abhinav Singh <[email protected]>

github.com/abhinavsingh/proxy.py - 7bea3c2c311904aaa35a3696997dcd9f6a2c12cc authored about 3 years ago
Use proper email for the Git user in GHA (#781)

* Use proper email for the Git user in GHA

* Use an action to set the GHA user in Git

github.com/abhinavsingh/proxy.py - 39f5996ce9c7cadd3228b8cde53f426d86c68fcc authored about 3 years ago
Prune unnecessary directories from `sdist` package (#779)

* Prune unnecessary directories from `sdist` package

* Remove `LICENSE` & `README.md` from `M...

github.com/abhinavsingh/proxy.py - ab5c155213115d1664ce429ec155184d16ca9be6 authored about 3 years ago
Async `get_events`, `handle_event`, `handle_readables`, `handle_writables` (#769)

* Asynchronous `handle_event` and `LocalExecutor` thread

* Bail out on first task completion
...

github.com/abhinavsingh/proxy.py - 44d72431e38c20102c5d2162e5a4d3d6e9618835 authored about 3 years ago
Declare project URLs in Python package metadata (#778)

* Declare project URLs in Python package metadata

* Add link to GHA discussions

Co-authore...

github.com/abhinavsingh/proxy.py - d554b94ebbe9e84decd1f6aaa11b08fbb28bd6c2 authored about 3 years ago
Fix tox invocation in the doc make target (#772)

Co-authored-by: Abhinav Singh <[email protected]>

github.com/abhinavsingh/proxy.py - 4d3b2c5e4267b8363aa0e2e756daa70bd2b4d29a authored about 3 years ago
Include contributing guidelines in Sphinx docs (#771)

github.com/abhinavsingh/proxy.py - 1a3331e885b7513e18fd9e973a543b746cdf015f authored about 3 years ago
Acceptors performance (#767)

* Use threads for delegation. Now `run_once` lock before `accept` not `select`

* Add support ...

github.com/abhinavsingh/proxy.py - 8fdddfd1997847da6da6c9702d19d80a896ae665 authored about 3 years ago
[ImgBot] Optimize images (#766)

/ProxyPy.png -- 985.28kb -> 884.17kb (10.26%)

Signed-off-by: ImgBotApp <[email protected]>...

github.com/abhinavsingh/proxy.py - 27f85038b18ccbda9dff78ee072afdf25f898ace authored about 3 years ago
Remove badge for deprecated workflows

github.com/abhinavsingh/proxy.py - b54da38984a4737763d03ae0551dd753e0411486 authored about 3 years ago
Single workflow (#765)

* To optimize pull all workflows within check guard

* give space between version and to

* ...

github.com/abhinavsingh/proxy.py - 852924e901397cfc7ac995eb824dd25741dfee8d authored about 3 years ago
Run push workflow only for push to master and develop branch (#764)

* Run push workflow only for push to master and develop branch

* remove comments from `settin...

github.com/abhinavsingh/proxy.py - c59e8f8a14bfa2aa13f09b319f60eb11eb5c3671 authored about 3 years ago
Enhancements (#763)

* Update `make lib-profile`

* Optimize `utils.find_http_line`

* Pass work to executors wit...

github.com/abhinavsingh/proxy.py - c06cb75b79165ece8703b9f82049cc64b772ead5 authored about 3 years ago
Added `DEFAULT_SELECTOR_SELECT_TIMEOUT` (#762)

github.com/abhinavsingh/proxy.py - 9b3b6626851924f795ed52a5c2e4ae60aefbde90 authored about 3 years ago
Add `.vscode` settings (#761)

github.com/abhinavsingh/proxy.py - 5eb4fa4acd9c5a0a3389437fffe1f38ca1736a10 authored about 3 years ago
Add `TcpUpstreamConnectionHandler` class (#760)

* Add `TcpUpstreamConnectionHandler` which can be used as standalone or as mixin

* [pre-commi...

github.com/abhinavsingh/proxy.py - 3cfce5265cf99a4a47d8647382762b696920f86a authored about 3 years ago
Transparent `ProxyPy.png` (#759)

github.com/abhinavsingh/proxy.py - 44c095a9c28485f6e49629367bb42e798e81365a authored about 3 years ago
[IntegrationTest] Use `127.0.0.1` as target address and a random port (#756)

* Use `127.0.0.1` as target address and a random port

* Fix spellcheck-docs

github.com/abhinavsingh/proxy.py - 42e35188f461ff0bf3c2d6bc347c674a399bbde8 authored about 3 years ago
Add community contribution guidelines (#757)

github.com/abhinavsingh/proxy.py - ac1dee926a9352a81d4d9ebd9fcda285a1eeaa3d authored about 3 years ago
Include GitHub's CoC and security in Sphinx docs (#755)

Co-authored-by: Abhinav Singh <[email protected]>

github.com/abhinavsingh/proxy.py - 49f2f9572d56d9478f3261468a37628fd8cb06cc authored about 3 years ago
Fix Makefile to use tox for docs (#752)

* Fix Makefile to use tox for docs

* Resolve `open` based upon operating system

Co-authore...

github.com/abhinavsingh/proxy.py - 736747acd1a27d5ccd742fedfa1e72ee7f8c271c authored about 3 years ago
Add all IANA assigned HTTP method names (#751)

* Ignore `docs/_build`

* Remove `v` prefix from VERSION. Also added a `lib-doc` target

* ...

github.com/abhinavsingh/proxy.py - 2b3f0cb422bc5fbfda85329104ee111089285a30 authored about 3 years ago
Handle invalid/malformed data from clients in HttpParser (#740)

* add validation in _process_line in parser.py

add validation in _process_line in proxy/http/...

github.com/abhinavsingh/proxy.py - 658acd822c0fb769c79ba8744209d93b7222e76c authored about 3 years ago
Merge pull request #747 from webknjaz/docs/init

Add initial Sphinx docs

github.com/abhinavsingh/proxy.py - 8052c907e8ed7bd889a13c8029a657675d6fd13a authored about 3 years ago
Add initial Sphinx docs

github.com/abhinavsingh/proxy.py - fa89944891fda3a81f45609a63a1009908ef1e6c authored about 3 years ago
Reuse a pre-existing `version_tuple` from SCM (#736)

Co-authored-by: Abhinav Singh <[email protected]>

github.com/abhinavsingh/proxy.py - 9314d0559d07ac719e86ee7675609ea9e00a8cf6 authored about 3 years ago
Merge branch 'develop' into maintenance/reuse-scm-tuple

github.com/abhinavsingh/proxy.py - 8ca04212cdbd5522a2e3e21434217af00dc5a3d4 authored about 3 years ago
Make Git archives `setuptools-scm` compatible (#737)

Co-authored-by: Abhinav Singh <[email protected]>

github.com/abhinavsingh/proxy.py - 5de3458f096c8daceac6b67f4378893ff19193d7 authored about 3 years ago
Move GHA e2e integration job to pytest (#746)

Co-authored-by: Abhinav Singh <[email protected]>

github.com/abhinavsingh/proxy.py - 22a2705e1d6486a4d2be69b126e06bdc6250ce7a authored about 3 years ago
Add an example of loading external plugins

github.com/abhinavsingh/proxy.py - 79f51e716a6dd0ffdc4755dbd2dab8b08bbaf902 authored about 3 years ago
Merge branch 'develop' into maintenance/reuse-scm-tuple

github.com/abhinavsingh/proxy.py - b928c911f1c1dec25fc1c2eddb9d3244d84e130f authored about 3 years ago
Fix homebrew formulae URL to install from git and not zip because of scm changes (#744)

github.com/abhinavsingh/proxy.py - 09c9b63b5d9211f94e5763ac854cd779ec449da5 authored about 3 years ago
Fix dist version in CI/CD on pushes to `develop` (#743)

github.com/abhinavsingh/proxy.py - 86da33a4752ad7726f4392d1e952bff9fe391b6d authored about 3 years ago
Enable release-testpypi (#741)

github.com/abhinavsingh/proxy.py - a0d4e5e9e3880f703e23f46c7089137459ecc4cd authored about 3 years ago
Implement publishing via GHA (#716)

github.com/abhinavsingh/proxy.py - 5bdb0e38ab361bfa2b8c10c282a55be4b2e94feb authored about 3 years ago
No abstract method for proxy plugin (#738)

* Remove abstractmethod for proxy plugin base class, remove unused methods from bundled plugins
...

github.com/abhinavsingh/proxy.py - 7f1470e3a95b7b0a0037f217b64a1cbe2cc315b8 authored about 3 years ago
Reuse a pre-existing `version_tuple` from SCM

github.com/abhinavsingh/proxy.py - 9704988e942a0b6f5e66a6e1276b85c34fa7551c authored about 3 years ago
`--enable-proxy-protocol` : HAProxy Protocol v1 (#735)

* Introduce `--haproxy-protocol` flag

* Complete proxy protocol v1 implementation, enable usi...

github.com/abhinavsingh/proxy.py - d72ee2227da1317ece603baeca5c7895ab53f3d0 authored about 3 years ago
Switch versioning to be SCM-based (#715)

Co-authored-by: Abhinav Singh <[email protected]>

github.com/abhinavsingh/proxy.py - 8d3fe871550bbd5f6c68f9dd8f80c596dcb1fe79 authored about 3 years ago
Add `--auth-plugin` flag to override default basic auth plugin (#734)

* Allow override of `--auth-plugin`.

This can be used in scenarios where a hardcoded `--basic...

github.com/abhinavsingh/proxy.py - 523021c9b58968c093261751aa663415bf864aae authored about 3 years ago
Allow `access_log` format override by web plugins (#733)

* Return DEFAULT_404_RESPONSE by default from static server when file doesnt exist

* [pre-com...

github.com/abhinavsingh/proxy.py - 094e30d31f305524f5ec1ee122eaa0e02dcd234b authored about 3 years ago
Add more info in log context (#732)

* Provide more info in log context, ideally we could just pass client/upstream/request/response ...

github.com/abhinavsingh/proxy.py - 684c0d4fe717e0281b300486f233b748387bc04f authored about 3 years ago
Custom Url Parser (#730)

* Custom Url parser for our needs

* lint fix

* [pre-commit.ci] auto fixes from pre-commit....

github.com/abhinavsingh/proxy.py - 541da114c85bbfb49017f87688b7c7e5b728a49b authored about 3 years ago
Add `--proxy-pool` flag (#727)

* Add `--proxy-pool` flag

* lint checks

github.com/abhinavsingh/proxy.py - 0739db60535b1818edba9128aa4dac551084cfca authored about 3 years ago
Allow `--plugins` flag to be used multiple times (#725)

* deprecate server_file_or_404

* Optionally compress static content. Currently only if conte...

github.com/abhinavsingh/proxy.py - ddf90fb6f0823a6f5d0770998494d8b205b056d9 authored about 3 years ago
Test cov (#721)

* nocover for abstract classes

* Add event manager test

* Assert call args

* Sponsored ...

github.com/abhinavsingh/proxy.py - e38f1a8feecf0f62669c29a490cff7a895866173 authored about 3 years ago
Add `Listener`, Web server close on header, use `Pipe` instead of `Manager` in eventing core (#720)

* Abstract out a Listener class

* unused

* Use connection instead of manager queue

* Fo...

github.com/abhinavsingh/proxy.py - df7f1c887b0102efc03c9bac2a9d3cd386d6af57 authored about 3 years ago
Update badges to match new GHA workflows (#718)

github.com/abhinavsingh/proxy.py - df5a66807cf8ba2f20340887130e087a33f8d12a authored about 3 years ago
Add `--num-acceptors` flag + Allow `work_klass` via `Proxy` context manager kwargs (#714)

* Allow overriding work_klass via Proxy context manager kwargs

* Decouple acceptor and execut...

github.com/abhinavsingh/proxy.py - 0a038ce8beda5d39260c5d283ebd696bc501d054 authored about 3 years ago
Add an explicit config for darglint (#717)

github.com/abhinavsingh/proxy.py - 77b8735ec1078b5c6fe050d4e53a79e582c3cbcc authored about 3 years ago
Add more context in intro (#713)

* Add more context in intro

* Take another pass

* Add threadless in log section

github.com/abhinavsingh/proxy.py - fec9a14303e2394b32abb773f23f515fbb5038bf authored about 3 years ago
`OP_NO_TLSv1_1` by default for upstream connection negotiations (#712)

* print mode via acceptor pool

* `OP_NO_TLSv1_1` by default for upstream connection negotiati...

github.com/abhinavsingh/proxy.py - fa18129f9b326af54e1adaa1f3fddedf10a811e0 authored about 3 years ago
`--threadless` default for `Python 3.8+` on `mac` and `linux` (#710)

* Explicit `multiprocessing.Manager.shutdown`

Multiprocessing manager is used within eventing...

github.com/abhinavsingh/proxy.py - 98e6d0b3d44cad80362cf99923ed871df5f56f5e authored about 3 years ago
`EventManager` is also a context manager (#709)

* `EventManager` is also a context manager

* unused

* Rename `EventManager.event_queue` to...

github.com/abhinavsingh/proxy.py - aadcc10813a859645d1a1d4dde97d90a0b5223b3 authored about 3 years ago
Move pid file write/remove within `AcceptorPool` (#708)

* Move pid file write/remove within AcceptorPool

* Remove unused

github.com/abhinavsingh/proxy.py - c6eaacefce2934eceac25f7a15d2710d476f1d4c authored about 3 years ago
Fix `--enable-dashboard` flags (#707)

* Expose within __all__

* Enable `--numprocesses=auto` for `pytest.ini`

* make lib-lint

...

github.com/abhinavsingh/proxy.py - db8da4f3989c42afaf6b781c5941f6f753fd34e8 authored about 3 years ago
Update types-paramiko from 2.7.3 to 2.7.4 (#704)

github.com/abhinavsingh/proxy.py - 78748f5b18471d059b3264c83d0c70504907d25d authored about 3 years ago
Put core flags where they belong (#702)

* Move flags to where they belong

* Move `get_default_plugins` within FlagParser as it depend...

github.com/abhinavsingh/proxy.py - a8e39665254c2dade58cfb24735021ce8a071c5c authored about 3 years ago
Add `lib-dep` makefile target (#701)

github.com/abhinavsingh/proxy.py - 7a415dcc411d9aae6fbdf2a6506170e3620e4c45 authored about 3 years ago
Disable static web server test on GHA environment (flaky on Ubuntu) (#700)

github.com/abhinavsingh/proxy.py - a6d7fae0b32539e8bdb2ced2daa5a003d1ba2809 authored about 3 years ago
Trigger workflows only when necessary file changes are detected (#699)

* Trigger workflows only when necessary file changes are detected

* Address yamllint

* Tri...

github.com/abhinavsingh/proxy.py - 2c4ad4645989891b8d33f30acda8e11be07c8c2a authored about 3 years ago
Add a `--unix-socket-path` flag (#697)

* Add a `--unix-socket-path` flag.

When available `--hostname` and `--port` flags are ignored...

github.com/abhinavsingh/proxy.py - 3cb0a62583ad9b8a531332b6e90458a1bd750894 authored about 3 years ago
Rename `Proxy.initialize` as `FlagParser.initialize` (#696)

* Move Proxy.initialize within FlagParser.initialize. Also move other staticmethods from within...

github.com/abhinavsingh/proxy.py - b830f7b23818e6b7274dac66c8e9090f68877c08 authored about 3 years ago
Top-level notion of work not client (#695)

* Top-level notion of work not client

* Update ssl echo server example

github.com/abhinavsingh/proxy.py - f48771fb41a13fa31b2f02322cfbfd418f6f558b authored about 3 years ago
Pool (#694)

* Refactor pool

* mypy fixes

* Fix import (relative)

* Add WebScraper example skeleton ...

github.com/abhinavsingh/proxy.py - d3cee329099a3e24d92e00d80005e6914901bbc5 authored about 3 years ago
Work (#693)

* Refactor work acceptor and executor

* Lint fixes

* Fix expression-not-assigned pylint error

github.com/abhinavsingh/proxy.py - da23c7f70c76e9cfda41fea001ebcc91dae4b591 authored about 3 years ago
Expose pre-commit tool hooks execution times (#692)

github.com/abhinavsingh/proxy.py - 462624f49e4f4b3bcb2a0f7fcaa5271252db6ebc authored about 3 years ago
DEFAULT_CA_FILE is now certifi/cacert.pem (#691)

* Add FAQ: OSError when wrapping client for TLS Interception

* Silence exception log for seve...

github.com/abhinavsingh/proxy.py - fd838ca64ebd8e851ea3db31cae6768ac94f7534 authored about 3 years ago
[ModifyChunkResponsePlugin] Only bail out of body is not expected (#690)

github.com/abhinavsingh/proxy.py - 8a463372252d96af5b1617369f7c9ea19a757ac6 authored about 3 years ago
Response bodies can be empty or missing + HttpParser refactoring (#688)

* Responses can have None body, remove assertions, update modify chunk plugin to not modify chun...

github.com/abhinavsingh/proxy.py - d9200fd082e0ce28e2751ec1ebc50839213108cd authored about 3 years ago
Readme Updates (#687)

* FilterByUpstreamHostPlugin now uses facebook as example

* Advertise that cloudflare plugin ...

github.com/abhinavsingh/proxy.py - 9e9ca90087243cfccc1de3fb5f29b1fb8371d748 authored about 3 years ago
must_flush_before_shutdown until entire client buffer has been flushed (#686)

github.com/abhinavsingh/proxy.py - 6121fe9004ca98465bc216cea5fae09db1f869c2 authored about 3 years ago
Fix python 3.10 @ ubuntu pytest ignore (#685)

* Use suggested fix in #683 to remove pytest ignore

* Handle should not flush now which can b...

github.com/abhinavsingh/proxy.py - 25b7952b1d8b49e431ed7f9b53012c3fdf360b27 authored about 3 years ago
Test built artifacts in the CI instead of Git src (#682)

This approach helps make sure that what is tested in the project is
the same as what the end-us...

github.com/abhinavsingh/proxy.py - eff6c0dd6036e34f6785c7e7b2923d23f9f2b313 authored about 3 years ago
Add a pytest-based test for catching import loops (#678)

Co-authored-by: Abhinav Singh <[email protected]>

github.com/abhinavsingh/proxy.py - 423e9ce0a46f58dec513f99511c2312c1ac4b33f authored about 3 years ago
Inline the dist description in pkg metadata (#684)

This is necessary because setuptools is about to deprecate supporting
LF in one-line metadata f...

github.com/abhinavsingh/proxy.py - cc80e1c742c7bfcc2dcd9458c5ba02e7543a9e95 authored about 3 years ago
Adopt BaseTcpServerHandler within HttpProtocolHandler (#681)

* Rename .server to .upstream

* Lint fixes

* Mark internal methods with _ prefix

* Fix ...

github.com/abhinavsingh/proxy.py - 628de71ca8ce5b4079b6bc471180282db9e4e1d9 authored about 3 years ago
Ignore a `DeprecationWarning` in `pytest` config (#683)

This was added in Python 3.10 and needs to be dealt with properly.

github.com/abhinavsingh/proxy.py - e9d012b3ccad81f12a7cbb71c79a0836e482e8f2 authored about 3 years ago
Add a config for pytest (#680)

github.com/abhinavsingh/proxy.py - b09d170ada4defc920f3630946bf76786af10f45 authored about 3 years ago
Add a config for Coverage.py (#679)

github.com/abhinavsingh/proxy.py - fba75a1a720b27479a0055051af729801c651f86 authored about 3 years ago
Allow pylint to utilize all available CPU cores (#676)

This is a nice addition to the linter's responsiveness.

Co-authored-by: Abhinav Singh <mailsf...

github.com/abhinavsingh/proxy.py - d3be2a1d84f3f6c05fb7eeb0242dd6658ccc44a4 authored about 3 years ago
Collect coverage for `tests/` (#677)

This is necessary to make sure all the tests actually get executed
somewhere and allows finding...

github.com/abhinavsingh/proxy.py - 4b8b6258e3c857988667d63fd4a11fbc4853f976 authored about 3 years ago
Use core loop for reverse proxy async IO operations (#675)

* Make reverse proxy plugin use proxy.py core loop for async io operations

* Address lint err...

github.com/abhinavsingh/proxy.py - 504ca532e086a3c16320c8aafc4a6e8e074bf26e authored about 3 years ago
Add tests for missing core modules (#674)

* Rename is_py3 to is_py2 for more logical guard

* Add stubs for missing tests, add few more ...

github.com/abhinavsingh/proxy.py - 880c3c876eaea175bb08f41cb05b120e0deb3373 authored about 3 years ago
CustomDnsResolver plugin, CloudflareDnsResolver plugin, Allow plugins to configure network interface (#671)

* Add CustomDnsResolver plugin. Addresses #535 and #664

* Add cloudflare DNS resolver plugin...

github.com/abhinavsingh/proxy.py - bf4ee90e21fa06d194b36cd93d89992283e490a5 authored about 3 years ago
Make pytest emit XML coverage (#673)

This patch should make GHA report coverage to codecov properly.

github.com/abhinavsingh/proxy.py - 752146a14db6b56129cddf26b0d5dcdfe45252e9 authored about 3 years ago