Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make UDP socket buffer size configurable #2336

Merged
merged 21 commits into from
Jul 17, 2020

Conversation

kbarukhov
Copy link
Contributor

Which problem is this PR solving?

Buffer size for udp is too small #2331

Short description of the changes

Add ability to change udp buffer size via syscall, but it doesn't work on windows

@kbarukhov kbarukhov requested a review from a team as a code owner July 9, 2020 07:16
@pavolloffay
Copy link
Member

cmd/agent/app/flags.go Outdated Show resolved Hide resolved
cmd/agent/app/builder.go Outdated Show resolved Hide resolved
kbarukhov added 4 commits July 9, 2020 11:24
Signed-off-by: kbarukhov <[email protected]>
Signed-off-by: kbarukhov <[email protected]>
Signed-off-by: kbarukhov <[email protected]>
Signed-off-by: kbarukhov <[email protected]>
Signed-off-by: kbarukhov <[email protected]>
cmd/agent/app/builder.go Outdated Show resolved Hide resolved
@codecov
Copy link

codecov bot commented Jul 13, 2020

Codecov Report

Merging #2336 into master will decrease coverage by 0.04%.
The diff coverage is 61.53%.

Impacted file tree graph

@@            Coverage Diff             @@
##           master    #2336      +/-   ##
==========================================
- Coverage   95.64%   95.59%   -0.05%     
==========================================
  Files         205      206       +1     
  Lines       10529    10542      +13     
==========================================
+ Hits        10070    10078       +8     
- Misses        391      395       +4     
- Partials       68       69       +1     
Impacted Files Coverage Δ
cmd/agent/app/builder.go 96.00% <25.00%> (-4.00%) ⬇️
cmd/agent/app/servers/thriftudp/socket_buffer.go 60.00% <60.00%> (ø)
cmd/agent/app/flags.go 93.33% <100.00%> (+0.47%) ⬆️
cmd/agent/app/servers/thriftudp/transport.go 100.00% <100.00%> (ø)
plugin/storage/badger/spanstore/reader.go 96.79% <0.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update bfcebdb...9bbfe43. Read the comment docs.

Signed-off-by: kbarukhov <[email protected]>
@yurishkuro
Copy link
Member

hm, the problem is that we calculate code coverage per package only, so having tests in another package that exercise the SetSocketBufferSize in another package does not improve code coverage. Is there something we can do directly in thriftudp package to exercise that path?

@kbarukhov
Copy link
Contributor Author

hm, the problem is that we calculate code coverage per package only, so having tests in another package that exercise the SetSocketBufferSize in another package does not improve code coverage. Is there something we can do directly in thriftudp package to exercise that path?

We can do a test for transport, call the SetSocketBufferSize with appropriate size and with the value bigger than maximum. And check if no error and an error occured?

@yurishkuro
Copy link
Member

sgtm

kbarukhov added 2 commits July 16, 2020 11:02
Signed-off-by: kbarukhov <[email protected]>
@yurishkuro
Copy link
Member

The build is failing on go.sum changing from checked-in version. Do you really need to change go.mod/go.sum in the PR?

Kirill Barukhov added 2 commits July 16, 2020 18:32
Signed-off-by: kbarukhov <[email protected]>
Signed-off-by: kbarukhov <[email protected]>
Copy link
Member

@yurishkuro yurishkuro left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks!

@yurishkuro yurishkuro changed the title Configurable udp socket buffer size Make UDP socket buffer size configurable Jul 17, 2020
@yurishkuro yurishkuro merged commit 681a1eb into jaegertracing:master Jul 17, 2020
yurishkuro pushed a commit that referenced this pull request Aug 7, 2023
Bumps the all group in /docker-compose/monitor with 4 updates:
[deprecated](https://github.com/tantale/deprecated),
[typing-extensions](https://github.com/python/typing_extensions),
[urllib3](https://github.com/urllib3/urllib3) and
[wrapt](https://github.com/GrahamDumpleton/wrapt).

Updates `deprecated` from 1.2.13 to 1.2.14
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/tantale/deprecated/releases">deprecated's
releases</a>.</em></p>
<blockquote>
<h2>v1.2.14</h2>
<h2>Fix</h2>
<ul>
<li>Fix <a
href="https://github.com/tantale/deprecated/issues/60">#60</a>:
return a correctly dedented docstring when long docstring are using the
D212 or D213 format.</li>
</ul>
<h2>Other</h2>
<ul>
<li>Add support for Python 3.11.</li>
<li>Drop support for Python older than 3.7 in build systems like pytest
and tox, while ensuring the library remains production-compatible.</li>
<li>Update GitHub workflow to run in recent Python versions.</li>
</ul>
<h2>New Contributors</h2>
<ul>
<li><a href="https://github.com/hugovk"><code>@​hugovk</code></a> made
their first contribution in <a
href="https://github.com/tantale/deprecated/pull/52">tantale/deprecated#52</a></li>
<li><a href="https://github.com/12rambau"><code>@​12rambau</code></a>
made their first contribution in <a
href="https://github.com/tantale/deprecated/pull/61">tantale/deprecated#61</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/tantale/deprecated/compare/v1.2.13...v1.2.14">https://github.com/tantale/deprecated/compare/v1.2.13...v1.2.14</a></p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/tantale/deprecated/blob/master/CHANGELOG.rst">deprecated's
changelog</a>.</em></p>
<blockquote>
<h1>v1.2.14 (2023-05-27)</h1>
<p>Bug fix release</p>
<h2>Fix</h2>
<ul>
<li>Fix <a
href="https://github.com/tantale/deprecated/issues/60">#60</a>:
return a correctly dedented docstring when long docstring are using the
D212 or D213 format.</li>
</ul>
<h2>Other</h2>
<ul>
<li>
<p>Add support for Python 3.11.</p>
</li>
<li>
<p>Drop support for Python older than 3.7 in build systems like pytest
and tox,
while ensuring the library remains production-compatible.</p>
</li>
<li>
<p>Update GitHub workflow to run in recent Python versions.</p>
</li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/tantale/deprecated/commit/378636d8a1e3d62d5894329c57f44ba0030c2dbd"><code>378636d</code></a>
Drops seemingly unused importlib-metadata dev dep</li>
<li><a
href="https://github.com/tantale/deprecated/commit/325b764f528c36c419b187ead4d537ac3cfc3d6a"><code>325b764</code></a>
Fixes comment on which version is development branch</li>
<li><a
href="https://github.com/tantale/deprecated/commit/291b34a000001a29c1aecd5f702a283776daa43f"><code>291b34a</code></a>
Adds Pythons dropped notice to changelog</li>
<li><a
href="https://github.com/tantale/deprecated/commit/204eccd311e95b7d1ce1cfef0aec9349dc2ca7cd"><code>204eccd</code></a>
Drops limitation on tox &lt; 4 since bug was fixed</li>
<li><a
href="https://github.com/tantale/deprecated/commit/2660239db51b2a157d505537f287ef1de3461fd8"><code>2660239</code></a>
Adds srpm_build_deps to Packit config</li>
<li><a
href="https://github.com/tantale/deprecated/commit/54a53d7d5822009193d3057cde88665cdb233169"><code>54a53d7</code></a>
Try explicitly setting AppVeyor image to VS2022</li>
<li><a
href="https://github.com/tantale/deprecated/commit/2b79e57c4ab5f52d124c01c3da7041d3f3f63755"><code>2b79e57</code></a>
Exclude pypy3 on ppc64le on Travis builds</li>
<li><a
href="https://github.com/tantale/deprecated/commit/bf33f948b70b04cf3e8f598575bb23206abe2813"><code>bf33f94</code></a>
Drops old Pythons and adds newer ones for Appveyor build</li>
<li><a
href="https://github.com/tantale/deprecated/commit/682989d8d7fcd3b2cff7a42a58d966791aef9a52"><code>682989d</code></a>
Drop the .9 from pypy3 in tox.ini</li>
<li><a
href="https://github.com/tantale/deprecated/commit/3919edf1f1ca89a67c929704d80a604b995690b3"><code>3919edf</code></a>
Use specifically pypy3.9 v7.3.9</li>
<li>Additional commits viewable in <a
href="https://github.com/tantale/deprecated/compare/v1.2.13...v1.2.14">compare
view</a></li>
</ul>
</details>
<br />

Updates `typing-extensions` from 4.4.0 to 4.7.1
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/python/typing_extensions/releases">typing-extensions's
releases</a>.</em></p>
<blockquote>
<h2>4.7.1</h2>
<ul>
<li>Fix support for <code>TypedDict</code>, <code>NamedTuple</code> and
<code>is_protocol</code> on PyPy-3.7 and
PyPy-3.8. Patch by Alex Waygood. Note that PyPy-3.7 and PyPy-3.8 are
unsupported
by the PyPy project. The next feature release of typing-extensions will
drop support for PyPy-3.7 and may also drop support for PyPy-3.8.</li>
</ul>
<h2>4.7.0</h2>
<p>This is a feature release. Major changes include:</p>
<ul>
<li>All non-deprecated names from <code>typing</code> are now
re-exported by <code>typing_extensions</code> for convenience</li>
<li>Add <code>typing_extensions.get_protocol_members</code> and
<code>typing_extensions.is_protocol</code></li>
<li>Declare support for Python 3.12</li>
<li>This will be the last feature release to support Python 3.7, which
recently reached its end-of-life</li>
</ul>
<p>Full changelog of versions 4.7.0 and 4.7.0rc1:</p>
<h1>Release 4.7.0 (June 28, 2023)</h1>
<ul>
<li>This is expected to be the last feature release supporting Python
3.7,
which reaches its end of life on June 27, 2023. Version 4.8.0 will
support
only Python 3.8.0 and up.</li>
<li>Fix bug where a <code>typing_extensions.Protocol</code> class that
had one or more
non-callable members would raise <code>TypeError</code> when
<code>issubclass()</code>
was called against it, even if it defined a custom
<code>__subclasshook__</code>
method. The correct behaviour -- which has now been restored -- is not
to
raise <code>TypeError</code> in these situations if a custom
<code>__subclasshook__</code> method
is defined. Patch by Alex Waygood (backporting
<a
href="https://github.com/python/cpython/pull/105976">python/cpython#105976</a>).</li>
</ul>
<h1>Release 4.7.0rc1 (June 21, 2023)</h1>
<ul>
<li>Add <code>typing_extensions.get_protocol_members</code> and
<code>typing_extensions.is_protocol</code> (backport of CPython PR <a
href="https://github.com/python/typing_extensions/issues/104878">#104878</a>).
Patch by Jelle Zijlstra.</li>
<li><code>typing_extensions</code> now re-exports all names in the
standard library's
<code>typing</code> module, except the deprecated
<code>ByteString</code>. Patch by Jelle
Zijlstra.</li>
<li>Due to changes in the implementation of
<code>typing_extensions.Protocol</code>,
<code>typing.runtime_checkable</code> can now be used on
<code>typing_extensions.Protocol</code>
(previously, users had to use
<code>typing_extensions.runtime_checkable</code> if they
were using <code>typing_extensions.Protocol</code>).</li>
<li>Align the implementation of <code>TypedDict</code> with the
implementation in the
standard library on Python 3.9 and higher.
<code>typing_extensions.TypedDict</code> is now a function instead of a
class. The
private functions <code>_check_fails</code>, <code>_dict_new</code>, and
<code>_typeddict_new</code>
have been removed. <code>is_typeddict</code> now returns
<code>False</code> when called with
<code>TypedDict</code> itself as the argument. Patch by Jelle
Zijlstra.</li>
<li>Declare support for Python 3.12. Patch by Jelle Zijlstra.</li>
<li>Fix tests on Python 3.13, which removes support for creating
<code>TypedDict</code> classes through the keyword-argument syntax.
Patch by</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/python/typing_extensions/blob/main/CHANGELOG.md">typing-extensions's
changelog</a>.</em></p>
<blockquote>
<h1>Release 4.7.1 (July 2, 2023)</h1>
<ul>
<li>Fix support for <code>TypedDict</code>, <code>NamedTuple</code> and
<code>is_protocol</code> on PyPy-3.7 and
PyPy-3.8. Patch by Alex Waygood. Note that PyPy-3.7 and PyPy-3.8 are
unsupported
by the PyPy project. The next feature release of typing-extensions will
drop support for PyPy-3.7 and may also drop support for PyPy-3.8.</li>
</ul>
<h1>Release 4.7.0 (June 28, 2023)</h1>
<ul>
<li>This is expected to be the last feature release supporting Python
3.7,
which reaches its end of life on June 27, 2023. Version 4.8.0 will
support
only Python 3.8.0 and up.</li>
<li>Fix bug where a <code>typing_extensions.Protocol</code> class that
had one or more
non-callable members would raise <code>TypeError</code> when
<code>issubclass()</code>
was called against it, even if it defined a custom
<code>__subclasshook__</code>
method. The correct behaviour -- which has now been restored -- is not
to
raise <code>TypeError</code> in these situations if a custom
<code>__subclasshook__</code> method
is defined. Patch by Alex Waygood (backporting
<a
href="https://github.com/python/cpython/pull/105976">python/cpython#105976</a>).</li>
</ul>
<h1>Release 4.7.0rc1 (June 21, 2023)</h1>
<ul>
<li>Add <code>typing_extensions.get_protocol_members</code> and
<code>typing_extensions.is_protocol</code> (backport of CPython PR <a
href="https://github.com/python/typing_extensions/issues/104878">#104878</a>).
Patch by Jelle Zijlstra.</li>
<li><code>typing_extensions</code> now re-exports all names in the
standard library's
<code>typing</code> module, except the deprecated
<code>ByteString</code>. Patch by Jelle
Zijlstra.</li>
<li>Due to changes in the implementation of
<code>typing_extensions.Protocol</code>,
<code>typing.runtime_checkable</code> can now be used on
<code>typing_extensions.Protocol</code>
(previously, users had to use
<code>typing_extensions.runtime_checkable</code> if they
were using <code>typing_extensions.Protocol</code>).</li>
<li>Align the implementation of <code>TypedDict</code> with the
implementation in the
standard library on Python 3.9 and higher.
<code>typing_extensions.TypedDict</code> is now a function instead of a
class. The
private functions <code>_check_fails</code>, <code>_dict_new</code>, and
<code>_typeddict_new</code>
have been removed. <code>is_typeddict</code> now returns
<code>False</code> when called with
<code>TypedDict</code> itself as the argument. Patch by Jelle
Zijlstra.</li>
<li>Declare support for Python 3.12. Patch by Jelle Zijlstra.</li>
<li>Fix tests on Python 3.13, which removes support for creating
<code>TypedDict</code> classes through the keyword-argument syntax.
Patch by
Jelle Zijlstra.</li>
<li>Fix a regression introduced in v4.6.3 that meant that
<code>issubclass(object, typing_extensions.Protocol)</code> would
erroneously raise
<code>TypeError</code>. Patch by Alex Waygood (backporting the CPython
PR
<a
href="https://github.com/python/cpython/pull/105239">python/cpython#105239</a>).</li>
<li>Allow <code>Protocol</code> classes to inherit from
<code>typing_extensions.Buffer</code> or
<code>collections.abc.Buffer</code>. Patch by Alex Waygood (backporting
<a
href="https://github.com/python/cpython/pull/104827">python/cpython#104827</a>,
by Jelle Zijlstra).</li>
<li>Allow classes to inherit from both <code>typing.Protocol</code> and
<code>typing_extensions.Protocol</code></li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/python/typing_extensions/commit/b518f6a64400fd5a25e5b72668370b9792ef9ae6"><code>b518f6a</code></a>
Prepare release 4.7.1 (<a
href="https://github.com/python/typing_extensions/issues/264">#264</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/dcdc53f62ecbea8a0fc9a42f66746f970ab101bb"><code>dcdc53f</code></a>
Restore compatibility with PyPy &lt;3.9 (<a
href="https://github.com/python/typing_extensions/issues/262">#262</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/bc9bc065f1837955fca2fff57b9e5fa04a2713cb"><code>bc9bc06</code></a>
Run some mypyc tests in the third-party workflow (<a
href="https://github.com/python/typing_extensions/issues/260">#260</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/fc5243bc14071dbf65c92202a5239d66c35abcb2"><code>fc5243b</code></a>
Run tests on more pypy versions in CI (<a
href="https://github.com/python/typing_extensions/issues/259">#259</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/b3ddcb6a94e7935166b3786ed0c1c54f1fc541b3"><code>b3ddcb6</code></a>
Stop running third-party tests on 3.7 (<a
href="https://github.com/python/typing_extensions/issues/257">#257</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/633d2e2942372848d8d7859cf71a569259dba9ee"><code>633d2e2</code></a>
4.7.0 final (<a
href="https://github.com/python/typing_extensions/issues/255">#255</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/3193f90d18e50a19725ed47bb8fe586c234b9449"><code>3193f90</code></a>
CHANGELOG: Mention expected end of 3.7 support (<a
href="https://github.com/python/typing_extensions/issues/253">#253</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/e65b036661eb472a3682eca1ceb78eb57b21d200"><code>e65b036</code></a>
Backport CPython PR 105976 (<a
href="https://github.com/python/typing_extensions/issues/252">#252</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/e703629a339a670b44a3612f87bfa90a49c794f0"><code>e703629</code></a>
README improvements (<a
href="https://github.com/python/typing_extensions/issues/250">#250</a>)</li>
<li><a
href="https://github.com/python/typing_extensions/commit/a65658fcbc0a86e529e1c46a4eaa5fee4f150607"><code>a65658f</code></a>
Update CONTRIBUTING.md (<a
href="https://github.com/python/typing_extensions/issues/249">#249</a>)</li>
<li>Additional commits viewable in <a
href="https://github.com/python/typing_extensions/compare/4.4.0...4.7.1">compare
view</a></li>
</ul>
</details>
<br />

Updates `urllib3` from 1.26.12 to 2.0.4
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/urllib3/urllib3/releases">urllib3's
releases</a>.</em></p>
<blockquote>
<h2>2.0.4</h2>
<ul>
<li>Added support for union operators to <code>HTTPHeaderDict</code> (<a
href="https://github.com/urllib3/urllib3/issues/2254">#2254</a>)</li>
<li>Added <code>BaseHTTPResponse</code> to <code>urllib3.__all__</code>
(<a
href="https://github.com/urllib3/urllib3/issues/3078">#3078</a>)</li>
<li>Fixed <code>urllib3.connection.HTTPConnection</code> to raise the
<code>http.client.connect</code> audit event to have the same behavior
as the standard library HTTP client (<a
href="https://github.com/urllib3/urllib3/issues/2757">#2757</a>)</li>
<li>Relied on the standard library for checking hostnames in supported
PyPy releases (<a
href="https://github.com/urllib3/urllib3/issues/3087">#3087</a>)</li>
</ul>
<h2>2.0.3</h2>
<ul>
<li>Allowed alternative SSL libraries such as LibreSSL, while still
issuing a warning as we cannot help users facing issues with
implementations other than OpenSSL. <a
href="https://github.com/urllib3/urllib3/issues/3020">#3020</a></li>
<li>Deprecated URLs which don't have an explicit scheme <a
href="https://github.com/urllib3/urllib3/pull/2950">#2950</a></li>
<li>Fixed response decoding with Zstandard when compressed data is made
of several frames. <a
href="https://github.com/urllib3/urllib3/issues/3008">#3008</a></li>
<li>Fixed <code>assert_hostname=False</code> to correctly skip hostname
check. <a
href="https://github.com/urllib3/urllib3/issues/3051">#3051</a></li>
</ul>
<h2>2.0.2</h2>
<ul>
<li>Fixed <code>HTTPResponse.stream()</code> to continue yielding bytes
if buffered decompressed data was still available to be read even if the
underlying socket is closed. This prevents a compressed response from
being truncated. (<a
href="https://github.com/urllib3/urllib3/issues/3009">urllib3/urllib3#3009</a>)</li>
</ul>
<h2>2.0.1</h2>
<ul>
<li>Fixed a socket leak when fingerprint or hostname verifications fail.
(<a
href="https://github.com/urllib3/urllib3/issues/2991">#2991</a>)</li>
<li>Fixed an error when <code>HTTPResponse.read(0)</code> was the first
<code>read</code> call or when the internal response body buffer was
otherwise empty. (<a
href="https://github.com/urllib3/urllib3/issues/2998">#2998</a>)</li>
</ul>
<h2>2.0.0</h2>
<p>Read the <a
href="https://urllib3.readthedocs.io/en/latest/v2-migration-guide.html">v2.0
migration guide</a> for help upgrading to the latest version of
urllib3.</p>
<h1>Removed</h1>
<ul>
<li>Removed support for Python 2.7, 3.5, and 3.6 (<a
href="https://github.com/urllib3/urllib3/issues/883">#883</a>,
<a
href="https://github.com/urllib3/urllib3/issues/2336">#2336</a>).</li>
<li>Removed fallback on certificate <code>commonName</code> in
<code>match_hostname()</code> function. This behavior was deprecated in
May 2000 in RFC 2818. Instead only <code>subjectAltName</code> is used
to verify the hostname by default. To enable verifying the hostname
against <code>commonName</code> use
<code>SSLContext.hostname_checks_common_name = True</code> (<a
href="https://github.com/urllib3/urllib3/issues/2113">#2113</a>).</li>
<li>Removed support for Python with an <code>ssl</code> module compiled
with LibreSSL, CiscoSSL, wolfSSL, and all other OpenSSL alternatives.
Python is moving to require OpenSSL with PEP 644 (<a
href="https://github.com/urllib3/urllib3/issues/2168">#2168</a>).</li>
<li>Removed support for OpenSSL versions earlier than 1.1.1 or that
don't have SNI support. When an incompatible OpenSSL version is detected
an <code>ImportError</code> is raised (<a
href="https://github.com/urllib3/urllib3/issues/2168">#2168</a>).</li>
<li>Removed the list of default ciphers for OpenSSL 1.1.1+ and
SecureTransport as their own defaults are already secure (<a
href="https://github.com/urllib3/urllib3/issues/2082">#2082</a>).</li>
<li>Removed <code>urllib3.contrib.appengine.AppEngineManager</code> and
support for Google App Engine Standard Environment (<a
href="https://github.com/urllib3/urllib3/issues/2044">#2044</a>).</li>
<li>Removed deprecated <code>Retry</code> options
<code>method_whitelist</code>,
<code>DEFAULT_REDIRECT_HEADERS_BLACKLIST</code> (<a
href="https://github.com/urllib3/urllib3/issues/2086">#2086</a>).</li>
<li>Removed <code>urllib3.HTTPResponse.from_httplib</code> (<a
href="https://github.com/urllib3/urllib3/issues/2648">#2648</a>).</li>
<li>Removed default value of <code>None</code> for the
<code>request_context</code> parameter of
<code>urllib3.PoolManager.connection_from_pool_key</code>. This change
should have no effect on users as the default value of <code>None</code>
was an invalid option and was never used (<a
href="https://github.com/urllib3/urllib3/issues/1897">#1897</a>).</li>
<li>Removed the <code>urllib3.request</code> module.
<code>urllib3.request.RequestMethods</code> has been made a private API.
This change was made to ensure that <code>from urllib3 import
request</code> imported the top-level <code>request()</code> function
instead of the <code>urllib3.request</code> module (<a
href="https://github.com/urllib3/urllib3/issues/2269">#2269</a>).</li>
<li>Removed support for SSLv3.0 from the
<code>urllib3.contrib.pyopenssl</code> even when support is available
from the compiled OpenSSL library (<a
href="https://github.com/urllib3/urllib3/issues/2233">#2233</a>).</li>
<li>Removed the deprecated <code>urllib3.contrib.ntlmpool</code> module
(<a
href="https://github.com/urllib3/urllib3/issues/2339">#2339</a>).</li>
<li>Removed <code>DEFAULT_CIPHERS</code>, <code>HAS_SNI</code>,
<code>USE_DEFAULT_SSLCONTEXT_CIPHERS</code>, from the private module
<code>urllib3.util.ssl_</code> (<a
href="https://github.com/urllib3/urllib3/issues/2168">#2168</a>).</li>
<li>Removed <code>urllib3.exceptions.SNIMissingWarning</code> (<a
href="https://github.com/urllib3/urllib3/issues/2168">#2168</a>).</li>
<li>Removed the <code>_prepare_conn</code> method from
<code>HTTPConnectionPool</code>. Previously this was only used to call
<code>HTTPSConnection.set_cert()</code> by
<code>HTTPSConnectionPool</code> (<a
href="https://github.com/urllib3/urllib3/issues/1985">#1985</a>).</li>
<li>Removed <code>tls_in_tls_required</code> property from
<code>HTTPSConnection</code>. This is now determined from the
<code>scheme</code> parameter in
<code>HTTPConnection.set_tunnel()</code> (<a
href="https://github.com/urllib3/urllib3/issues/1985">#1985</a>).</li>
</ul>
<h1>Deprecated</h1>
<ul>
<li>Deprecated <code>HTTPResponse.getheaders()</code> and
<code>HTTPResponse.getheader()</code> which will be removed in urllib3
v2.1.0. Instead use <code>HTTPResponse.headers</code> and
<code>HTTPResponse.headers.get(name, default)</code>. (<a
href="https://github.com/urllib3/urllib3/issues/1543">#1543</a>,
<a
href="https://github.com/urllib3/urllib3/issues/2814">#2814</a>).</li>
<li>Deprecated <code>urllib3.contrib.pyopenssl</code> module which will
be removed in urllib3 v2.1.0 (<a
href="https://github.com/urllib3/urllib3/issues/2691">#2691</a>).</li>
<li>Deprecated <code>urllib3.contrib.securetransport</code> module which
will be removed in urllib3 v2.1.0 (<a
href="https://github.com/urllib3/urllib3/issues/2692">#2692</a>).</li>
<li>Deprecated <code>ssl_version</code> option in favor of
<code>ssl_minimum_version</code>. <code>ssl_version</code> will be
removed in urllib3 v2.1.0 (<a
href="https://github.com/urllib3/urllib3/issues/2110">#2110</a>).</li>
<li>Deprecated the <code>strict</code> parameter as it's not longer
needed in Python 3.x. It will be removed in urllib3 v2.1.0 (<a
href="https://github.com/urllib3/urllib3/issues/2267">#2267</a>)</li>
<li>Deprecated the <code>NewConnectionError.pool</code> attribute which
will be removed in urllib3 v2.1.0 (<a
href="https://github.com/urllib3/urllib3/issues/2271">#2271</a>).</li>
<li>Deprecated <code>format_header_param_html5</code> and
<code>format_header_param</code> in favor of
<code>format_multipart_header_param</code> (<a
href="https://github.com/urllib3/urllib3/issues/2257">#2257</a>).</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/urllib3/urllib3/blob/main/CHANGES.rst">urllib3's
changelog</a>.</em></p>
<blockquote>
<h1>2.0.4 (2023-07-19)</h1>
<ul>
<li>Added support for union operators to <code>HTTPHeaderDict</code>
(<code>[#2254](urllib3/urllib3#2254)
&lt;https://github.com/urllib3/urllib3/issues/2254&gt;</code>__)</li>
<li>Added <code>BaseHTTPResponse</code> to <code>urllib3.__all__</code>
(<code>[#3078](urllib3/urllib3#3078)
&lt;https://github.com/urllib3/urllib3/issues/3078&gt;</code>__)</li>
<li>Fixed <code>urllib3.connection.HTTPConnection</code> to raise the
<code>http.client.connect</code> audit event to have the same behavior
as the standard library HTTP client
(<code>[#2757](urllib3/urllib3#2757)
&lt;https://github.com/urllib3/urllib3/issues/2757&gt;</code>__)</li>
<li>Relied on the standard library for checking hostnames in supported
PyPy releases
(<code>[#3087](urllib3/urllib3#3087)
&lt;https://github.com/urllib3/urllib3/issues/3087&gt;</code>__)</li>
</ul>
<h1>2.0.3 (2023-06-07)</h1>
<ul>
<li>Allowed alternative SSL libraries such as LibreSSL, while still
issuing a warning as we cannot help users facing issues with
implementations other than OpenSSL.
(<code>[#3020](urllib3/urllib3#3020)
&lt;https://github.com/urllib3/urllib3/issues/3020&gt;</code>__)</li>
<li>Deprecated URLs which don't have an explicit scheme
(<code>[#2950](urllib3/urllib3#2950)
&lt;https://github.com/urllib3/urllib3/pull/2950&gt;</code>_)</li>
<li>Fixed response decoding with Zstandard when compressed data is made
of several frames.
(<code>[#3008](urllib3/urllib3#3008)
&lt;https://github.com/urllib3/urllib3/issues/3008&gt;</code>__)</li>
<li>Fixed <code>assert_hostname=False</code> to correctly skip hostname
check. (<code>[#3051](urllib3/urllib3#3051)
&lt;https://github.com/urllib3/urllib3/issues/3051&gt;</code>__)</li>
</ul>
<h1>2.0.2 (2023-05-03)</h1>
<ul>
<li>Fixed <code>HTTPResponse.stream()</code> to continue yielding bytes
if buffered decompressed data
was still available to be read even if the underlying socket is closed.
This prevents
a compressed response from being truncated.
(<code>[#3009](urllib3/urllib3#3009)
&lt;https://github.com/urllib3/urllib3/issues/3009&gt;</code>__)</li>
</ul>
<h1>2.0.1 (2023-04-30)</h1>
<ul>
<li>Fixed a socket leak when fingerprint or hostname verifications fail.
(<code>[#2991](urllib3/urllib3#2991)
&lt;https://github.com/urllib3/urllib3/issues/2991&gt;</code>__)</li>
<li>Fixed an error when <code>HTTPResponse.read(0)</code> was the first
<code>read</code> call or when the internal response body buffer was
otherwise empty.
(<code>[#2998](urllib3/urllib3#2998)
&lt;https://github.com/urllib3/urllib3/issues/2998&gt;</code>__)</li>
</ul>
<h1>2.0.0 (2023-04-26)</h1>
<p>Read the <code>v2.0 migration guide
&lt;https://urllib3.readthedocs.io/en/latest/v2-migration-guide.html&gt;</code>__
for help upgrading to the latest version of urllib3.</p>
<h2>Removed</h2>
<ul>
<li>Removed support for Python 2.7, 3.5, and 3.6
(<code>[#883](urllib3/urllib3#883)
&lt;https://github.com/urllib3/urllib3/issues/883&gt;</code><strong>,
<code>[#2336](urllib3/urllib3#2336)
&lt;https://github.com/urllib3/urllib3/issues/2336&gt;</code></strong>).</li>
<li>Removed fallback on certificate <code>commonName</code> in
<code>match_hostname()</code> function.
This behavior was deprecated in May 2000 in RFC 2818. Instead only
<code>subjectAltName</code>
is used to verify the hostname by default. To enable verifying the
hostname against
<code>commonName</code> use <code>SSLContext.hostname_checks_common_name
= True</code>
(<code>[#2113](urllib3/urllib3#2113)
&lt;https://github.com/urllib3/urllib3/issues/2113&gt;</code>__).</li>
<li>Removed support for Python with an <code>ssl</code> module compiled
with LibreSSL, CiscoSSL,
wolfSSL, and all other OpenSSL alternatives. Python is moving to require
OpenSSL with PEP 644
(<code>[#2168](urllib3/urllib3#2168)
&lt;https://github.com/urllib3/urllib3/issues/2168&gt;</code>__).</li>
<li>Removed support for OpenSSL versions earlier than 1.1.1 or that
don't have SNI support.
When an incompatible OpenSSL version is detected an
<code>ImportError</code> is raised
(<code>[#2168](urllib3/urllib3#2168)
&lt;https://github.com/urllib3/urllib3/issues/2168&gt;</code>__).</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/urllib3/urllib3/commit/c9fa144545eedb5dc4a2cc3f255e95602a1d7db0"><code>c9fa144</code></a>
Release version 2.0.4 (<a
href="https://github.com/urllib3/urllib3/issues/3084">#3084</a>)</li>
<li><a
href="https://github.com/urllib3/urllib3/commit/d40d146765a7f7a899427c8add54de67b4b6599a"><code>d40d146</code></a>
Add Illia to CODEOWNERS</li>
<li><a
href="https://github.com/urllib3/urllib3/commit/0a375d19243efb08c9d8a0f3356701ca11ef9791"><code>0a375d1</code></a>
Raise <code>http.client.connect</code> audit events in
<code>HTTPConnection</code> (<a
href="https://github.com/urllib3/urllib3/issues/2859">#2859</a>)</li>
<li><a
href="https://github.com/urllib3/urllib3/commit/c056eb3df6aae4d1dff0365baded46235d413520"><code>c056eb3</code></a>
Bump actions/setup-python from 4.6.0 to 4.7.0</li>
<li><a
href="https://github.com/urllib3/urllib3/commit/a1c184b298823f13dd34c783d56ea538848282f1"><code>a1c184b</code></a>
Remove warnings filters fixed in pytest 7.4.0 (<a
href="https://github.com/urllib3/urllib3/issues/3086">#3086</a>)</li>
<li><a
href="https://github.com/urllib3/urllib3/commit/609c5464cc9d2673549b651b713e07424517fa85"><code>609c546</code></a>
Add support for union operators to <code>HTTPHeaderDict</code> (<a
href="https://github.com/urllib3/urllib3/issues/2943">#2943</a>)</li>
<li><a
href="https://github.com/urllib3/urllib3/commit/05b21ca5d29764aae60c72e4e3bfceead0f70f95"><code>05b21ca</code></a>
Bump cryptography from 41.0.0 to 41.0.2</li>
<li><a
href="https://github.com/urllib3/urllib3/commit/9aa0d4f6cb0d4b34e20fafed4481ac7d785d4969"><code>9aa0d4f</code></a>
Bump cryptography from 39.0.1 to 41.0.0 (<a
href="https://github.com/urllib3/urllib3/issues/3057">#3057</a>)</li>
<li><a
href="https://github.com/urllib3/urllib3/commit/326c4238cbabe85007aa7b1f2e80b880fd01d903"><code>326c423</code></a>
Rely on the standard library for checking hostnames in supported PyPy
releases</li>
<li><a
href="https://github.com/urllib3/urllib3/commit/d0ac08d58511c4121138bd46436076409d21acbf"><code>d0ac08d</code></a>
Bump gh-action-pypi-publish to v1.8.8</li>
<li>Additional commits viewable in <a
href="https://github.com/urllib3/urllib3/compare/1.26.12...2.0.4">compare
view</a></li>
</ul>
</details>
<br />

Updates `wrapt` from 1.14.1 to 1.15.0
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/GrahamDumpleton/wrapt/blob/develop/docs/changes.rst">wrapt's
changelog</a>.</em></p>
<blockquote>
<h2>Version 1.15.0</h2>
<p><strong>Bugs Fixed</strong></p>
<ul>
<li>
<p>When the C extension for wrapt was being used, and a property was
used on an
object proxy wrapping another object to intercept access to an attribute
of
the same name on the wrapped object, if the function implementing the
property
raised an exception, then the exception was ignored and not propagated
back to
the caller. What happened instead was that the original value of the
attribute
from the wrapped object was returned, thus silently suppressing that an
exception had occurred in the wrapper. This behaviour was not happening
when
the pure Python version of wrapt was being used, with it raising the
exception. The pure Python and C extension implementations thus did not
behave
the same.</p>
<p>Note that in the specific case that the exception raised is
AttributeError it
still wouldn't be raised. This is the case for both Python and C
extension
implementations. If a wrapper for an attribute internally raises an
AttributeError for some reason, the wrapper should if necessary catch
the
exception and deal with it, or propagate it as a different exception
type if
it is important that an exception still be passed back.</p>
</li>
<li>
<p>Address issue where the post import hook mechanism of wrapt wasn't
transparent
and left the <code>__loader__</code> and <code>__spec__.loader</code>
attributes of a module as
the wrapt import hook loader and not the original loader. That the
original
loader wasn't preserved could interfere with code which needed access to
the
original loader.</p>
</li>
<li>
<p>Address issues where a thread deadlock could occur within the wrapt
module
import handler, when code executed from a post import hook created a new
thread and code executed in the context of the new thread itself tried
to
register a post import hook, or imported a new module.</p>
</li>
<li>
<p>When using <code>CallableObjectProxy</code> as a wrapper for a type
or function and
calling the wrapped object, it was not possible to pass a keyword
argument
named <code>self</code>. This only occurred when using the pure Python
version of wrapt
and did not occur when using the C extension based implementation.</p>
</li>
<li>
<p>When using <code>PartialCallableObjectProxy</code> as a wrapper for a
type or function,
when constructing the partial object and when calling the partial
object, it
was not possible to pass a keyword argument named <code>self</code>.
This only occurred
when using the pure Python version of wrapt and did not occur when using
the C
extension based implementation.</p>
</li>
<li>
<p>When using <code>FunctionWrapper</code> as a wrapper for a type or
function and calling
the wrapped object, it was not possible to pass a keyword argument named
<code>self</code>. Because <code>FunctionWrapper</code> is also used by
decorators, this also
affected decorators on functions and class types. A similar issue also
arose
when these were applied to class and instance methods where binding
occurred</p>
</li>
</ul>
<!-- raw HTML omitted -->
</blockquote>
<p>... (truncated)</p>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="https://github.com/GrahamDumpleton/wrapt/commit/0634a79c934e4bbf11b4081d3f1610588d7ae4a6"><code>0634a79</code></a>
Merge branch 'release/1.15.0'</li>
<li><a
href="https://github.com/GrahamDumpleton/wrapt/commit/ba845c6793eab868cad957b2763fa121333fdfc1"><code>ba845c6</code></a>
Update version to 1.15.0 for release.</li>
<li><a
href="https://github.com/GrahamDumpleton/wrapt/commit/d446a4f340b93fed41dfe884aa0311195b301f16"><code>d446a4f</code></a>
Remove egg info directory.</li>
<li><a
href="https://github.com/GrahamDumpleton/wrapt/commit/c11181dc7b891c9e59391a24379f89a8cdac9092"><code>c11181d</code></a>
Set version to 1.15.0rc1 for release.</li>
<li><a
href="https://github.com/GrahamDumpleton/wrapt/commit/3a6a771877c934a740e4de538fbbddb4498ffd24"><code>3a6a771</code></a>
Need to install wheel package for bdist_wheel.</li>
<li><a
href="https://github.com/GrahamDumpleton/wrapt/commit/bb8d37af60eea5204fdf32f76c9f00b971a381bb"><code>bb8d37a</code></a>
Attempt to build a pure Python source wheel.</li>
<li><a
href="https://github.com/GrahamDumpleton/wrapt/commit/511a8cec1d19486ed12c5f18ee74f52f6c0e7e06"><code>511a8ce</code></a>
Remove .tox directory when doing clean.</li>
<li><a
href="https://github.com/GrahamDumpleton/wrapt/commit/32a07205a41020019add7a9e4e9bbf2def1d5aaf"><code>32a0720</code></a>
Fix issues when using keyword argument named self with weak function
proxy.</li>
<li><a
href="https://github.com/GrahamDumpleton/wrapt/commit/4e09f7ac1d8e936a707ad33f84edb55c248a144c"><code>4e09f7a</code></a>
Fix issues when using keyword argument named self with function wrappers
and ...</li>
<li><a
href="https://github.com/GrahamDumpleton/wrapt/commit/ee6bab6989fdcf1eeedf1601f8f23fcff3e95730"><code>ee6bab6</code></a>
On Python 2 the format of exception differs to Python 3.</li>
<li>Additional commits viewable in <a
href="https://github.com/GrahamDumpleton/wrapt/compare/1.14.1...1.15.0">compare
view</a></li>
</ul>
</details>
<br />


Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually


</details>

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants