forked-synapse/synapse
Tim Leung ddb240293a
Add support for no_proxy and case insensitive env variables (#9372)
### Changes proposed in this PR

- Add support for the `no_proxy` and `NO_PROXY` environment variables
  - Internally rely on urllib's [`proxy_bypass_environment`](bdb941be42/Lib/urllib/request.py (L2519))
- Extract env variables using urllib's `getproxies`/[`getproxies_environment`](bdb941be42/Lib/urllib/request.py (L2488)) which supports lowercase + uppercase, preferring lowercase, except for `HTTP_PROXY` in a CGI environment

This does contain behaviour changes for consumers so making sure these are called out:
- `no_proxy`/`NO_PROXY` is now respected
- lowercase `https_proxy` is now allowed and taken over `HTTPS_PROXY`

Related to #9306 which also uses `ProxyAgent`

Signed-off-by: Timothy Leung tim95@hotmail.co.uk
2021-02-26 17:37:57 +00:00
..
_scripts Strip trailing / from server_url in register_new_matrix_user (#8823) 2020-11-26 10:57:26 +00:00
api Ratelimit cross-user key sharing requests. (#8957) 2021-02-19 13:20:34 -05:00
app Clean up ShardedWorkerHandlingConfig (#9466) 2021-02-24 13:23:18 +00:00
appservice Update black, and run auto formatting over the codebase (#9381) 2021-02-16 22:32:34 +00:00
config Clean up ShardedWorkerHandlingConfig (#9466) 2021-02-24 13:23:18 +00:00
crypto Cache config options in SSL verification (#9255) 2021-01-28 17:38:59 +00:00
events Update black, and run auto formatting over the codebase (#9381) 2021-02-16 22:32:34 +00:00
federation Ratelimit cross-user key sharing requests. (#8957) 2021-02-19 13:20:34 -05:00
groups Add type hints to groups code. (#9393) 2021-02-17 08:41:47 -05:00
handlers Ensure pushers are deleted for deactivated accounts (#9285) 2021-02-25 13:56:55 +00:00
http Add support for no_proxy and case insensitive env variables (#9372) 2021-02-26 17:37:57 +00:00
logging Update black, and run auto formatting over the codebase (#9381) 2021-02-16 22:32:34 +00:00
metrics Update black, and run auto formatting over the codebase (#9381) 2021-02-16 22:32:34 +00:00
module_api Update black, and run auto formatting over the codebase (#9381) 2021-02-16 22:32:34 +00:00
push Test that we require validated email for email pushers (#9496) 2021-02-25 15:35:14 +00:00
replication Fix deleting pushers when using sharded pushers. (#9465) 2021-02-22 21:14:42 +00:00
res/templates Support not providing an IdP icon when choosing a username. (#9440) 2021-02-19 07:48:46 -05:00
rest Add support for no_proxy and case insensitive env variables (#9372) 2021-02-26 17:37:57 +00:00
server_notices Update black, and run auto formatting over the codebase (#9381) 2021-02-16 22:32:34 +00:00
spam_checker_api Combine SpamCheckerApi with the more generic ModuleApi. (#8464) 2020-10-07 12:03:26 +01:00
state Update black, and run auto formatting over the codebase (#9381) 2021-02-16 22:32:34 +00:00
static Add initial support for a "pick your IdP" page (#9017) 2021-01-05 11:25:28 +00:00
storage Ensure pushers are deleted for deactivated accounts (#9285) 2021-02-25 13:56:55 +00:00
streams Make token serializing/deserializing async (#8427) 2020-09-30 20:29:19 +01:00
util Fix #8518 (sync requests being cached wrongly on timeout) (#9358) 2021-02-24 13:57:00 +00:00
__init__.py 1.28.0 2021-02-25 10:22:07 +00:00
event_auth.py Update black, and run auto formatting over the codebase (#9381) 2021-02-16 22:32:34 +00:00
notifier.py Update black, and run auto formatting over the codebase (#9381) 2021-02-16 22:32:34 +00:00
python_dependencies.py Add a comment about systemd-python. (#9464) 2021-02-23 13:42:36 +00:00
secrets.py Stop sub-classing object (#8249) 2020-09-04 06:54:56 -04:00
server.py Add support for no_proxy and case insensitive env variables (#9372) 2021-02-26 17:37:57 +00:00
types.py Update black, and run auto formatting over the codebase (#9381) 2021-02-16 22:32:34 +00:00
visibility.py Merge pull request #9150 from Yoric/develop-context 2021-02-08 15:53:44 +01:00