Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Red v3.4 and End user data. #4093

Closed
Kowlin opened this issue Jul 20, 2020 · 1 comment
Closed

Red v3.4 and End user data. #4093

Kowlin opened this issue Jul 20, 2020 · 1 comment
Labels
Type: Informational Aims to provide information or facilitate discussion.
Milestone

Comments

@Kowlin
Copy link
Member

Kowlin commented Jul 20, 2020

Hey everyone!

We're bringing some important news today regarding Red and data storage, with the upcoming changes to the Discord Developer ToS we're giving you new options to control your data (A big thanks to @mikeshardmind )

You may receive e-mails and notifications from Discord asking you to remove end user data from specific users who have data stored on your bot. Red v3.4 will make it the burden to remove any end user data from the bot a lot easier.

Starting from Red version 3.4 you will have access to the following features.

For Red end users:

  • You have the ability to see what type of information and end user data is stored with the command mydata whatdata.
  • You'll have the ability to export your data with the command mydata getmydata.
    • Note that this feature is still in active development and may not be fully supported initially.
  • You will gain access to a command to delete your own end user data from the bot with the command mydata forgetme.

For Red owners:

  • You as a bot owner will gain the ability to remove data on a per user basis via an command.
  • You will be shown what information a cog stores as its data (this isn't part of Red 3.4 but we plan to add support for it at a later release).
  • You will have the ability to remove all data associated with a cog (deferred).
  • You will be able to delete an end user and its data from the bot.
  • Downloader will warn you when an updated cog has changed its end user data that its storing.

For Red Cog developers:

  • You'll gain a new field named end_user_data_statement in your info.json (On the cog side) and new Red-specific dunder variable named __red_end_user_data_statement__ (put in the cog package) which allows you to explain what EUD you're storing. (Begin work on a data request API #4045, EUD things for Downloader #4169)
    • Bot owner can see this field before installing cog (end_user_data_statement in info.json) as well as when the cog is loaded (__red_end_user_data_statement__ in the cog package).
    • Bot owner will be notified about the changes to that field during cog update.
  • Your cogs will have the ability to programmatically delete end user data by overwriting the function red_delete_data_for_user

Important information with v3.4:

  • We are not unloading all cogs on the start of Red v3.4
  • Upon updating and starting Red v3.4 all cogs will be unloaded.
    • This is to ensure that the bot owner is aware of what data is stored on each cog.

Breaking changes with v3.4:

Any comments on this are welcome on this issue, its associated PRs/issues, or over on our Discord server.

@Kowlin Kowlin added the Type: Informational Aims to provide information or facilitate discussion. label Jul 20, 2020
@Kowlin Kowlin added this to the 3.4.0 milestone Jul 20, 2020
@Kowlin Kowlin pinned this issue Jul 20, 2020
@github-actions github-actions bot added the Status: Needs Triage This has not been labeled or discussed for handling yet. label Jul 20, 2020
@Jackenmen Jackenmen removed the Status: Needs Triage This has not been labeled or discussed for handling yet. label Jul 20, 2020
@Bluscream

This comment has been minimized.

@Kowlin Kowlin closed this as completed Dec 27, 2020
@Kowlin Kowlin unpinned this issue Dec 27, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: Informational Aims to provide information or facilitate discussion.
Projects
None yet
Development

No branches or pull requests

3 participants