Skip to content

Latest commit

 

History

History
491 lines (336 loc) · 16.2 KB

changelog.rst

File metadata and controls

491 lines (336 loc) · 16.2 KB

Changelog

A human-readable list of changes between versions.

0.8.2

New Features

  • Add guild_only to menus.Menu.create_cog.

Changed Features

  • Readd image_url kwarg to Embeddify.send.
  • Oauth and bot info now default to false.
  • addslashcommands and ev now output to file if their content is too long.
  • Send added slash commands as a file when the output is too long.

Bugs Fixed

  • Add missing awaits to transaction object.
  • Change missing_perms to missing_permissions.
  • Fix stdout in ev command not being changed to embed if over 2000 characters.
  • Fix naive datetime objects in connect event.
  • Fix owners_ignore_check_failures flag in config.
  • Fix buttons not being disabled in paginator.
  • Fix missing import for transactions.

0.8.0

Bugs Fixed

  • Fixed versioning for Jinja2.
  • Fixed get_display_name method for Jinja2 templating.
  • Fix PrintContext.

New Features

  • Add --connect arg to the interactions webserver.
  • Support multiple database types.
    • The database type will be set to SQLite by default.

0.7.3

Side Notes

  • Command and Group are essentially now identical to Novus' implementation. As such there's no longer a need to decorate with @voxelbotutils.command(). It hasn't been removed, but new command types (like discord.ext.context_command) have not been added.

Bugs Fixed

  • Embeddify method no longer duplicates content.
  • Fixed bot avatar sends in webhooks, help, and embeddify.
  • Add SlashContext to init.
  • Add missing label kwarg to a menu component.

Changed Features

  • Explicitly add a discord.ext.commands.CommandNotFound response for slash commands.

New Features

  • Interactions webserver.

0.7.2

Bugs Fixed

  • Fixed component interaction in the paginator.

Changed Features

  • The [p]stats embed now shows version infos for Novus, VBU, and Python.
  • Fix ephemeral kwarg always being defined.
  • [p]channelhelp and [p]commands are no longer added as slash commands.

New Features

  • New (undocumented) embeddify method.

0.7.1

Bugs Fixed

  • Fix avatar.url being deprecated..
  • Fix Webhook.AsyncWebhookAdapter being deprecated.
  • Fix slash command logging.
  • Readd addslashcommands command.
  • Fix Bot.get_invite_link.
  • Remove references to embeddify.

0.7.0

Discord.py has died. I will now be maintaining both VoxelBotUtils and a Discord.py fork, Novus. As such, lot of features have thus moved from VBU over to Novus.

  • ComponentMessage is now redundant.
  • bot_has_permissions is now redundant.
  • Slash commands have been merged into Novus.
  • Interactions have been moved into Novus as discord.ui.*. The models remain the same.
  • All slash command checks (and their errors) have been removed as they will be added to Novus. They have not yet been replicated.
  • All cooldown subclasses have been removed, as Novus supports a dynamic cooldown system thanks to Danny. Thanks Danny.
  • argparse is no longer interpreted by commands as Danny implemented a flags system which is - quite frankly - better.
  • SubcommandGroup and its decorator have been removed, as Novus interprets this dynamically.
  • InteractionMessageable has been superceded by discord.Interaction.
  • vbu.PartialChannel has been removed. Novus replaces this as discord.Client.get_partial_messageable.
  • vbu.TimeFormatter has been removed. Novus replaces this as discord.utils.format_dt.
  • Context.is_interaction has been removed. Novus replaces this as discord.abc.Messageable.supports_ephemeral.

0.6.6

New Features

  • Support enums in slash commands.
  • Add component_check method.
  • Add format.
  • Add button commands.
  • voxelbotutils.Paginator now supports lists of embeds.

Changed Features

  • Add bot attribute to ComponentInteractionPayload.
  • The runsql command will now always use repr instead of str, and will output only to a file.
  • Support :class:`enum.Enum`s in slash commands.

Bugs Fixed

  • Fixed errors in slash commands not being sent through properly.

0.6.5

New Features

  • Add vbu version to the auto-generated requirements file.

Bugs Fixed

  • Fixed slash command command check.

0.6.4

New Features

  • Add defer check.

Changed Features

  • cogs.utils is now imported automatically in your ev command.
  • Update webhook timestamps to use Discord time formatters.
  • Add different filtering for slash command adds.

Bugs Fixed

  • Fixed disabled commands being added as slash commands.

0.6.3

Changed Features

  • Set the default permission for menus.Menu.create_cog to manage_guild.

Bugs Fixed

  • Fixed cooldowns not parsing correctly for slash commands.
  • Fixed the info command raising an error for missing permissions for embeds.

0.6.2

Bugs Fixed

  • Fixed subclass instances not being converted to slash commands properly.
  • Fix statsd logging for slash commands.

0.6.1

Changed Features

  • Add post_invoke kwarg to menus.Menu.create_cog.
  • Change how converters work for components in menus.Converter.

Bugs Fixed

  • Fixed error where embeddified messages would require an author.
  • Fix type hinting for menus.Menu.create_cog

0.6.0

Breaking changes this time involve the messages intent becoming priviliged in time. Everything in this is to try to make that transition easier.

New Features

  • A new info command and config<BotConfig.bot_info>
  • vbu run-shell as a new command line argument<cmd_run_shell>.
  • vbu commands [add|remove] as a new command line argument<cmd_commands>.
  • A drop-in replacement check for discord.ext.commands.bot_has_permissions and discord.ext.commands.bot_has_guild_permissions in the form of bot_has_permissions and bot_has_guild_permissions. These perform the original checks for message commands, and are ignored for application commands.

Changed Features

  • Fixed ComponentInteractionPayload.update_message not functioning the same as discord.Message.edit.

Bugs Fixed

  • Fix error where the paginator says components are undefined.
  • Fix slash command arguments not being stripped.
  • Fix slash command conversion errors not being dispatched.

Removed Features

  • help_command and command_data have been removed from the config. help_command will still be parsed, but is no longer present in the default config file. A help command is not necessary in the world of slash commands, so configuring it is not high on the agenda.

0.5.10

Bugs Fixed

  • Fixed menus being created without default permissions.

0.5.9

New Features

  • Support for context commands.

Changed Features

  • Updated the list of converted colours.
  • Changed how slash commands/subcommands were parsed.
  • Bot.session now logs to statsd.

Bugs Fixed

  • Fixed error where you couldn't set wait kwarg on :code:`TextChannel`s.

0.5.8

New Features

  • Handle disconnects and reconnects better in the shard manager.
  • Handle pings and keepalives in the shard manager.
  • target_id is now supported in the slash command handler.
  • Add an argparse<voxelbotutils.Command.argparse> attribute to the command decorator. The !addslashcommands command is now updated to use this.

Changed Features

  • exc_info is now returned properly on a startup failure.
  • The send command is no longer embeddified.
  • The list of colours has been updated for the voxelbotutils.converters.ColourConverter.

Bugs Fixed

  • Fixed error in outputting the recommended shard count.

0.5.7

Changed Features

  • Removed native UpgradeChat utils, and instead move them to an external dependancy.
  • Change the eval command to not include globals, and include the VBU data in a vbu arg.
  • Changed the shard manager to use sockets instead of redis.

0.5.6

Bugs Fixed

  • Fix error in creating a redis connection.

0.5.5

New Features

  • Added a shard manager using redis.

0.5.4

Changed Features

  • Remove caching from UpgradeChat utils.

Bugs Fixed

  • Fix logger being undefined in UpgradeChat utils.

0.5.3

New Features

  • Add voxelbotutils.TimeFormatter.

Changed Features

  • The bot will now say its recommended shard count before trying to connect.
  • The voxelbotutils.Bot.create_global_application_command, voxelbotutils.Bot.create_guild_application_command, voxelbotutils.Bot.bulk_create_global_application_commands, and voxelbotutils.Bot.bulk_create_guild_application_command`s will now return instances of :class:`voxelbotutils.ApplicationCommand.

Bugs Fixed

  • Temporarily fixed an issue where the bot wouldn't start without installing web requirements.
  • Fix the embed kwarg not being usable for some embeds.

0.5.2

New Features

  • Allow a bot parameter in voxelbotutils.menus.Menu.create_cog.

Changed Features

  • Message objects returned by the library will now be instances of voxelbotutils.ComponentMessage or voxelbotutils.ComponentWebhookMessage.
  • Handle parameters to slash commands better instead of leaving them to D.py to be converted.
  • Change the format on vbu's loggers.

Bugs Fixed

  • Fixed an issue where paginators wouldn't expire cleanly.

0.5.1

Changed Features

  • Allow select menus to be disabled
  • Don't add a "menu loading" message for paginators.

0.5.0

This update is mainly to deal with breaking changes for the settings menus.

Changed Features

  • The settings menus have been entirely, incompatibly, redone.

0.4.0

This update is mainly to deal with breaking changes for the web utilities.

New Features

  • Added the voxelbotutils.web.OauthGuild, voxelbotutils.web.OauthUser, and voxelbotutils.web.OauthMember classes.
  • The discord.Message and discord.WebhookMessage objects have been replaced with subclasses that include message components.
  • Added voxelbotutils.SelectMenu and related objects.
  • Message objects now have enable_components and disable_components methods.
  • voxelbotutils.InteractionMessageable now has a respond<voxelbotutils.InteractionMessageable.respond> method that allows you to give a type 4 response to an interaction.

Changed Features

  • Raise voxelbotutils.errors.NotBotSupport if the support guild cannot be fetched.
  • If no scopes are given for voxelbotutils.Bot.get_invite_link, the bot's config<BotConfig.oauth.scopes> will be used.
  • Messages have had wait_for_button_click removed in favour of discord.Client.wait_for.
  • voxelbotutils.Paginator now uses buttons instead of reactions.
  • voxelbotutils.Button instances will now allow a label to be empty if an emoji is set.
  • Components will now give you a discord.PartialMessage instance if the message was not included in the interaction payload.

Bugs Fixed

  • Fixed bug when checking for reactions in the settings menus.
  • Fixed a bug in the stats command for Python versions 3.9+.
  • Add a missing module in the custom command object.
  • Fix bug where file content would not be read in the ev command.
  • Fix AttributeError when getting user mentions in slash commands.

0.3.2

New Features

  • Added voxelbotutils.MinimalBot.
  • The bot's startup logger line now includes the recommended number of shards that you should launch with.
  • Added the voxelbotutils.web.is_logged_in method.
  • Add version command to the CLI args.

Changed Features

  • If embeds are enabled, the footer of embeds will be changed to "currently live on Twitch" when the stream presence is set.
  • If no permissions are given for voxelbotutils.Bot.get_invite_link, the bot's config<BotConfig.oauth.permissions> will be used.
  • Add remove_reaction param to the voxelbotutils.Paginator.start method.
  • Made all voxelbotutils.Button parameters into kwargs, apart from name and custom ID, which are positional.
  • Add voxelbotutils.ComponentHolder.add_component and voxelbotutils.ComponentHolder.remove_component methods.
  • Add voxelbotutils.MessageComponents.boolean_buttons voxelbotutils.MessageComponents.add_buttons_with_rows methods.

Bugs Fixed

  • Fix typo when creating website config.
  • Fix the sharding information for when no arguments are set.
  • Fix access token refreshing in voxelbotutils.UpgradeChat.
  • Fix button clicks not working with ephemeral messages.

0.3.1

New Features

  • Catch discord.ext.commands.ConversionError in the error handler.

Changed Features

  • Set error text to be ephemeral when using slash commands.
  • Allow bots to be created without a prefix (see BotConfig.default_prefix).

Bugs Fixed

  • Fix command name in errors when using subcommands.
  • Fix setting the presence when there are no shard IDs set.
  • Fix casting for args in slash commands.
  • Fix login URL redirect for websites.
  • Fixed removeslashcommands command.

0.3.0

Initial changelog version.