Skip to content

Conversation

@fgfgdfgdfgfdgdf
Copy link

Summary

Fixes type annotation issue in View.add_item method where type checkers (Pylance/mypy) reported "Type of 'add_item' is partially unknown" due to missing generic parameter in Item annotation.

Checklist

  • If code changes were made, then they have been tested
    • I have updated the documentation to reflect the changes
    • I have formatted the code properly by running uv run nox -s lint
    • I have type-checked the code by running uv run nox -s pyright
  • This PR fixes an issue
  • This PR adds something new (e.g. new method or parameters)
  • This PR is a breaking change (e.g. methods or parameters removed/renamed)
  • This PR is not a code change (e.g. documentation, README, ...)

@fgfgdfgdfgfdgdf fgfgdfgdfgfdgdf changed the title Fix type annotation for View.add_item method fix: type annotation for View.add_item method Nov 5, 2025
@read-the-docs-community
Copy link

Documentation build overview

📚 disnake | 🛠️ Build #30212142 | 📁 Comparing 9dd5a8f against latest (0b11905)


🔍 Preview build

Show files changed (48 files in total): 📝 48 modified | ➕ 0 added | ➖ 0 deleted
File Status
index.html 📝 modified
whats_new.html 📝 modified
api/abc.html 📝 modified
api/activities.html 📝 modified
api/app_commands.html 📝 modified
api/app_info.html 📝 modified
api/audit_logs.html 📝 modified
api/automod.html 📝 modified
api/channels.html 📝 modified
api/clients.html 📝 modified
api/components.html 📝 modified
api/emoji.html 📝 modified
api/entitlements.html 📝 modified
api/events.html 📝 modified
api/exceptions.html 📝 modified
api/guild_scheduled_events.html 📝 modified
api/guilds.html 📝 modified
api/integrations.html 📝 modified
api/interactions.html 📝 modified
api/invites.html 📝 modified
api/localization.html 📝 modified
api/members.html 📝 modified
api/messages.html 📝 modified
api/misc.html 📝 modified
api/permissions.html 📝 modified
api/roles.html 📝 modified
api/skus.html 📝 modified
api/soundboard.html 📝 modified
api/stage_instances.html 📝 modified
api/stickers.html 📝 modified
api/subscriptions.html 📝 modified
api/ui.html 📝 modified
api/users.html 📝 modified
api/utilities.html 📝 modified
api/voice.html 📝 modified
api/webhooks.html 📝 modified
api/widgets.html 📝 modified
ext/tasks/index.html 📝 modified
ext/commands/api/app_commands.html 📝 modified
ext/commands/api/bots.html 📝 modified
ext/commands/api/checks.html 📝 modified
ext/commands/api/cogs.html 📝 modified
ext/commands/api/context.html 📝 modified
ext/commands/api/converters.html 📝 modified
ext/commands/api/exceptions.html 📝 modified
ext/commands/api/help_commands.html 📝 modified
ext/commands/api/misc.html 📝 modified
ext/commands/api/prefix_commands.html 📝 modified

@Enegg
Copy link
Contributor

Enegg commented Nov 5, 2025

Does this actually work for doing

view = View()
view.add_item(ui.Button())

?
The components are currently typed to default to None on creation unless explicitly parametrized (ui.Button[View](...))

@fgfgdfgdfgfdgdf
Copy link
Author

Does this actually work for doing

view = View()
view.add_item(ui.Button())

? The components are currently typed to default to None on creation unless explicitly parametrized (ui.Button[View](...))

This doesn't work, and pylance gives me an error because the generic type of Item in the add_item method is unknown. If I specify Self or None, there will be no error

@Enegg
Copy link
Contributor

Enegg commented Nov 6, 2025

pylance gives me an error because the generic type of Item in the add_item method is unknown.

I was asking specifically if this works after your fix, but it's clear now it is not as pyright in CI is failing.
Item[Self] likely needs to become Item[Any].

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants