Ecosyste.ms: OpenCollective
An open API service for software projects hosted on Open Collective.
github.com/abhinavsingh/proxy.py
💫 Ngrok FRP Alternative • ⚡ Fast • 🪶 Lightweight • 0️⃣ Dependency • 🔌 Pluggable • 😈 TLS interception • 🔒 DNS-over-HTTPS • 🔥 Poor Man's VPN • ⏪ Reverse & ⏩ Forward • 👮🏿 "Proxy Server" framework • 🌐 "Web Server" framework • ➵ ➶ ➷ ➠ "PubSub" framework • 👷 "Work" acceptor & executor framework
https://github.com/abhinavsingh/proxy.py
Proxy Plugins
5343350c3c2b983a1c969dba889633ff5fd9f4e6 authored over 5 years ago by Abhinav Singh <[email protected]>
1. MultiCoreDispatcher now dispatches request in round robin fashion.
2. Added Python3 static ty...
Load plugins during test execution
Further decouple proxy/webserver logic outside of HttpProtoc...
6ea42b0dd908154905c072f45982b11815e6ba5b authored over 5 years ago by Abhinav Singh <[email protected]>Fix tests for py2.7 which require external mock module
Disable tests which require listening on...
8732cb71517de71af1270f3cfe2d0d5f6af5de55 authored over 5 years ago by Abhinav Singh <[email protected]>
1. Rename HttpServer to MultiCoreRequestDispatcher, there wasn't
anything Http about that class,...
Non-blocking accepts helps specially in tests to abort the test server
gracefully.
Add ipv6 tcp...
03104cc54d2225ea7aa61ccd1e5fdc073e52f950 authored over 5 years ago by Abhinav Singh <[email protected]>Add plugins to proxy.py for programmable proxy.
As requested in https://github.com/abhinavsingh...
c8fabb86c488cfe67fd0996fb705763592973129 authored over 5 years ago by Abhinav Singh <[email protected]>d9946015a753f1227794035b95dedfcbc89455dc authored over 5 years ago by Abhinav Singh <[email protected]>
60e1ac1bc2b241943bdacd53a2550cf085efbf09 authored over 5 years ago by Abhinav Singh <[email protected]>
824ba5758909e442e26d6bffe31c88807e6a067c authored over 5 years ago by Abhinav Singh <[email protected]>
653163532c9681ea0b067af8da0ae545c348596c authored over 5 years ago by Abhinav Singh <[email protected]>
be7235bf0dc6e5604a25a162d7ec27189e949921 authored over 5 years ago by Abhinav Singh <[email protected]>
4c09a677a356281031b8095ea35ab2b5852f2f73 authored over 5 years ago by Abhinav Singh <[email protected]>
Some users are already being effected by this, however master branch is
still stable. Python 2....
Refactor
271352c9dc3e306ba443c4d56ac111c0cba8d8f0 authored over 5 years ago by Abhinav Singh <[email protected]>
1. Update class name to be more verbose
2. Update docstring for important classes
3. Global defa...
This can be an issue with pipelining, but ideally should also be
assisted by time-to-live logic....
6be854e1e0a6f01ec067aea7cc471d7d0eeb9f6d authored over 5 years ago by Abhinav Singh <[email protected]>
Pre-spawn worker processes to utilize all cores.
a563baadcf1d4953f1ad36b228a358c3afecac65 authored over 5 years ago by Abhinav Singh <[email protected]>ef91d7d30b8b47668a99371568b0c34c65effb08 authored over 5 years ago by Abhinav Singh <[email protected]>
0a8b40e51e842627ba4764b5ed68a7e0ff6853e5 authored over 5 years ago by Abhinav Singh <[email protected]>
ad7eb517de6bd033eedfa902bed9cec02a0aabdf authored over 5 years ago by Abhinav Singh <[email protected]>
f3c1ce664edd985e6d480b87faf29747f16f8f5e authored over 5 years ago by Abhinav Singh <[email protected]>
Default listen on IPv6 now.
d889bbd08380e6d8fe063ba839e5461b78a1df48 authored over 5 years ago by Abhinav Singh <[email protected]>Use `--ipv4 1` to only listen on IPv4. Fixes #48
c7cd00d95e6c64a00490a4889f1fa52583b0bc43 authored over 5 years ago by Abhinav Singh <[email protected]>Log Level CLI arguments
8f1c061aad5b8acb8009197de233f0ca1024cd6d authored over 5 years ago by Abhinav Singh <[email protected]>75a118cac1e1a33f9fc206addeee95b383583135 authored over 5 years ago by Abhinav Singh <[email protected]>
8e326e38bd8970cf77e31d67c3d6b61725652630 authored over 5 years ago by Abhinav Singh <[email protected]>
Added --pac-file option to serve a Proxy Autoconfig file
a0021cdb3ab913495b8da53c8dc1081b895f3ef2 authored over 5 years ago by Abhinav Singh <[email protected]>Add header "Proxy-Authenticate" into 407 response.
ca2bdde0043c9617abe684a89bc1445cb1332057 authored over 5 years ago by Abhinav Singh <[email protected]>This fixes https://github.com/abhinavsingh/proxy.py/issues/49
055f9116f7cf2f99a0b6cca3233760ee476378a4 authored over 5 years ago by Kevin Wang <[email protected]>085bc2f9272437f6a69dceab60acf10c8d7ff9f2 authored almost 6 years ago by Abhinav Singh <[email protected]>
Travis CI Support
6aa4e56b660e3e14c7020688ae4589c9781b8e56 authored almost 6 years ago by Abhinav Singh <[email protected]>2c16a8a349da59ca67a5a60edad9dd01cba290c7 authored almost 6 years ago by Abhinav Singh <[email protected]>
d2836ca312042c0154e36b99d5fe53c50a3dd9ee authored almost 6 years ago by Abhinav Singh <[email protected]>
d041995c06f25937e5c13cd7d284ca8047177ca4 authored almost 6 years ago by Abhinav Singh <[email protected]>
6eb4be803d2938c0672b4951d91d3a0314295c62 authored almost 6 years ago by Abhinav Singh <[email protected]>
e2e596259e0fdaac5768eac8fc7f3d9c2a2edb40 authored almost 6 years ago by Abhinav Singh <[email protected]>
v0.3 Release
3b59ade81e807d989bd09969baa70f8c08bb241e authored almost 6 years ago by Abhinav Singh <[email protected]>6b64c23c47988b748e109c5ee08a415ad049c5b3 authored almost 6 years ago by Abhinav Singh <[email protected]>
3702661daa01ebedacfe838b67c989e4ac11f9c7 authored almost 6 years ago by Pascal Bihler <[email protected]>
fcdae0e9c458542ecb59efa46890467a093773e7 authored almost 6 years ago by Abhinav Singh <[email protected]>
01010e30aaa9618b3fa116809798df3481d36ed8 authored almost 6 years ago by Abhinav Singh <[email protected]>
Fixes #5
dd2e92f45e63212397e9419cc55809aaf6523663 authored almost 6 years ago by Abhinav Singh <[email protected]>Inspired from work done by @sakurai-youhei in https://github.com/sakurai-youhei/proxy.py/commit/...
087c2801bce6cce53d6505e671647948724dd8bc authored almost 6 years ago by Abhinav Singh <[email protected]>15b6fde86e893e5c80a3b8d5882a56a1818b0958 authored about 6 years ago by Abhinav Singh <[email protected]>
e44c8895b6db5c801f77508cece49a8890c1f298 authored about 6 years ago by Abhinav Singh <[email protected]>
Also accept explicit HttpParser type.
40ef059f1878695ea3ca9a1df12388c9b665b4f3 authored about 6 years ago by Abhinav Singh <[email protected]>Python resource module is unavailable on Windows OS.
c7e47cc7e7b27e8c79d7ccb0c0c116ad12baddca authored about 6 years ago by Abhinav Singh <[email protected]>83b86426b336d00df02fc77d28e75a416ce808b9 authored about 6 years ago by Abhinav Singh <[email protected]>
d4067103535ff85b997a3031bef80e98444f2a74 authored about 6 years ago by Abhinav Singh <[email protected]>
For long running proxies this is critical as keep-alive connections can
quickly help exceed defa...
Now --server-recvbuf-size and --client-recvbuf-size flags can be used
for customizing maximum re...
1. Add explicit state matching in HttpParser class
2. Highlight bug in HttpParser when content-l...
Also refactor proxy exception handling code.
e23444b766aaff5a484deef636d887dcaa30d5e1 authored about 6 years ago by Abhinav Singh <[email protected]>3269998cd534b4dbc5425351f9540affb5e3956b authored about 6 years ago by Abhinav Singh <[email protected]>
Also added BAD_GATEWAY_RESPONSE_PKT constant
26d29c4afb33ee1781310cfafce2b94a6f679e6c authored about 6 years ago by Abhinav Singh <[email protected]>6dc01c66746cba581019d02e7595bf6f5cfa029b authored about 6 years ago by Abhinav Singh <[email protected]>
1. can't concat str to bytes
2. ResourceWarning: unclosed
Preserve size in chunk buffer until CRLF is received avoiding error in
cases when received data ...
Also replace double quote usage with single quotes per specs.
5c1fac2ffa07659091af1c1b3e3b378700ac8802 authored about 6 years ago by Abhinav Singh <[email protected]>584a5fbab556745b54187d0a93d552d3b429919d authored about 6 years ago by Abhinav Singh <[email protected]>
08da786f5297d4b9bbc3ff11a58b8d28c92127a8 authored about 6 years ago by Abhinav Singh <[email protected]>
Using multiprocessing module on Windows leads to unexpected errors due
to pickling. Reference Py...
5383abf195ef9dcb220529d2bdbfbfc136dfeb90 authored about 6 years ago by Abhinav Singh <[email protected]>
v0.2 with support for python3
0d8c8f89ca779feec490ff2aeeb6550580b267f7 authored almost 10 years ago by Abhinav Singh <[email protected]>- Fix for None:None access log messages which essentially happen when client
closes a connection ...
python3 support
f31b9bbe6d4c7ca32f45807dd33cb47e46830021 authored almost 10 years ago by Abhinav Singh <[email protected]>b6adb4d7592deb9f3f43a63e1a62e2a699c45920 authored almost 10 years ago by podhmo <[email protected]>
b1b19f70cfd55097102cc729de78c57a83118ed0 authored almost 10 years ago by podhmo <[email protected]>
a1276c9e76710e629e30d1876aeb16f815a2ac6e authored almost 10 years ago by podhmo <[email protected]>
0605401cf4ffbbae528e4679bf5e0a44ee62fb83 authored almost 10 years ago by podhmo <[email protected]>
38e35fc6711973fcd8969b9f5eddd1b2fb8cab4b authored almost 11 years ago by Abhinav Singh <[email protected]>
ae0551e3fa00e22e9e539c088c41d868547f2442 authored almost 11 years ago by Abhinav Singh <[email protected]>
755f0e07a19da7212d5e93a62ac4f11d5443ff80 authored almost 11 years ago by Abhinav Singh <[email protected]>
807c93f253798433ec1b23f731b87b12f3bc701f authored over 11 years ago by Abhinav Singh <[email protected]>
- Clean shutdown in case of ProxyConnectionFailed exception
- Code refactoring
- Proxy.buffer dict is now part of indivisual server/client connection classes
- Cleaner API and ...
77a093dfcb585e61b57a82479d02ce78720edbdb authored over 11 years ago by Abhinav Singh <[email protected]>
1c6cbab198311116205651ae818386da6af249d4 authored over 11 years ago by Abhinav Singh <[email protected]>
7d8a37ab34101e7dafb2fd4b69a2b482497e0fb7 authored over 11 years ago by Abhinav Singh <[email protected]>
75044a72d9c7b4b8910ba551006b801eafdf3c47 authored over 11 years ago by Abhinav Singh <[email protected]>