Skip to content

Implement BukkitScheduler and ServicesManager#20

Merged
Snowiiii merged 3 commits into
Pumpkin-MC:masterfrom
Sqrilizz:master
May 19, 2026
Merged

Implement BukkitScheduler and ServicesManager#20
Snowiiii merged 3 commits into
Pumpkin-MC:masterfrom
Sqrilizz:master

Conversation

@Sqrilizz
Copy link
Copy Markdown
Contributor

Summary

  • Implement PatchBukkitServicesManager — a fully functional ServicesManager backed by a ConcurrentHashMap with priority-sorted providers; Server.getServicesManager() now returns a working instance instead of throwing UnsupportedOperationException
  • Implement PatchBukkitScheduler — replace all stubbed methods with a real ScheduledThreadPoolExecutor-backed implementation; all async scheduling methods (runTaskAsynchronously, runTaskLaterAsynchronously, runTaskTimerAsynchronously, etc.) are functional with tick-to-millisecond conversion
  • Add PatchBukkitTaskBukkitTask implementation wiring task IDs to the scheduler for cancellation tracking
  • Wire both implementations into PatchBukkitServer via instance fields
  • Add SchedulerTests and ServicesManagerTests to the conformance test plugin covering 11 new test cases

Test plan

  • /pbtest scheduler passes 6/6
  • /pbtest services_manager passes 5/5
  • /pbtest all passes 534/543 (9 pre-existing failures unrelated to this PR)
  • Java and Rust projects build successfully

@Sqrilizz
Copy link
Copy Markdown
Contributor Author

Sqrilizz commented May 18, 2026

@BjornTheProgrammer i saw that you've merged the last pull so i mentioned you

@BjornTheProgrammer
Copy link
Copy Markdown
Collaborator

Not a problem to mention me! I'm not actively working on this right now anymore. Feel free to post in the discord and I'm sure someone will be able to.

@Snowiiii
Copy link
Copy Markdown
Member

LGTM. Thank you @Sqrilizz :D

@Snowiiii Snowiiii merged commit fcadfea into Pumpkin-MC:master May 19, 2026
13 checks passed
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.

3 participants