Age | Commit message (Collapse) | Author |
|
Note: This PR also changes the port of the GDScript Language Server from 6008 to 6005. This opens enough ports above the debug port (6007) for this change to be useful.
|
|
https://github.com/tatsuhiro-t/wslay/commit/45d22583b488f79d5a4e598cc7675c191c5ab53f
Mostly style changes, a couple new methods and fixes.
Tweak file structure a bit.
|
|
Websockets: Fix buffer size checks in put_packet(), silent failures/connection hangs
|
|
Also check the error return value of wslay_event_queue_msg()
|
|
|
|
|
|
While at it, tweak some boolean setters to use `p_enabled` for the bool.
Also renames `draw_minimap()` to `set_draw_minimap()`.
|
|
|
|
|
|
[Net] Extension system for network peers, webrtc.
|
|
|
|
|
|
|
|
|
|
|
|
Removes _networking_ prefix from some methods and members, now that multiplayer has been largely moved out of Node and SceneTree and is seperated into its own set of classes.
|
|
Move multiplayer classes to "core/multiplayer" subdir.
Move the RPCConfig and enums (TransferMode, RPCMode) to a separate
file (multiplayer.h), and bind them to the global namespace.
Move the RPC handling code to its own class (RPCManager).
Renames "get_rpc_sender_id" to "get_remote_sender_id".
|
|
|
|
|
|
Add a missing call to disable warnings on a forked env for freetype's
`sfnt.c`.
|
|
[Net] Implement RPC channels in MultiplayerAPI.
|
|
WebsocketPeer outbound buffer fixes and buffer size query
|
|
|
|
|
|
For the time being we don't support writing a description for those, preferring
having all details in the method's description.
Using self-closing tags saves half the lines, and prevents contributors from
thinking that they should write the argument or return documentation there.
|
|
Used by ENetMultiplayerPeer and WebSocketServer to generate network IDs,
and exposed to the user for p2p networks (e.g. WebRTCMultiplayerPeer)
and custom MultiplayerPeer implementations.
|
|
And const when possible.
|
|
Found via `codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,fave,findn,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint`
|
|
|
|
* Added a new macro SNAME() that constructs and caches a local stringname.
* Subsequent usages use the cached version.
* Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time.
* Replaced all theme usages by this new macro.
* Replace all signal emission usages by this new macro.
* Replace all call_deferred usages by this new macro.
This is part of ongoing work to optimize GUI and the editor.
|
|
This information is exposed to the websocket server through the
client_connected-signal.
example.com/chat?id=10 gives the resource name "/chat?id=10"
|
|
Was looking for misuse of module headers without checking that the module is
actually enabled and got carried away...
|
|
* This PR adds the ability to disable classes when building.
* For now it's only possible to do this via command like:
`scons disable_classes=RayCast2D,Area3D`
* Eventually, a proper UI will be implemented to create a build config file to do this at large scale, as well as detect what is used in the project.
|
|
|
|
This should make troubleshooting easier.
|
|
|
|
[Net] Add WebSocketServer handshake_timeout property.
|
|
Allows customization of the maximum time a client is allowed to stay in
the the "pending" state (i.e. awaiting HTTP handshake).
This used to be 1 second by before, the new default is 3 seconds.
|
|
Recent changes to parse_url caused the client to make invalid HTTP
requests if no path was specified.
|
|
|
|
Add PROPERTY_USAGE_NONE and use it
|
|
|
|
|
|
|
|
|
|
[Net] Implement String::parse_url for parsing URLs.
|
|
|
|
We've been using standard C library functions `memcpy`/`memset` for these since
2016 with 67f65f66391327b2967a20a89c3627e1dd6e84eb.
There was still the possibility for third-party platform ports to override the
definitions with a custom header, but this doesn't seem useful anymore.
|
|
Splits the URL into (scheme, host, port, path).
Supports both literal IPv4 and IPv6.
Strip credentials when present (e.g. http://user:pass@example.com/).
Use that function in both HTTPRequest and WebSocketClient.
|
|
See https://github.com/godotengine/godot/issues/37739.
|