Skip to content

Commit

Permalink
pythongh-91539: Small performance improvement of urrlib.request.getpr…
Browse files Browse the repository at this point in the history
…oxies_environment() (python#108771)

 Small performance improvement of getproxies_environment() when there are many environment variables. In a benchmark with 5k environment variables not related to proxies, and 5 specifying proxies, we get a 10% walltime improvement.
  • Loading branch information
RaphaelMarinier authored and aisk committed Feb 11, 2024
1 parent a7faebe commit 9717187
Show file tree
Hide file tree
Showing 2 changed files with 2 additions and 1 deletion.
2 changes: 1 addition & 1 deletion Lib/urllib/request.py
Original file line number Diff line number Diff line change
Expand Up @@ -2490,7 +2490,7 @@ def getproxies_environment():
# select only environment variables which end in (after making lowercase) _proxy
proxies = {}
environment = []
for name in os.environ.keys():
for name in os.environ:
# fast screen underscore position before more expensive case-folding
if len(name) > 5 and name[-6] == "_" and name[-5:].lower() == "proxy":
value = os.environ[name]
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Small (10 - 20%) and trivial performance improvement of :func:`urrlib.request.getproxies_environment`, typically useful when there are many environment variables to go over.

0 comments on commit 9717187

Please sign in to comment.