PaperMC / PaperMC/Waterfall

On-the-fly Plugin Loading and Unloading (Bounty offered)

Open
#22 3 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

type: feature
Dominant language
Shell
Stars
752
Forks
307
Avg merge
15h 48m
Merged PRs (30d)
7

Description

I have been really wanting a stable and smart version of plugin loading and unloading on the fly for a while and it's come to the point that I'm actually willing to offer a bounty for this. I'm willing to offer any of the Waterfall devs $50 (and will pay any fees by processor like PayPal's) for this to be addressed.

There's a few conditions to the way I want it done though:

  1. It has to be more sane than the system that Bukkit/Spigot/Paper uses - IE you can't do it to all plugins.
  2. I want a warning to clearly be displayed that some plugins may fully break with this. (And would really like it if you had to confirm before it work load/unload).
  3. This has to be done in the core - I don't want it in a plugin as I really fear that it will be more of a problem that way than not. Bungee Plugin Manager is a great concept.. but is flawed. The problem with it is that it doesn't always allow all plugins to try initialize and they don't throw errors as it doesn't try to load them for some reason.
  4. This needs to be actively maintained and I am willing to "sponsor" this feature on an ongoing basis.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue does not name files, tests, or entry points. Start by locating Waterfall's core plugin loading and lifecycle handling, then review how Bukkit, Spigot, Paper, and Bungee Plugin Manager approach loading. Done should include selective load/unload, clear warnings and confirmation, reliable initialization errors, and ongoing core maintenance.

Written by the indexing model from the issue text.

Assessment

Domain
backend
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.