Add some built-in method for testing plugins

As a Roblox developer, it is currently annoying to test plugins because there is no built in way to do it, requiring the use of third party tools. I currently use @Anaminus’s Hot Swap plugin to test during plugin development, but this is simply not ideal for several reasons.

  1. Hot Swap uses loadstring, which means it has to be enabled for it to work
  2. It is not intuitive to have to use a third party plugin to develop plugins
  3. Hot Swap (and any derivative) requires the use of getfenv, which may cause problems in the future.

Point one can be solved because plugins technically don’t respect LoadStringEnabled, but points two and three are a bit more beastly. While point three could be solved by just making a new script and running it, that comes with the problem of string properties having a maximum settable size of 199,999 characters (and it generates scripts in the plugin environment, which could get out of hand).

There’s also simply no excuse for point two. Given plugins are an essential part of so many developer’s workflow, it is unreal that this hurdle exists. It just makes plugin development a pain.

If some method to test plugins were added to Studio, it would greatly improve my workflow for designing plugins, and make plugin development easier to jump into for new developers. Unfortunately I can’t be more specific than that because it’s a quality of life change more than anything, but hopefully the ease of access and time saving is enough.

I’m not quite sure how Roblox Engineers test the built-in plugins, but I have to imagine it’s using something like Hot Swap or just saving the plugin and reloading the open place, which is how developers currently do it. I’m sure they would benefit from having a built-in method as well.