]> git.ipfire.org Git - thirdparty/tornado.git/log
thirdparty/tornado.git
2 years agoauth: Fix doctests 3294/head
Ben Darnell [Sat, 8 Jul 2023 00:46:14 +0000 (20:46 -0400)] 
auth: Fix doctests

2 years agoauth: Copy google mixin comment to top-of-file
Ben Darnell [Sat, 8 Jul 2023 00:31:18 +0000 (20:31 -0400)] 
auth: Copy google mixin comment to top-of-file

2 years agoauth: Use a setting for facebook redirect url
Ben Darnell [Sat, 8 Jul 2023 00:09:36 +0000 (20:09 -0400)] 
auth: Use a setting for facebook redirect url

Matches a change made to the Google auth mixin in a previous commit.

Fixes #756

2 years agoauth: Update facebook scope
Ben Darnell [Sat, 8 Jul 2023 00:04:27 +0000 (20:04 -0400)] 
auth: Update facebook scope

The read_stream scope was replaced with user_posts; this change
was made to demos/facebook/facebook.py in #1674 but the corresponding
comment was not updated. The offline_access scope has also been removed
but seems irrelvant to this comment.

Fixes #1566

2 years agodemos: Add a demo app for google auth
Ben Darnell [Fri, 7 Jul 2023 23:37:45 +0000 (19:37 -0400)] 
demos: Add a demo app for google auth

Add some more detail to app registration docs.

This was done mainly to verify that we don't need to introduce
new parameters as requested in #2140

Closes #2140

2 years agoauth: Deprecate TwitterMixin
Ben Darnell [Mon, 19 Jun 2023 20:12:24 +0000 (16:12 -0400)] 
auth: Deprecate TwitterMixin

It's unclear to what extent this class still works given Twitter's
recent API changes. Deprecate it since I don't intend to track
future changes here.

2 years agoauth: Deprecate unused client_secret parameter
Ben Darnell [Mon, 19 Jun 2023 19:54:01 +0000 (15:54 -0400)] 
auth: Deprecate unused client_secret parameter

OAuth2Mixin.authorize_redirect has never used this argument
and similar methods in this module don't have it.

Closes #1122

2 years agoMerge pull request #3284 from bdarnell/asyncio-test
Ben Darnell [Mon, 19 Jun 2023 19:39:00 +0000 (15:39 -0400)] 
Merge pull request #3284 from bdarnell/asyncio-test

asyncio_test: Use inequality when looking for thread leaks

2 years agoasyncio_test: Remove obsolete py3.4 compatibility 3284/head
Ben Darnell [Mon, 19 Jun 2023 19:30:48 +0000 (15:30 -0400)] 
asyncio_test: Remove obsolete py3.4 compatibility

2 years agoasyncio_test: Use inequality when checking thread leaks
Ben Darnell [Mon, 19 Jun 2023 19:28:45 +0000 (15:28 -0400)] 
asyncio_test: Use inequality when checking thread leaks

Sometimes we have a net reduction in the thread count
because there was an extra thread running at the time captured
the starting count, so use inequality instead of exact matches.

2 years agoMerge pull request #3283 from bdarnell/asyncio-types
Ben Darnell [Mon, 19 Jun 2023 19:31:05 +0000 (15:31 -0400)] 
Merge pull request #3283 from bdarnell/asyncio-types

asyncio: Modernize type annotations

2 years agoasyncio: Modernize type annotations 3283/head
Ben Darnell [Mon, 19 Jun 2023 19:24:54 +0000 (15:24 -0400)] 
asyncio: Modernize type annotations

2 years agoMerge pull request #3272 from bdarnell/asyncio-canary
Ben Darnell [Mon, 19 Jun 2023 17:45:41 +0000 (13:45 -0400)] 
Merge pull request #3272 from bdarnell/asyncio-canary

asyncio: Use a canary task to detect end of event loop

2 years agoasyncio: Manage the selector thread with an async generator 3272/head
Ben Darnell [Wed, 17 May 2023 00:57:50 +0000 (20:57 -0400)] 
asyncio: Manage the selector thread with an async generator

Async generators have a special shutdown protocol which allows
us to detect the end of the event loop and stop our thread.
This lets us clean up the thread reliably when the event loop
is started/stopped via the tornado IOLoop interfaces (which
explicitly know about the selector thread), or when the
latest asyncio interfaces are used (asyncio.run or manually
calling shutdown_asyncgens).

The thread is still leaked when older versions of the asyncio
interfaces are used (loop.close *without* shutdown_asyncgens), but
I've been unable to find a solution that does not print leak warnings
even in the event of a clean shutdown. Use of shutdown_asyncgens is
now effectively required for apps combining asyncio and tornado.
This is unfortunate since leaking a thread is relatively expensive
compared to the usual consequences of failing to call
shutdown_asyncgens, but it seems to be the best we can do.

Fixes #3173

2 years agoMerge pull request #3280 from bdarnell/disable-312
Ben Darnell [Thu, 15 Jun 2023 01:41:51 +0000 (21:41 -0400)] 
Merge pull request #3280 from bdarnell/disable-312

ci: Disable Python 3.12 in CI

2 years agoci: Disable Python 3.12 in CI 3280/head
Ben Darnell [Thu, 15 Jun 2023 01:31:32 +0000 (21:31 -0400)] 
ci: Disable Python 3.12 in CI

Current betas have a bug in GzipFile we can't easily work around.
https://github.com/python/cpython/issues/105808

2 years agoMerge pull request #3273 from tornadoweb/dependabot/pip/requests-2.31.0
Ben Darnell [Sat, 27 May 2023 03:00:42 +0000 (23:00 -0400)] 
Merge pull request #3273 from tornadoweb/dependabot/pip/requests-2.31.0

build(deps): bump requests from 2.28.2 to 2.31.0

2 years agobuild(deps): bump requests from 2.28.2 to 2.31.0 3273/head
dependabot[bot] [Tue, 23 May 2023 05:57:30 +0000 (05:57 +0000)] 
build(deps): bump requests from 2.28.2 to 2.31.0

Bumps [requests](https://github.com/psf/requests) from 2.28.2 to 2.31.0.
- [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.28.2...v2.31.0)

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

Signed-off-by: dependabot[bot] <support@github.com>
2 years agoMerge pull request #3029 from minrk/reuse-selector
Ben Darnell [Mon, 15 May 2023 02:15:04 +0000 (22:15 -0400)] 
Merge pull request #3029 from minrk/reuse-selector

separate SelectorThread into its own object

2 years agoMerge branch 'master' into pr/minrk/3029 3029/head
Ben Darnell [Mon, 15 May 2023 02:02:44 +0000 (22:02 -0400)] 
Merge branch 'master' into pr/minrk/3029

2 years agoMerge pull request #3269 from bdarnell/refer-to-all-tasks
Ben Darnell [Mon, 15 May 2023 01:34:12 +0000 (21:34 -0400)] 
Merge pull request #3269 from bdarnell/refer-to-all-tasks

gen: Hold strong references to all asyncio.Tasks

2 years agogen: Hold strong references to all asyncio.Tasks 3269/head
Ben Darnell [Mon, 15 May 2023 01:03:52 +0000 (21:03 -0400)] 
gen: Hold strong references to all asyncio.Tasks

Per the warning in the asyncio documentation, we need to hold a strong
reference to all asyncio Tasks to prevent premature GC. Following
discussions in cpython (https://github.com/python/cpython/issues/91887),
we hold these references on the IOLoop instance to ensure that they are
strongly held but do not cause leaks if the event loop itself is
discarded.

This is expected to fix all of the various "task was destroyed but
it is pending" warnings that have been reported. The
IOLoop._pending_tasks set is expected to become obsolete if
corresponding changes are made to asyncio in Python 3.13.

Fixes #3209
Fixes #3047
Fixes #2763

Some issues involve this warning as their most visible symptom,
but have an underlying cause that should still be addressed.
Updates #2914
Updates #2356

2 years agoMerge pull request #3268 from bdarnell/main-branch-relnotes
Ben Darnell [Sun, 14 May 2023 20:14:31 +0000 (16:14 -0400)] 
Merge pull request #3268 from bdarnell/main-branch-relnotes

Copy version 6.3.2 release notes to main branch

2 years agoVersion 6.3.2 3268/head
Ben Darnell [Sun, 14 May 2023 01:31:48 +0000 (21:31 -0400)] 
Version 6.3.2

2 years agoMerge pull request #3266 from bdarnell/fix-open-redirect
Ben Darnell [Sun, 14 May 2023 01:27:59 +0000 (21:27 -0400)] 
Merge pull request #3266 from bdarnell/fix-open-redirect

web: Fix an open redirect in StaticFileHandler

2 years agoweb: Fix an open redirect in StaticFileHandler 3266/head
Ben Darnell [Sun, 14 May 2023 00:58:52 +0000 (20:58 -0400)] 
web: Fix an open redirect in StaticFileHandler

Under some configurations the default_filename redirect could be exploited
to redirect to an attacker-controlled site. This change refuses to redirect
to URLs that could be misinterpreted.

A test case for the specific vulnerable configuration will follow after the
patch has been available.

2 years agoMerge pull request #3264 from bdarnell/websocket-client-warning
Ben Darnell [Mon, 8 May 2023 01:47:52 +0000 (21:47 -0400)] 
Merge pull request #3264 from bdarnell/websocket-client-warning

websocket: Add warning if client connection isn't closed cleanly

2 years agowebsocket: Add warning if client connection isn't closed cleanly 3264/head
Ben Darnell [Sun, 7 May 2023 21:03:33 +0000 (17:03 -0400)] 
websocket: Add warning if client connection isn't closed cleanly

This gives a warning that is not dependent on GC for the issue
in #3257. This new warning covers all websocket client connections,
while the previous GC-dependent warning only affected those with
ping_interval set. This unfortunately introduces an effective
requirement to close all websocket clients explicitly for those
who are strict about warnings.

2 years agoMerge pull request #3263 from bdarnell/tox-sdist
Ben Darnell [Wed, 3 May 2023 16:52:53 +0000 (12:52 -0400)] 
Merge pull request #3263 from bdarnell/tox-sdist

setup: Include tox.ini in sdist

2 years agosetup: Include tox.ini in sdist 3263/head
Ben Darnell [Wed, 3 May 2023 16:46:28 +0000 (12:46 -0400)] 
setup: Include tox.ini in sdist

Also remove the demos directory from sdist. This inclusion was incomplete
and even if it were incomplete I don't think the sdist is a great way to
distribute these demos.

Fixes #3253

2 years agoMerge pull request #3262 from bdarnell/build-dispatch
Ben Darnell [Tue, 2 May 2023 23:33:28 +0000 (19:33 -0400)] 
Merge pull request #3262 from bdarnell/build-dispatch

ci: Enable manual dispatch for build workflow

2 years agoci: Enable manual dispatch for build workflow 3262/head
Ben Darnell [Tue, 2 May 2023 23:12:04 +0000 (19:12 -0400)] 
ci: Enable manual dispatch for build workflow

Replace the use of a special branch name for testing.

2 years agoMerge pull request #3261 from bdarnell/callback-from-signal
Ben Darnell [Tue, 2 May 2023 17:16:04 +0000 (13:16 -0400)] 
Merge pull request #3261 from bdarnell/callback-from-signal

ioloop: Deprecate add_callback_from_signal

2 years agoioloop: Deprecate add_callback_from_signal 3261/head
Ben Darnell [Tue, 2 May 2023 16:54:20 +0000 (12:54 -0400)] 
ioloop: Deprecate add_callback_from_signal

I don't believe this method is currently working as intended, and I'm
not sure it ever has since the move to asyncio. I think this is
responsible for occasional test failures in CI.

Fixes #3225

2 years agoMerge pull request #3260 from bdarnell/streamline-tests
Ben Darnell [Mon, 1 May 2023 22:02:49 +0000 (18:02 -0400)] 
Merge pull request #3260 from bdarnell/streamline-tests

test: Streamline test configurations

2 years agotest: Streamline test configurations 3260/head
Ben Darnell [Mon, 1 May 2023 21:10:27 +0000 (17:10 -0400)] 
test: Streamline test configurations

- LANG tests were no longer having the intended effect because C locales
  now default to utf8 instead of ascii. There's a new warning we can turn
  on with an env var instead. (after cleaing up some tests)
- The tox install_command issue was reverted in tox 1.9
- Python now guarantees that __file__ is absolute
- Remove some obsolete warning manipulations

2 years agoMerge pull request #3259 from bdarnell/version-bump
Ben Darnell [Mon, 1 May 2023 20:31:54 +0000 (16:31 -0400)] 
Merge pull request #3259 from bdarnell/version-bump

Bump main branch version number to 6.4.dev1

2 years agoBump main branch version number to 6.4.dev1 3259/head
Ben Darnell [Mon, 1 May 2023 20:18:31 +0000 (16:18 -0400)] 
Bump main branch version number to 6.4.dev1

2 years agoMerge pull request #3257 from bdarnell/build-workflow-wstest-warning
Ben Darnell [Mon, 24 Apr 2023 02:56:29 +0000 (22:56 -0400)] 
Merge pull request #3257 from bdarnell/build-workflow-wstest-warning

test: Close a websocket client that causes occasional test failures

2 years agoci: Only run pypi actions from the main repo 3257/head
Ben Darnell [Mon, 24 Apr 2023 00:35:29 +0000 (20:35 -0400)] 
ci: Only run pypi actions from the main repo

These will fail when run from forks because the necessary
credentials aren't available.

2 years agotest: Close a websocket client that causes occasional test failures
Ben Darnell [Sun, 23 Apr 2023 19:15:05 +0000 (15:15 -0400)] 
test: Close a websocket client that causes occasional test failures

These failures occur on the build.yml workflow on the emulated arm64
platform: an ill-timed timer firing during test shutdown can result
in a message being logged and the test failing for dirty logs.

2 years agoMerge pull request #3256 from bdarnell/build-workflow-qemu
Ben Darnell [Sat, 22 Apr 2023 02:03:37 +0000 (22:03 -0400)] 
Merge pull request #3256 from bdarnell/build-workflow-qemu

ci: Update setup-qemu-action version

2 years agoci: Update setup-qemu-action version 3256/head
Ben Darnell [Fri, 21 Apr 2023 23:41:15 +0000 (19:41 -0400)] 
ci: Update setup-qemu-action version

Eliminates some more deprecation warnings

2 years agoMerge pull request #3255 from bdarnell/bump-version-6.3.1 v6.3.1
Ben Darnell [Fri, 21 Apr 2023 20:32:42 +0000 (16:32 -0400)] 
Merge pull request #3255 from bdarnell/bump-version-6.3.1

Bump version to 6.3.1

2 years agoBump version to 6.3.1 3255/head
Ben Darnell [Fri, 21 Apr 2023 20:25:57 +0000 (16:25 -0400)] 
Bump version to 6.3.1

2 years agoMerge pull request #3254 from bdarnell/fix-set-cookie-case
Ben Darnell [Fri, 21 Apr 2023 20:24:15 +0000 (16:24 -0400)] 
Merge pull request #3254 from bdarnell/fix-set-cookie-case

web: Restore case-insensitivity of set_cookie args

2 years agoweb: Restore case-insensitivity of set_cookie args 3254/head
Ben Darnell [Fri, 21 Apr 2023 19:30:07 +0000 (15:30 -0400)] 
web: Restore case-insensitivity of set_cookie args

This was an unintended feature that got broken in #3224. Bring it back
for now but deprecate it for future cleanup.

Fixes #3252

2 years agoMerge pull request #3251 from bdarnell/release-6.3 v6.3.0
Ben Darnell [Tue, 18 Apr 2023 01:13:03 +0000 (21:13 -0400)] 
Merge pull request #3251 from bdarnell/release-6.3

Set version to 6.3 final

2 years agoSet version to 6.3 final 3251/head
Ben Darnell [Tue, 18 Apr 2023 01:06:12 +0000 (01:06 +0000)] 
Set version to 6.3 final

2 years agoMerge pull request #3250 from bdarnell/build-workflow-update
Ben Darnell [Sun, 9 Apr 2023 21:38:26 +0000 (17:38 -0400)] 
Merge pull request #3250 from bdarnell/build-workflow-update

ci: Update build workflow

2 years agoci: Update build workflow 3250/head
Ben Darnell [Sun, 9 Apr 2023 21:31:38 +0000 (21:31 +0000)] 
ci: Update build workflow

Build wheels for Python 3.12 as well.
Update various dependencies. The upload/download artifact actions
were using deprecated versions, and we were using a deprecated
macos build image. While we're at it, update the other OS versions
and cibuildwheel.

2 years agoMerge pull request #3249 from bdarnell/version-6.3b1 v6.3.0b1
Ben Darnell [Sun, 9 Apr 2023 20:45:26 +0000 (16:45 -0400)] 
Merge pull request #3249 from bdarnell/version-6.3b1

Set version number to 6.3b1

2 years agoSet version number to 6.3b1 3249/head
Ben Darnell [Sun, 9 Apr 2023 20:37:45 +0000 (20:37 +0000)] 
Set version number to 6.3b1

2 years agoMerge pull request #3248 from bdarnell/auto-import
Ben Darnell [Sat, 8 Apr 2023 20:04:16 +0000 (16:04 -0400)] 
Merge pull request #3248 from bdarnell/auto-import

typing: Eagerly import all submodules in __init__.pyi

2 years agotyping: Eagerly import all submodules in __init__.pyi 3248/head
Ben Darnell [Sat, 8 Apr 2023 19:42:05 +0000 (19:42 +0000)] 
typing: Eagerly import all submodules in __init__.pyi

This makes the auto-import functionality compatible with mypy
and other typing-based tools such as autocomplete functionality.
Excluding these imports from static typing feels like a premature
optimization and made it much less appealing to make use of the
auto-imports.

This may slow down type checking of applications that use Tornado by
a little, since the type checker must now process all of Tornado and
not only the subset that was imported. However, the increasing use
of long-lived daemons for type checkers should mitigate this cost.

2 years agoMerge pull request #3247 from bdarnell/websocket-update
Ben Darnell [Sat, 8 Apr 2023 19:25:09 +0000 (15:25 -0400)] 
Merge pull request #3247 from bdarnell/websocket-update

websocket: Add resolver argument to websocket_connect

2 years agowebsocket: Remove some obsolete comments 3247/head
Ben Darnell [Sat, 8 Apr 2023 18:29:18 +0000 (18:29 +0000)] 
websocket: Remove some obsolete comments

Old browser versions that do not support websockets have long since
faded from use.

2 years agowebsocket: Add resolver argument to websocket_connect
Ben Darnell [Sat, 8 Apr 2023 18:25:08 +0000 (18:25 +0000)] 
websocket: Add resolver argument to websocket_connect

This is the public interface, but when the resolver argument was added
it was only added to the supporting WebSocketClientConnection class.

2 years agoMerge pull request #3246 from bdarnell/release-notes-6.3
Ben Darnell [Sat, 8 Apr 2023 18:14:55 +0000 (14:14 -0400)] 
Merge pull request #3246 from bdarnell/release-notes-6.3

docs: Add release notes for 6.3

2 years agodocs: Add release notes for 6.3 3246/head
Ben Darnell [Fri, 7 Apr 2023 20:42:18 +0000 (20:42 +0000)] 
docs: Add release notes for 6.3

2 years agoMerge pull request #3245 from vargenau/use-spdx-license-identifier
Ben Darnell [Fri, 31 Mar 2023 14:00:25 +0000 (10:00 -0400)] 
Merge pull request #3245 from vargenau/use-spdx-license-identifier

Use SPDX license identifier

2 years agoUse SPDX license identifier 3245/head
Marc-Etienne Vargenau [Fri, 31 Mar 2023 13:26:28 +0000 (15:26 +0200)] 
Use SPDX license identifier

Use SPDX license identifier: Apache-2.0
This will help tools to produce valid SPDX.

Signed-off-by: Marc-Etienne Vargenau <marc-etienne.vargenau@nokia.com>
2 years agoMerge pull request #3244 from bdarnell/xsrf-rename
Ben Darnell [Thu, 30 Mar 2023 20:54:53 +0000 (16:54 -0400)] 
Merge pull request #3244 from bdarnell/xsrf-rename

web: Support renaming the XSRF cookie

2 years agoweb: Support renaming the XSRF cookie 3244/head
Ben Darnell [Thu, 30 Mar 2023 20:03:28 +0000 (20:03 +0000)] 
web: Support renaming the XSRF cookie

This makes it possible to use the __Host- cookie prefix for increased
security

2 years agoMerge pull request #3238 from bdarnell/demo-links
Ben Darnell [Tue, 21 Feb 2023 21:41:48 +0000 (16:41 -0500)] 
Merge pull request #3238 from bdarnell/demo-links

docs: Point to stable branch for all demo links

2 years agodocs: Point to stable branch for all demo links 3238/head
Ben Darnell [Tue, 21 Feb 2023 21:34:38 +0000 (21:34 +0000)] 
docs: Point to stable branch for all demo links

Add a README to the demos directory with a brief description of each,
and a warning about the usage of not-yet-released features.

Fixes #3236

2 years agoMerge pull request #3232 from bdarnell/undeprecate-event-loop-setting
Ben Darnell [Fri, 17 Feb 2023 03:29:27 +0000 (22:29 -0500)] 
Merge pull request #3232 from bdarnell/undeprecate-event-loop-setting

testing: No longer silence deprecation warnings

2 years agotesting: Limit silence of deprecation warnings 3232/head
Ben Darnell [Thu, 16 Feb 2023 22:20:34 +0000 (22:20 +0000)] 
testing: Limit silence of deprecation warnings

Only do it on the specific versions that had the problematic warnings.

Also deprecate get_new_ioloop.

2 years agoMerge pull request #3223 from takluyver/undeprecate-event-loop-setting
Ben Darnell [Thu, 16 Feb 2023 22:32:29 +0000 (17:32 -0500)] 
Merge pull request #3223 from takluyver/undeprecate-event-loop-setting

Revert some deprecations, following asyncio changes

2 years agoMerge pull request #3231 from bdarnell/wsgi-executor
Ben Darnell [Thu, 16 Feb 2023 20:43:25 +0000 (15:43 -0500)] 
Merge pull request #3231 from bdarnell/wsgi-executor

wsgi: Support ThreadPoolExecutor

2 years agowsgi: Set multithread flag correctly 3231/head
Ben Darnell [Wed, 15 Feb 2023 21:23:32 +0000 (21:23 +0000)] 
wsgi: Set multithread flag correctly

Required making WSGIContainer.environ() an instance method.
This is technically a backwards-incompatible change to a documented
method but it was never really meant to be documented and seems
unlikely to be used.

2 years agowsgi: Update docs
Ben Darnell [Wed, 15 Feb 2023 21:19:42 +0000 (21:19 +0000)] 
wsgi: Update docs

2 years agowsgi: Iterate the response in executor too
Ben Darnell [Thu, 9 Feb 2023 22:35:46 +0000 (22:35 +0000)] 
wsgi: Iterate the response in executor too

2 years agowsgi: Add barrier-based test for executor support
Ben Darnell [Thu, 9 Feb 2023 21:55:49 +0000 (21:55 +0000)] 
wsgi: Add barrier-based test for executor support

2 years agowsgi: Fix formatting
Ben Darnell [Thu, 9 Feb 2023 21:02:44 +0000 (21:02 +0000)] 
wsgi: Fix formatting

2 years agoAdd test case for ThreadPoolExecutor usage
Grant Jenks [Thu, 22 Dec 2022 18:17:20 +0000 (10:17 -0800)] 
Add test case for ThreadPoolExecutor usage

2 years agoAdd support for customizing executor
Grant Jenks [Thu, 22 Dec 2022 18:16:59 +0000 (10:16 -0800)] 
Add support for customizing executor

2 years agoLinter fixes 3223/head
Thomas Kluyver [Thu, 16 Feb 2023 13:22:59 +0000 (13:22 +0000)] 
Linter fixes

2 years agoDon't try to restore the previous event loop in AsyncTestCase
Thomas Kluyver [Thu, 16 Feb 2023 13:16:36 +0000 (13:16 +0000)] 
Don't try to restore the previous event loop in AsyncTestCase

2 years agoDefault make_current -> True, remove check for existing event loop
Thomas Kluyver [Thu, 16 Feb 2023 12:59:02 +0000 (12:59 +0000)] 
Default make_current -> True, remove check for existing event loop

2 years agoDeprecate IOLoop(make_current=True)
Thomas Kluyver [Wed, 15 Feb 2023 14:36:19 +0000 (14:36 +0000)] 
Deprecate IOLoop(make_current=True)

2 years agoRe-deprecate make_current() & clear_current() methods
Thomas Kluyver [Wed, 15 Feb 2023 14:15:15 +0000 (14:15 +0000)] 
Re-deprecate make_current() & clear_current() methods

2 years agoRe-suppress asyncio deprecation warnings in AsyncTestCase
Thomas Kluyver [Fri, 10 Feb 2023 17:12:14 +0000 (17:12 +0000)] 
Re-suppress asyncio deprecation warnings in AsyncTestCase

2 years agoLinter fixes
Thomas Kluyver [Fri, 10 Feb 2023 17:11:54 +0000 (17:11 +0000)] 
Linter fixes

2 years agoRemove cleanup workaround to fix some ResourceWarnings
Thomas Kluyver [Fri, 10 Feb 2023 15:24:35 +0000 (15:24 +0000)] 
Remove cleanup workaround to fix some ResourceWarnings

2 years agoFix tests: IOLoop.current() now behaves the same way on any thread
Thomas Kluyver [Fri, 10 Feb 2023 14:39:37 +0000 (14:39 +0000)] 
Fix tests: IOLoop.current() now behaves the same way on any thread

2 years agoRe-simpify AsyncTestCase setUp & tearDown
Thomas Kluyver [Fri, 10 Feb 2023 14:21:11 +0000 (14:21 +0000)] 
Re-simpify AsyncTestCase setUp & tearDown

2 years agoIOLoop.current(): create new asyncio loop if not already present
Thomas Kluyver [Tue, 31 Jan 2023 11:09:14 +0000 (11:09 +0000)] 
IOLoop.current(): create new asyncio loop if not already present

2 years agoDeprecation of bind/start is no longer forced by Python changes
Thomas Kluyver [Sun, 29 Jan 2023 13:13:12 +0000 (13:13 +0000)] 
Deprecation of bind/start is no longer forced by Python changes

2 years agoUndeprecate AsyncTestCase and AsyncHTTPTestCase classes
Thomas Kluyver [Sun, 29 Jan 2023 13:12:42 +0000 (13:12 +0000)] 
Undeprecate AsyncTestCase and AsyncHTTPTestCase classes

2 years agoUndeprecate ioloop make_current and clear_current methods
Thomas Kluyver [Sun, 29 Jan 2023 13:11:52 +0000 (13:11 +0000)] 
Undeprecate ioloop make_current and clear_current methods

2 years agoMerge pull request #3230 from bdarnell/ci-py312
Ben Darnell [Wed, 8 Feb 2023 21:42:11 +0000 (16:42 -0500)] 
Merge pull request #3230 from bdarnell/ci-py312

ci: Re-enable Python 3.12 alphas

2 years agoci: Add Python 3.10.8 and 3.11.0 to the build matrix 3230/head
Ben Darnell [Wed, 8 Feb 2023 21:28:02 +0000 (21:28 +0000)] 
ci: Add Python 3.10.8 and 3.11.0 to the build matrix

Early releases in these two branches had different deprecation warnings
so we want to test them too.

2 years agoci: Re-enable Python 3.12 alphas
Ben Darnell [Wed, 8 Feb 2023 17:47:27 +0000 (17:47 +0000)] 
ci: Re-enable Python 3.12 alphas

As of 3.12a5 the deprecation warnings should be in their final
state.

Also update setup-python action to silence a warning.

2 years agoasyncio: Remove obsolete code
Ben Darnell [Wed, 8 Feb 2023 20:12:47 +0000 (20:12 +0000)] 
asyncio: Remove obsolete code

AsyncioLoop.start() used to save, set, and restore the thread-local
event loop. This avoided some edge cases in early versions of asyncio;
this appears to no longer be necessary since Python 3.7 introduced
the get_running_loop() method.

Removing this logic improves compatibility with Python 3.12, where
it is difficult if not impossible to do the same thing without
generating DeprecationWarnings.

2 years agoMerge pull request #3224 from bdarnell/cookie-updates
Ben Darnell [Mon, 30 Jan 2023 19:17:20 +0000 (14:17 -0500)] 
Merge pull request #3224 from bdarnell/cookie-updates

web: Cookie updates

2 years agoweb: Accept all kwargs in clear_cookie 3224/head
Ben Darnell [Sat, 28 Jan 2023 19:48:47 +0000 (19:48 +0000)] 
web: Accept all kwargs in clear_cookie

In some cases it is now required to pass matching values for
samesite and secure as when the cookie was set.

clear_all_cookies is now deprecated because the name of a cookie
is no longer reliably sufficient to clear it.

Fixes #2911

2 years agoweb: List all set_cookie arguments instead of kwargs
Ben Darnell [Sat, 28 Jan 2023 19:10:16 +0000 (19:10 +0000)] 
web: List all set_cookie arguments instead of kwargs

Multiple arguments needed special cases anyway, so it's better to
just be explicit about what's supported.

set_signed_cookie still uses kwarg forwarding since we don't need
to worry about the special cases at this level and using
explicit arguments would involve duplicating defaults in multiple
places.

2 years agoweb: Rename "secure_cookie" methods to "signed_cookie"
Ben Darnell [Mon, 23 Jan 2023 18:51:53 +0000 (18:51 +0000)] 
web: Rename "secure_cookie" methods to "signed_cookie"

This more precisely states the kind of security that is provided, and
avoids confusion with the use of the word "secure" as a standard
cookie attribute and prefix.

2 years agoMerge pull request #3220 from bdarnell/update-deps
Ben Darnell [Fri, 20 Jan 2023 20:44:26 +0000 (15:44 -0500)] 
Merge pull request #3220 from bdarnell/update-deps

Update all deps