]> git.ipfire.org Git - thirdparty/tornado.git/log
thirdparty/tornado.git
13 months agoweb: More accurate typing for get_cookie 3404/head
Yuemao Xu (yuemxu) [Mon, 17 Jun 2024 10:27:20 +0000 (12:27 +0200)] 
web: More accurate typing for get_cookie

13 months agoMerge pull request #3358 from stefanor/relative-pythonpath
Ben Darnell [Wed, 12 Jun 2024 15:06:57 +0000 (11:06 -0400)] 
Merge pull request #3358 from stefanor/relative-pythonpath

autoreload_test: Handle a relative PYTHONPATH

13 months agoMerge pull request #3402 from bdarnell/update-sphinx
Ben Darnell [Wed, 12 Jun 2024 14:04:06 +0000 (10:04 -0400)] 
Merge pull request #3402 from bdarnell/update-sphinx

docs: Update sphinx (and the rest of the deps)

13 months agoMerge pull request #3395 from bdarnell/test-313b2
Ben Darnell [Wed, 12 Jun 2024 13:59:18 +0000 (09:59 -0400)] 
Merge pull request #3395 from bdarnell/test-313b2

process_test: Remove compatibility hack for python 3.13 beta 1

13 months agodocs: Sync readthedocs python version with tox.ini 3402/head
Ben Darnell [Wed, 12 Jun 2024 13:57:44 +0000 (09:57 -0400)] 
docs: Sync readthedocs python version with tox.ini

13 months agodocs: Remove empty testoutput blocks
Ben Darnell [Wed, 12 Jun 2024 02:21:20 +0000 (22:21 -0400)] 
docs: Remove empty testoutput blocks

These were once needed (I think) to get the tests to run at all, even
though they triggered warnings from sphinx. Now it works without them.

13 months agodocs: Add sphinx coverage check to docs tox build
Ben Darnell [Wed, 12 Jun 2024 02:01:42 +0000 (22:01 -0400)] 
docs: Add sphinx coverage check to docs tox build

13 months agodocs: Update sphinx (and the rest of the deps)
Ben Darnell [Wed, 12 Jun 2024 01:35:51 +0000 (21:35 -0400)] 
docs: Update sphinx (and the rest of the deps)

Remove pin to sphinx 5.x and remove sphinx-asyncio. Sphinx now supports
asyncio out of the box. Everything I've checked looks fine although I
haven't looked at every page.

Fixes #3239

13 months agoMerge pull request #3400 from bdarnell/update-lint
Ben Darnell [Wed, 12 Jun 2024 01:32:57 +0000 (21:32 -0400)] 
Merge pull request #3400 from bdarnell/update-lint

lint: Update flake8 and friends

13 months agoMerge pull request #3399 from bdarnell/default-encoding
Ben Darnell [Wed, 12 Jun 2024 01:21:13 +0000 (21:21 -0400)] 
Merge pull request #3399 from bdarnell/default-encoding

test: Address warnings about using the default encoding

13 months agolint: Update flake8 and friends 3400/head
Ben Darnell [Wed, 12 Jun 2024 01:20:20 +0000 (21:20 -0400)] 
lint: Update flake8 and friends

Use "is" instead of "==" for type comparisons.

13 months agotest: Address warnings about using the default encoding 3399/head
Ben Darnell [Wed, 12 Jun 2024 01:09:34 +0000 (21:09 -0400)] 
test: Address warnings about using the default encoding

I'm not sure exactly how these warnings are getting logged without
causing the build to fail, but they are.

13 months agoMerge pull request #3398 from bdarnell/skip-test-mac-curl
Ben Darnell [Tue, 11 Jun 2024 17:30:28 +0000 (13:30 -0400)] 
Merge pull request #3398 from bdarnell/skip-test-mac-curl

test: Skip a closed connection test with curl and macOS

13 months agotest: Skip a closed connection test with curl and macOS 3398/head
Ben Darnell [Tue, 11 Jun 2024 17:25:19 +0000 (13:25 -0400)] 
test: Skip a closed connection test with curl and macOS

Unclear what the issue is but skip the test for now.

13 months agoMerge pull request #3397 from bdarnell/rm-twisted-resolver
Ben Darnell [Tue, 11 Jun 2024 17:01:44 +0000 (13:01 -0400)] 
Merge pull request #3397 from bdarnell/rm-twisted-resolver

twisted: Delete TwistedResolver class

13 months agotwisted: Delete TwistedResolver class 3397/head
Ben Darnell [Tue, 11 Jun 2024 16:16:55 +0000 (12:16 -0400)] 
twisted: Delete TwistedResolver class

This class was deprecated and slated for deletion in Tornado 7.0.
However, it has become broken due to the adoption of RFC 8482
(which limits the use of the ANY query type in DNS) and it now fails
for most domain names (with the exception of localhost).
The upstream issue https://github.com/twisted/twisted/issues/10062
has been open for years which is a pretty good sign that no one
is depending on this class and it's safe to remove it ahead of
schedule.

This class was primarily intended to provide thread-free non-blocking
DNS resolution. If that is still required,
`tornado.platform.caresresolver` is the next best option, although it
has its own limitations which differ from TwistedResolver.

13 months agoprocess_test: Remove compatibility hack for python 3.13 beta 1 3395/head
Ben Darnell [Mon, 10 Jun 2024 16:09:20 +0000 (12:09 -0400)] 
process_test: Remove compatibility hack for python 3.13 beta 1

13 months agoMerge pull request #3396 from bdarnell/fix-test-lint
Ben Darnell [Mon, 10 Jun 2024 16:28:12 +0000 (12:28 -0400)] 
Merge pull request #3396 from bdarnell/fix-test-lint

test: Fix some lint issues after #3298

13 months agotest: Fix some lint issues after #3298 3396/head
Ben Darnell [Mon, 10 Jun 2024 16:22:54 +0000 (12:22 -0400)] 
test: Fix some lint issues after #3298

That PR arrived while our CI was broken and I
manually verified that the tests passed but didn't
run the linters. These changes are running in to
https://github.com/python/mypy/issues/5088

13 months agoRefactor test cases to improve unit test quality (#3298)
Han Wang [Sat, 8 Jun 2024 18:09:27 +0000 (04:09 +1000)] 
Refactor test cases to improve unit test quality (#3298)

* refactor the code to avoid suboptimal asserts.

* Handle ParseError with assertRaises

Signed-off-by: Han Wang <freddie.wanah@gmail.com>
13 months agoMerge pull request #3394 from bdarnell/python-versions
Ben Darnell [Sat, 8 Jun 2024 17:56:17 +0000 (13:56 -0400)] 
Merge pull request #3394 from bdarnell/python-versions

Add python 3.13 betas to test configs

13 months agoprocess_test: Remove reference to deleted LayeredTwistedIOLoop 3394/head
Ben Darnell [Sat, 8 Jun 2024 01:25:29 +0000 (21:25 -0400)] 
process_test: Remove reference to deleted LayeredTwistedIOLoop

13 months agoutil: Remove pre-py35 is_finalizing compatibility
Ben Darnell [Fri, 7 Jun 2024 20:36:52 +0000 (16:36 -0400)] 
util: Remove pre-py35 is_finalizing compatibility

This code appears to be unused and in any case is unnecessary since
is_finalizing has been in the standard library since 3.5.

13 months agoAdd python 3.13 betas to test configs
Ben Darnell [Fri, 7 Jun 2024 20:20:54 +0000 (16:20 -0400)] 
Add python 3.13 betas to test configs

Belatedly promote 3.12 to non-beta status

13 months agoMerge pull request #3393 from bdarnell/typing
Ben Darnell [Fri, 7 Jun 2024 20:03:17 +0000 (16:03 -0400)] 
Merge pull request #3393 from bdarnell/typing

Update mypy and various typing improvements

13 months agoconcurrent: Update type hint on chain_future to match implementation 3393/head
Ben Darnell [Fri, 7 Jun 2024 19:54:08 +0000 (15:54 -0400)] 
concurrent: Update type hint on chain_future to match implementation

This method has always accepted both asyncio and concurrent futures,
but the type hint incorrectly indicated that it only accepted asyncio
futures.

Fixes #3314

13 months agoweb: Improve typing for UIModule.render
Ben Darnell [Fri, 7 Jun 2024 19:23:45 +0000 (15:23 -0400)] 
web: Improve typing for UIModule.render

In practice, UIModule.render often returns the
result of self.render_string, which returns bytes.
In fact, we have an example of that in this file
which had a type ignore comment. UIModule.render
may now return either str or bytes and downstream
code is responsible for handling this. (Note that
the new call to _unicode appears to be redundant
since the Template module's bytes return was
already working correctly, but this conversion is
necessary to satisfy the type checker.)

Fixes #3050

13 months agoMerge pull request #3378 from pcavalar/typing-get-body-query-argument
Ben Darnell [Fri, 7 Jun 2024 19:16:44 +0000 (15:16 -0400)] 
Merge pull request #3378 from pcavalar/typing-get-body-query-argument

web: More accurate typing for get_{body,query}_argument()

13 months agoMerge pull request #3381 from pcavalar/typing-loader-autoescape
Ben Darnell [Fri, 7 Jun 2024 19:06:08 +0000 (15:06 -0400)] 
Merge pull request #3381 from pcavalar/typing-loader-autoescape

template: type BaseLoader autoescape kwarg as optional

13 months agoMerge pull request #3330 from mslynch/use-typing-namedtuple
Ben Darnell [Fri, 7 Jun 2024 19:00:43 +0000 (15:00 -0400)] 
Merge pull request #3330 from mslynch/use-typing-namedtuple

use typing.NamedTuple instead of collections.namedtuple

13 months agoweb: Type SUPPORTED_METHODS so it can be overridden
Ben Darnell [Fri, 7 Jun 2024 18:51:34 +0000 (14:51 -0400)] 
web: Type SUPPORTED_METHODS so it can be overridden

Its default type is `Tuple[str, str, str, str, str, str, str]`, which
can only be overridden by a tuple of the exact same length.

This change originated in #3354 (thanks alexmv and andersk).

Closes #3354

13 months agohttputil: Add types for elements of HTTPHeaders
Ben Darnell [Fri, 7 Jun 2024 18:42:28 +0000 (14:42 -0400)] 
httputil: Add types for elements of HTTPHeaders

Revealed an issue in websocket.py in which bytes were used when it
should have been str. This avoided being a bug because something
down the line was converting it to str but it was still a logical
type error.

The change to httputil.py was taken from #3329 (thanks mslynch).

Closes #3329
Fixes #3328

13 months agoUpdate mypy and typing packages to latest
Ben Darnell [Fri, 7 Jun 2024 18:28:07 +0000 (14:28 -0400)] 
Update mypy and typing packages to latest

Adapt to newer upstream types for AbstractEventLoop

13 months agoMerge pull request #3389 from bdarnell/bump-65
Ben Darnell [Thu, 6 Jun 2024 19:06:21 +0000 (15:06 -0400)] 
Merge pull request #3389 from bdarnell/bump-65

Version bump for 6.5.dev1

13 months agoVersion bump for 6.5.dev1 3389/head
Ben Darnell [Thu, 6 Jun 2024 18:56:51 +0000 (14:56 -0400)] 
Version bump for 6.5.dev1

13 months agoMerge pull request #3388 from bdarnell/release-641 v6.4.1
Ben Darnell [Thu, 6 Jun 2024 18:11:31 +0000 (14:11 -0400)] 
Merge pull request #3388 from bdarnell/release-641

Release notes and version bump for version 6.4.1

13 months agoRelease notes and version bump for version 6.4.1 3388/head
Ben Darnell [Thu, 6 Jun 2024 17:56:41 +0000 (13:56 -0400)] 
Release notes and version bump for version 6.4.1

13 months agoMerge pull request #3387 from bdarnell/chunked-parsing
Ben Darnell [Thu, 6 Jun 2024 17:40:06 +0000 (13:40 -0400)] 
Merge pull request #3387 from bdarnell/chunked-parsing

http1connection: Stricter handling of transfer-encoding and whitespace

13 months agohttputil: Only strip tabs and spaces from header values 3387/head
Ben Darnell [Wed, 5 Jun 2024 20:50:37 +0000 (16:50 -0400)] 
httputil: Only strip tabs and spaces from header values

The RFC specifies that only tabs and spaces should be stripped.
Removing additonal whitespace characters can lead to framing
errors with certain proxies.

13 months agoMerge pull request #3386 from bdarnell/curl-crlf
Ben Darnell [Thu, 6 Jun 2024 17:31:17 +0000 (13:31 -0400)] 
Merge pull request #3386 from bdarnell/curl-crlf

curl_httpclient,http1connection: Prohibit CR and LF in headers

13 months agohttp1connection: Stricter handling of transfer-encoding
Ben Darnell [Wed, 5 Jun 2024 20:50:11 +0000 (16:50 -0400)] 
http1connection: Stricter handling of transfer-encoding

Unexpected transfer-encoding values were previously ignored and treated
as the HTTP/1.0 default of read-until-close. This can lead to framing
issues with certain proxies. We now treat any unexpected value as an
error.

13 months agocurl_httpclient,http1connection: Prohibit CR and LF in headers 3386/head
Ben Darnell [Wed, 5 Jun 2024 19:43:45 +0000 (15:43 -0400)] 
curl_httpclient,http1connection: Prohibit CR and LF in headers

libcurl does not check for CR and LF in headers, making this the
application's responsibility. However, Tornado's other HTTP interfaces
check for linefeeds so we should do the same here so that switching
between the simple and curl http clients does not introduce header
injection vulnerabilties.

http1connection previously checked only for LF in headers (alone or in a
CRLF pair). It now prohibits bare CR as well, following the requirement
in RFC 9112.

13 months agoMerge pull request #3385 from bdarnell/update-black
Ben Darnell [Tue, 4 Jun 2024 18:25:10 +0000 (14:25 -0400)] 
Merge pull request #3385 from bdarnell/update-black

*: Update black

13 months agoMerge pull request #3384 from tornadoweb/dependabot/pip/requests-2.32.2
Ben Darnell [Tue, 4 Jun 2024 18:24:45 +0000 (14:24 -0400)] 
Merge pull request #3384 from tornadoweb/dependabot/pip/requests-2.32.2

build(deps): bump requests from 2.31.0 to 2.32.2

13 months ago*: Update black 3385/head
Ben Darnell [Tue, 4 Jun 2024 18:19:52 +0000 (14:19 -0400)] 
*: Update black

Closes #3367

13 months agobuild(deps): bump requests from 2.31.0 to 2.32.2 3384/head
dependabot[bot] [Tue, 4 Jun 2024 18:09:16 +0000 (18:09 +0000)] 
build(deps): bump requests from 2.31.0 to 2.32.2

Bumps [requests](https://github.com/psf/requests) from 2.31.0 to 2.32.2.
- [Release notes](https://github.com/psf/requests/releases)
- [Changelog](https://github.com/psf/requests/blob/main/HISTORY.md)
- [Commits](https://github.com/psf/requests/compare/v2.31.0...v2.32.2)

---
updated-dependencies:
- dependency-name: requests
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
13 months agoMerge pull request #3377 from tornadoweb/dependabot/pip/jinja2-3.1.4
Ben Darnell [Tue, 4 Jun 2024 18:07:43 +0000 (14:07 -0400)] 
Merge pull request #3377 from tornadoweb/dependabot/pip/jinja2-3.1.4

build(deps): bump jinja2 from 3.1.3 to 3.1.4

13 months agoMerge pull request #3383 from bdarnell/ci-update
Ben Darnell [Tue, 4 Jun 2024 18:02:51 +0000 (14:02 -0400)] 
Merge pull request #3383 from bdarnell/ci-update

ci: Update action versions for node deprecation

13 months agoci: Update action versions for node deprecation 3383/head
Ben Darnell [Tue, 4 Jun 2024 01:05:22 +0000 (21:05 -0400)] 
ci: Update action versions for node deprecation

The changes to checkout and setup-python shouldn't have been major
version bumps. upload-artifact and download-artifact should have had
updated node versions on v3 so we don't have to adapt to incompatible
changes here. But anyway, here we are.

build.yml has updates from
https://github.com/pypa/cibuildwheel/blob/main/examples/github-deploy.yml

This commit also moves the pypi upload step to use OIDC instead of
a static token.

13 months agoMerge pull request #3382 from bdarnell/remove-testmethodwrapper
Ben Darnell [Mon, 3 Jun 2024 20:38:31 +0000 (16:38 -0400)] 
Merge pull request #3382 from bdarnell/remove-testmethodwrapper

testing: Replace _TestMethodWrapper with _callTestMethod

13 months agotesting: Replace _TestMethodWrapper with _callTestMethod 3382/head
Ben Darnell [Mon, 3 Jun 2024 19:49:59 +0000 (15:49 -0400)] 
testing: Replace _TestMethodWrapper with _callTestMethod

Overriding _callTestMethod (which was introduced in python 3.8) is a
less hacky way to detect tests that fail to use ``@gen_test`` where
needed. It's not documented, but since Python 3.11 has introduced a
similar check to the standard library we'll be able to remove it in the
near future.

The major impetus for this change is an incompatibility with
Pytest 8.2, which has made a change that tries to instantiate test
classes at discovery time without an existing method name.

Fixes #3375
Closes #3374

14 months agotemplate: type BaseLoader autoescape kwarg as optional 3381/head
Philippe Cavalaria [Tue, 28 May 2024 08:54:08 +0000 (10:54 +0200)] 
template: type BaseLoader autoescape kwarg as optional

14 months agoweb: More accurate typing for get_{body,query}_argument() 3378/head
Philippe Cavalaria [Fri, 17 May 2024 10:41:44 +0000 (12:41 +0200)] 
web: More accurate typing for get_{body,query}_argument()

Use the same overload technique as get_argument().

Fixes https://github.com/tornadoweb/tornado/issues/3336

14 months agobuild(deps): bump jinja2 from 3.1.3 to 3.1.4 3377/head
dependabot[bot] [Mon, 6 May 2024 20:43:46 +0000 (20:43 +0000)] 
build(deps): bump jinja2 from 3.1.3 to 3.1.4

Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.3 to 3.1.4.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.1.3...3.1.4)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
15 months agoMerge pull request #3371 from tornadoweb/dependabot/pip/idna-3.7
Ben Darnell [Fri, 12 Apr 2024 14:24:33 +0000 (10:24 -0400)] 
Merge pull request #3371 from tornadoweb/dependabot/pip/idna-3.7

build(deps): bump idna from 3.4 to 3.7

15 months agobuild(deps): bump idna from 3.4 to 3.7 3371/head
dependabot[bot] [Fri, 12 Apr 2024 01:57:06 +0000 (01:57 +0000)] 
build(deps): bump idna from 3.4 to 3.7

Bumps [idna](https://github.com/kjd/idna) from 3.4 to 3.7.
- [Release notes](https://github.com/kjd/idna/releases)
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.rst)
- [Commits](https://github.com/kjd/idna/compare/v3.4...v3.7)

---
updated-dependencies:
- dependency-name: idna
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
16 months agoMerge pull request #3357 from danigm/openssl-3.2
Ben Darnell [Sun, 3 Mar 2024 17:04:16 +0000 (12:04 -0500)] 
Merge pull request #3357 from danigm/openssl-3.2

OpenSSL 3.2 compatibility

18 months agoautoreload_test: Handle a relative PYTHONPATH 3358/head
Stefano Rivera [Sun, 21 Jan 2024 19:55:16 +0000 (15:55 -0400)] 
autoreload_test: Handle a relative PYTHONPATH

This came up in the Debian package build of tornado, where we run the
tests from a staged build of the module.

18 months agoOpenSSL 3.2 compatibility 3357/head
Daniel Garcia Moreno [Mon, 15 Jan 2024 08:48:00 +0000 (09:48 +0100)] 
OpenSSL 3.2 compatibility

Fix https://github.com/tornadoweb/tornado/issues/3355

18 months agoMerge pull request #3356 from tornadoweb/dependabot/pip/jinja2-3.1.3
Ben Darnell [Fri, 12 Jan 2024 01:45:58 +0000 (20:45 -0500)] 
Merge pull request #3356 from tornadoweb/dependabot/pip/jinja2-3.1.3

build(deps): bump jinja2 from 3.1.2 to 3.1.3

18 months agobuild(deps): bump jinja2 from 3.1.2 to 3.1.3 3356/head
dependabot[bot] [Thu, 11 Jan 2024 20:27:48 +0000 (20:27 +0000)] 
build(deps): bump jinja2 from 3.1.2 to 3.1.3

Bumps [jinja2](https://github.com/pallets/jinja) from 3.1.2 to 3.1.3.
- [Release notes](https://github.com/pallets/jinja/releases)
- [Changelog](https://github.com/pallets/jinja/blob/main/CHANGES.rst)
- [Commits](https://github.com/pallets/jinja/compare/3.1.2...3.1.3)

---
updated-dependencies:
- dependency-name: jinja2
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
20 months agoMerge pull request #3352 from bdarnell/master v6.4.0
Ben Darnell [Wed, 29 Nov 2023 03:18:59 +0000 (22:18 -0500)] 
Merge pull request #3352 from bdarnell/master

Set version to 6.4 final

20 months agoSet version to 6.4 final 3352/head
Ben Darnell [Wed, 29 Nov 2023 02:55:46 +0000 (21:55 -0500)] 
Set version to 6.4 final

20 months agoMerge pull request #3348 from bdarnell/iostream-hostname-test v6.4.0b1
Ben Darnell [Thu, 16 Nov 2023 01:21:57 +0000 (20:21 -0500)] 
Merge pull request #3348 from bdarnell/iostream-hostname-test

iostream_test: Test check_hostname functionality.

20 months agoiostream_test: Don't require server-side log on windows 3348/head
Ben Darnell [Tue, 14 Nov 2023 03:11:59 +0000 (22:11 -0500)] 
iostream_test: Don't require server-side log on windows

20 months agoiostream_test: Test check_hostname functionality.
Ben Darnell [Tue, 14 Nov 2023 03:02:32 +0000 (22:02 -0500)] 
iostream_test: Test check_hostname functionality.

In #3337, the removal of ssl.match_hostname revealed that we did not
have any test coverage of hostname checking in tornado.iostream.
Since we were forced to remove the manual check that we had in place
for old versions of Python, we need a test to make sure that we didn't
inadvertently break hostname checking.

20 months agoMerge pull request #3341 from bdarnell/more-utcnow
Ben Darnell [Thu, 2 Nov 2023 01:48:50 +0000 (21:48 -0400)] 
Merge pull request #3341 from bdarnell/more-utcnow

web,demos: Remove more uses of deprecated datetime utc methods

20 months agoweb,demos: Remove more uses of deprecated datetime utc methods 3341/head
Ben Darnell [Thu, 2 Nov 2023 01:40:54 +0000 (21:40 -0400)] 
web,demos: Remove more uses of deprecated datetime utc methods

Add a simple test case to give us some basic coverage of this
code path.

Closes #3335

21 months agoMerge pull request #3339 from tornadoweb/dependabot/pip/urllib3-1.26.18
Ben Darnell [Sun, 29 Oct 2023 23:57:55 +0000 (19:57 -0400)] 
Merge pull request #3339 from tornadoweb/dependabot/pip/urllib3-1.26.18

build(deps): bump urllib3 from 1.26.17 to 1.26.18

21 months agoMerge pull request #3332 from bdarnell/selector-thread-atexit
Ben Darnell [Sun, 29 Oct 2023 23:56:38 +0000 (19:56 -0400)] 
Merge pull request #3332 from bdarnell/selector-thread-atexit

Revert "asyncio: Remove atexit hook"

21 months agobuild(deps): bump urllib3 from 1.26.17 to 1.26.18 3339/head
dependabot[bot] [Wed, 18 Oct 2023 01:28:06 +0000 (01:28 +0000)] 
build(deps): bump urllib3 from 1.26.17 to 1.26.18

Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.17 to 1.26.18.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.17...1.26.18)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
21 months agotest: Close the thread pool in run_on_executor test 3332/head
Ben Darnell [Wed, 11 Oct 2023 00:39:25 +0000 (20:39 -0400)] 
test: Close the thread pool in run_on_executor test

If this executor was left around it would be GC'd at an unpredictable
time and would often be reported as a failure in other circlerefs tests.
(For unknown reasons this would occur most often in i686 (i.e. 32-bit)
linux builds).

21 months agoRevert "asyncio: Remove atexit hook"
Ben Darnell [Tue, 3 Oct 2023 01:39:39 +0000 (21:39 -0400)] 
Revert "asyncio: Remove atexit hook"

This reverts commit 62363740c1cc0e137ff4344c3afc3d52e070f200.

We are again seeing hangs at shutdown in
SyncHTTPClientTest.test_destructor_log. Maybe putting this back will
help.

21 months agoMerge pull request #3337 from bdarnell/py312-updates
Ben Darnell [Sat, 14 Oct 2023 02:46:47 +0000 (22:46 -0400)] 
Merge pull request #3337 from bdarnell/py312-updates

Updates for python 3.12 final

21 months ago*: Lint on the newest version of python too. 3337/head
Ben Darnell [Sat, 14 Oct 2023 02:39:41 +0000 (22:39 -0400)] 
*: Lint on the newest version of python too.

We previously only typechecked on the oldest version of python we
supported, incorrectly assuming nothing we depended on would be
removed. Now we typecheck on the latest version of python.

Assume support for modern version of ssl and remove some pre-SNI
code paths which rely on functions that are now removed.

21 months agodocs: Update intersphinx references for python 3.12
Ben Darnell [Sat, 14 Oct 2023 01:27:20 +0000 (21:27 -0400)] 
docs: Update intersphinx references for python 3.12

Intersphinx links are currently an unpinned dependency, so when
a new version of python is released it's possible (although relatively
rare) for it to break our links. 3.12 removed a few members of
the ssl module.

21 months agoMerge pull request #3333 from tornadoweb/dependabot/pip/urllib3-1.26.17
Ben Darnell [Sun, 8 Oct 2023 18:18:49 +0000 (14:18 -0400)] 
Merge pull request #3333 from tornadoweb/dependabot/pip/urllib3-1.26.17

build(deps): bump urllib3 from 1.26.14 to 1.26.17

21 months agobuild(deps): bump urllib3 from 1.26.14 to 1.26.17 3333/head
dependabot[bot] [Tue, 3 Oct 2023 01:47:22 +0000 (01:47 +0000)] 
build(deps): bump urllib3 from 1.26.14 to 1.26.17

Bumps [urllib3](https://github.com/urllib3/urllib3) from 1.26.14 to 1.26.17.
- [Release notes](https://github.com/urllib3/urllib3/releases)
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst)
- [Commits](https://github.com/urllib3/urllib3/compare/1.26.14...1.26.17)

---
updated-dependencies:
- dependency-name: urllib3
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
21 months agoMerge pull request #3331 from bdarnell/wintest
Ben Darnell [Tue, 3 Oct 2023 01:44:48 +0000 (21:44 -0400)] 
Merge pull request #3331 from bdarnell/wintest

ci: Add windows to the main test config

21 months agoci: Add windows to the main test config 3331/head
Ben Darnell [Sat, 30 Sep 2023 19:39:53 +0000 (15:39 -0400)] 
ci: Add windows to the main test config

I've caused enough broken builds that aren't caught until the final
release pipeline; time to add this to the main test config.

22 months agouse typing.NamedTuple instead of collections.namedtuple 3330/head
Matthew Lynch [Fri, 29 Sep 2023 17:41:59 +0000 (12:41 -0500)] 
use typing.NamedTuple instead of collections.namedtuple

22 months agoMerge pull request #3325 from bdarnell/version-6.4b1
Ben Darnell [Wed, 27 Sep 2023 00:57:12 +0000 (20:57 -0400)] 
Merge pull request #3325 from bdarnell/version-6.4b1

Set version number to 6.4b1

22 months agoSet version number to 6.4b1 3325/head
Ben Darnell [Wed, 27 Sep 2023 00:52:14 +0000 (20:52 -0400)] 
Set version number to 6.4b1

22 months agoMerge pull request #3324 from bdarnell/relnotes-6.4
Ben Darnell [Wed, 27 Sep 2023 00:50:45 +0000 (20:50 -0400)] 
Merge pull request #3324 from bdarnell/relnotes-6.4

docs: Release notes for 6.4.0

22 months agodocs: Release notes for 6.4.0 3324/head
Ben Darnell [Wed, 27 Sep 2023 00:16:00 +0000 (20:16 -0400)] 
docs: Release notes for 6.4.0

22 months agoMerge pull request #3308 from TnTomato/fix-WebSocketClientConnection-parameter
Ben Darnell [Sat, 2 Sep 2023 14:03:40 +0000 (10:03 -0400)] 
Merge pull request #3308 from TnTomato/fix-WebSocketClientConnection-parameter

Fix WebSocketClientConnection parameter

23 months agoMerge pull request #3317 from bdarnell/escape-updates
Ben Darnell [Wed, 23 Aug 2023 01:42:27 +0000 (21:42 -0400)] 
Merge pull request #3317 from bdarnell/escape-updates

escape: Use the standard library where possible

23 months agoescape: Remove noqa: F811 tags from overloads 3317/head
Ben Darnell [Wed, 23 Aug 2023 01:33:44 +0000 (21:33 -0400)] 
escape: Remove noqa: F811 tags from overloads

Newer versions of pyflakes no longer require this.

23 months agoescape: Use the standard library where possible
Ben Darnell [Wed, 23 Aug 2023 01:27:05 +0000 (21:27 -0400)] 
escape: Use the standard library where possible

Many of these functions were necessary in Python 2, but are now
redundant. We can simply use the standard library in many cases.
The only major change is in xhtml_unescape, where we now reject
invalid character references such as surrogates and control characters.

Update docs throughout to be more specific about differences from the
standard library. Also be more complete about the ``plus`` option to
the url escaping functions.

Fixes #3186

23 months agoMerge pull request #3316 from bdarnell/fix-docs-build
Ben Darnell [Wed, 23 Aug 2023 00:17:22 +0000 (20:17 -0400)] 
Merge pull request #3316 from bdarnell/fix-docs-build

docs: Fix build after readthedocs/readthedocs.org#10638

23 months agodocs: Fix build after readthedocs/readthedocs.org#10638 3316/head
Ben Darnell [Wed, 23 Aug 2023 00:01:34 +0000 (20:01 -0400)] 
docs: Fix build after readthedocs/readthedocs.org#10638

The old magic for sphinx_rtd_theme has been removed; now we should
handle the theme in the same way we do for local builds.

23 months agoMerge pull request #3315 from bdarnell/circlerefs
Ben Darnell [Tue, 22 Aug 2023 23:49:02 +0000 (19:49 -0400)] 
Merge pull request #3315 from bdarnell/circlerefs

ioloop,concurrent: Fix reference cycles

23 months agotest: Skip circlerefs test on pypy 3315/head
Ben Darnell [Tue, 22 Aug 2023 13:28:13 +0000 (09:28 -0400)] 
test: Skip circlerefs test on pypy

Pypy doesn't have the same refcount fast-path as cpython so the
gc behavior is different and this test is irrelevant.

23 months agotest: Fix circlerefs test on python 3.10 and before
Ben Darnell [Tue, 22 Aug 2023 03:14:49 +0000 (23:14 -0400)] 
test: Fix circlerefs test on python 3.10 and before

Local/attribute dicts are reported a bit differently here.

23 months agoioloop,concurrent: Fix reference cycles
Ben Darnell [Tue, 22 Aug 2023 03:03:39 +0000 (23:03 -0400)] 
ioloop,concurrent: Fix reference cycles

In a few places we were referring to a future via a closure instead
of using the reference passed as an argument to the callback.  This
sometimes causes a reference cycle that can slow GC. This commit
adds a test which covers two of the cases (chain_future and the
concurrent.future branch of add_future) while the third was found by
inspecting other calls to add_done_callback for obvious instances of
this pattern.

Fixes #2620

23 months agotest: Refactor circlerefs script into a test
Ben Darnell [Tue, 22 Aug 2023 02:20:34 +0000 (22:20 -0400)] 
test: Refactor circlerefs script into a test

This script was only ever run irregularly on its own; bring it in
to the test suite so it can be run automatically.

23 months agoMerge pull request #3312 from bdarnell/destructor-log-timeout
Ben Darnell [Sun, 13 Aug 2023 00:55:15 +0000 (20:55 -0400)] 
Merge pull request #3312 from bdarnell/destructor-log-timeout

httpclient_test: Increase test_destructor_log timeout

23 months agohttpclient_test: Increase test_destructor_log timeout 3312/head
Ben Darnell [Sun, 13 Aug 2023 00:42:15 +0000 (20:42 -0400)] 
httpclient_test: Increase test_destructor_log timeout

This test has recently become flaky on windows CI, and before
investigating further, see if it's just because the CI machines are
overloaded and subprocesses are slower on windows.

23 months agoMerge pull request #3309 from bdarnell/relnotes-633
Ben Darnell [Fri, 11 Aug 2023 15:40:19 +0000 (11:40 -0400)] 
Merge pull request #3309 from bdarnell/relnotes-633

Release notes for 6.3.3

23 months agoRelease notes for 6.3.3 3309/head
Ben Darnell [Fri, 11 Aug 2023 02:38:19 +0000 (22:38 -0400)] 
Release notes for 6.3.3