Skip to content

Ensure file loading order respects dependencies.#187

Closed
RobertWesner wants to merge 2 commits intomasterfrom
feature/plugin-load-dependency-order
Closed

Ensure file loading order respects dependencies.#187
RobertWesner wants to merge 2 commits intomasterfrom
feature/plugin-load-dependency-order

Conversation

@RobertWesner
Copy link
Copy Markdown

📌 Pull Request

Description

This PR implements a proper plugin loading order to respect dependencies.

A ABC B C D E F G H

B depends on D
C depends on D
D depends on A
H depends on B
ABC depends on A, B, C

Motivation & Context

A proper standalone Kotlin plugin is impossible without this feature.

Type of Change

Please tick all that apply:

  • 🐛 Bug fix (non-breaking change that fixes an issue)
  • ⚡ Performance improvement
  • 🧩 New feature (non-breaking)
  • 🔧 Refactor / cleanup (no functional changes)
  • 🔥 Crash / exploit fix
  • 📚 Documentation update
  • ❗ Breaking change (may affect plugins or server behavior)

Testing Performed

Debugged right into SimplePluginManager::loadPlugins():194, checked the order, was happy with the results.

  • Compiled successfully with mvn clean package
  • Tested on a Beta 1.7.3 server
  • Existing functionality verified
  • Edge cases considered

Logs / Screenshots (if applicable)

image

dummy_jars.zip

Checklist

Please confirm the following:

  • No unnecessary formatting or whitespace-only changes
  • Changes are compatible with Minecraft Beta 1.7.3
  • No dependencies have been added without discussion with the RetroMC team

Thanks for contributing to Project Poseidon!

@RobertWesner RobertWesner requested a review from RhysB April 6, 2026 13:20
@RobertWesner RobertWesner self-assigned this Apr 6, 2026
@RobertWesner
Copy link
Copy Markdown
Author

Forgot the file extension/filter matching, will add that.

@RobertWesner
Copy link
Copy Markdown
Author

Closing in favor of #188

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant