Skip to content

fix: cleanup of 3.9 removal and preparation for 3.14#2988

Draft
Lulalaby wants to merge 17 commits intomasterfrom
cleanup/39-removal-314-prepare
Draft

fix: cleanup of 3.9 removal and preparation for 3.14#2988
Lulalaby wants to merge 17 commits intomasterfrom
cleanup/39-removal-314-prepare

Conversation

@Lulalaby
Copy link
Copy Markdown
Member

@Lulalaby Lulalaby commented Nov 1, 2025

WIP

Depends on #2948

@Lulalaby Lulalaby added this to the v2.7 milestone Nov 1, 2025
@Lulalaby Lulalaby added the dependencies Pull requests that update a dependency file label Nov 1, 2025
@github-project-automation github-project-automation bot moved this to In Progress in Pycord Releases Nov 1, 2025
@pycord-app
Copy link
Copy Markdown

pycord-app bot commented Nov 1, 2025

Thanks for opening this pull request!
Please make sure you have read the Contributing Guidelines and Code of Conduct.

This pull request can be checked-out with:

git fetch origin pull/2988/head:pr-2988
git checkout pr-2988

This pull request can be installed with:

pip install git+https://github.com/Pycord-Development/pycord@refs/pull/2988/head

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR modernizes the codebase by migrating from typing_extensions to the standard typing module for features that are now available in Python 3.10+. Since the project requires Python >= 3.10, these imports can be safely moved to the standard library. Additionally, the PR updates the event loop initialization in the Client class to avoid deprecation warnings in Python 3.11+.

Key changes:

  • Migrated TypedDict, ParamSpec, Concatenate, TypeGuard, Literal, Annotated, get_args, and get_origin from typing_extensions to typing
  • Removed Python 3.10 version checks and related code paths that are no longer needed
  • Updated event loop initialization to use asyncio.get_running_loop() with fallback to asyncio.new_event_loop() to avoid deprecation warnings

Reviewed Changes

Copilot reviewed 29 out of 29 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
discord/utils.py Migrated ParamSpec import; removed sys import, PY_310 version check, and Python < 3.10 code path for literal flattening
discord/types/*.py Migrated TypedDict from typing_extensions to typing across multiple type definition files
discord/ext/commands/core.py Migrated Concatenate, ParamSpec, and TypeGuard imports
discord/ext/commands/context.py Migrated ParamSpec import
discord/commands/core.py Removed sys import and Python 3.11 version check; migrated Annotated, Literal, get_args, get_origin, Concatenate, and ParamSpec imports
discord/commands/context.py Migrated ParamSpec import and consolidated imports on single line
discord/client.py Updated event loop initialization to avoid asyncio.get_event_loop() deprecation warning
discord/_version.py Migrated TypedDict import

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Copy link
Copy Markdown

Copilot AI commented Nov 2, 2025

@Lulalaby I've opened a new pull request, #2989, to work on those changes. Once the pull request is ready, I'll request review from you.

@Lulalaby Lulalaby marked this pull request as ready for review November 2, 2025 03:27
@Lulalaby Lulalaby requested a review from a team as a code owner November 2, 2025 03:27
@Lulalaby Lulalaby marked this pull request as draft November 2, 2025 03:27
@Lulalaby Lulalaby force-pushed the cleanup/39-removal-314-prepare branch from 5ddd192 to e41a8b0 Compare November 2, 2025 03:28
@Lulalaby Lulalaby modified the milestones: v2.7, v2.8 Dec 24, 2025
@Lulalaby Lulalaby removed the on hold label Dec 24, 2025
@Paillat-dev Paillat-dev modified the milestones: v2.8.0rc.1, next-major Mar 15, 2026
@Lulalaby Lulalaby added this to Pycord Mar 18, 2026
@github-project-automation github-project-automation bot moved this to Todo in Pycord Mar 18, 2026
@Paillat-dev Paillat-dev force-pushed the cleanup/39-removal-314-prepare branch from e41a8b0 to b918f97 Compare March 27, 2026 23:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

Status: Todo
Status: In Progress

Development

Successfully merging this pull request may close these issues.

6 participants