interactions.py icon indicating copy to clipboard operation
interactions.py copied to clipboard

[META] 6.0 Breaking Changes wishlist

Open silasary opened this issue 2 years ago • 8 comments

While we're not quite at the point of making breaking changes yet, this tracker serves to list things that we want to change when we decide to pull the trigger.

Most of these will be things are important enough to justify a breaking change on their own.

  • Change voice state cache to index as (guild_id, id) (See discussion in #1533)
  • Rename GuildText and co to be GuildTextChannel
  • Make Prefixed and Hybrid commands core library features. (The tech debt of hacking in hybrid commands justifies this)

silasary avatar Aug 20 '23 13:08 silasary

I'd like to add making Snowflake.__int__ actually return an int to the list, as it seems like some users are getting warnings that making __int__ return subclasses of int may be removed in future versions.

AstreaTSS avatar Aug 22 '23 15:08 AstreaTSS

More things:

  • #1508 and #1517.
  • For autocomplete, make ctx.kwargs/args arguments resolve to the correct type (currently, a channel in ctx.kwargs/args will just return the string snowflake ID of said channel).
  • Reduce (and maybe eliminate) fetch_guild from processors and replace it with get_guild and proper None handling, as fetch is often overkill (and might cache things a person doesn't want to cache).

AstreaTSS avatar Aug 25 '23 03:08 AstreaTSS

I go away for 2 weeks... and you make a breaking version /j

Change voice state cache to index as (guild_id, id) (See discussion in https://github.com/interactions-py/interactions.py/pull/1533)

Agreed - the entire voice cache needs a rethink - its design is very... naive and its creator should be shamed.... oh wait thats me

Rename GuildText and co to be GuildTextChannel

What's the rationale here?

Make Prefixed and Hybrid commands core library features. (The tech debt of hacking in hybrid commands justifies this)

That is very contentious as im sure you know. Has this been voted on?

I'd like to add making Snowflake.int actually return an int to the list, as it seems like some users are getting warnings that making int return subclasses of int may be removed in future versions.

Can you show me these warnings? I don't believe i've come across them

https://github.com/interactions-py/interactions.py/issues/1508

Agreed

For autocomplete, make ctx.kwargs/args arguments resolve to the correct type (currently, a channel in ctx.kwargs/args will just return the string snowflake ID of said channel).

Agreed

Reduce (and maybe eliminate) fetch_guild from processors and replace it with get_guild and proper None handling, as fetch is often overkill (and might cache things a person doesn't want to cache).

Agreed... under the proviso we need to determine where fetch is actually required, and document this

cc @silasary @AstreaTSS

LordOfPolls avatar Aug 26 '23 06:08 LordOfPolls

RE the Snowflake issue:

Screenshot_20230826-085107.png

At the very least, even if I can't make it appear myself, I agree with the fact that __int__ should return int.

AstreaTSS avatar Aug 26 '23 12:08 AstreaTSS

I'm intrigued by #1508 being here, I believe we agreed this was not a 6.x pressing issue with Discord writing multi attachment data to embeds itself. What's the reason here – because we don't have a property setter function to pretty up the deserialisation process?

i0bs avatar Aug 26 '23 12:08 i0bs

I'm intrigued by #1508 being here, I believe we agreed this was not a 6.x pressing issue with Discord writing multi attachment data to embeds itself. What's the reason here – because we don't have a property setter function to pretty up the deserialisation process?

...did we? I don't think we ever said that - the most we said is that we couldn't do it in 5.X because of its nature. Having something to make the deserialization of embeds with those embeds would be nice, IMO.

AstreaTSS avatar Aug 26 '23 13:08 AstreaTSS

The 4 AutoMod events should be renamed to follow the standard set by the library (maybe some other events too, haven't checked all of them)

mAxYoLo01 avatar Aug 27 '23 09:08 mAxYoLo01