Cuberite Forum
Rationale behind ScheduleMoveToWorld - Printable Version

+- Cuberite Forum (https://forum.cuberite.org)
+-- Forum: Cuberite (https://forum.cuberite.org/forum-4.html)
+--- Forum: Development (https://forum.cuberite.org/forum-13.html)
+--- Thread: Rationale behind ScheduleMoveToWorld (/thread-2550.html)



Rationale behind ScheduleMoveToWorld - LogicParrot - 10-11-2016

ScheduleMoveToWorld is currently broken and I am planning to fix this.

Why were the MoveToWorld API functions marked obsolete and why was ScheduleMoveToWorld introduced?


RE: Rationale behind ScheduleMoveToWorld - xoft - 10-11-2016

MoveToWorld originally operated synchronously - it would not return until the player was moved. And it was a big source of deadlocks because of trying to synchronize two tick threads and possibly other threads waiting for the plugin.


RE: Rationale behind ScheduleMoveToWorld - LogicParrot - 10-11-2016

Is it safe to say that we can remove ScheduleMoveToWorld, now that MoveToWorld is not synchronous?


RE: Rationale behind ScheduleMoveToWorld - xoft - 10-11-2016

Usually when we remove a method that was exported in the LuaAPI, we still provide a manual binding for it that logs a warning that the method is obsoleted, what method should be used instead and a Lua stacktrace, then redirect to the new API. This way, the plugins still work and the plugin authors have a clear indication of what's wrong and how to fix it.