{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":485667522,"defaultBranch":"main","name":"NetworkSynchronizer","ownerLogin":"GameNetworking","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2022-04-26T06:51:37.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/84706416?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1718949483.0","currentOid":""},"activityList":{"items":[{"before":"cf6bb57f548fdf8f3b6984d0a1ffaf31ad39e204","after":"d229b9f506f6de61dce109790b9aaf8e123e8c39","ref":"refs/heads/main","pushedAt":"2024-07-09T15:07:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Adds CMake properties to force build using MD in MSVC.","shortMessageHtmlLink":"Adds CMake properties to force build using MD in MSVC."}},{"before":"d64424f956d1d62545b38cc4e9873963b77a2321","after":"cf6bb57f548fdf8f3b6984d0a1ffaf31ad39e204","ref":"refs/heads/main","pushedAt":"2024-07-09T13:15:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Adds possiblity to use the DLL version of the MSVC runtime libs","shortMessageHtmlLink":"Adds possiblity to use the DLL version of the MSVC runtime libs"}},{"before":"e402f3f0de43b10f7c78ba9b282d934470a3534d","after":"d64424f956d1d62545b38cc4e9873963b77a2321","ref":"refs/heads/main","pushedAt":"2024-07-05T12:30:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Fixes reset function that wasn't properly reset the RPC methods.","shortMessageHtmlLink":"Fixes reset function that wasn't properly reset the RPC methods."}},{"before":"7f2eb0025e7d633e49c9de97ff25ae731b04be16","after":"e402f3f0de43b10f7c78ba9b282d934470a3534d","ref":"refs/heads/main","pushedAt":"2024-07-05T08:26:24.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Adds the possibility to completelly reset the SceneSync to use it in a new context.","shortMessageHtmlLink":"Adds the possibility to completelly reset the SceneSync to use it in …"}},{"before":"08495bc8f5f64bf1aa8e300db73b986ef395c878","after":"7f2eb0025e7d633e49c9de97ff25ae731b04be16","ref":"refs/heads/main","pushedAt":"2024-07-01T12:39:33.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Fixes scene mode change.\n\nThere were two issues:\n1. The object_data.name was not reset and this was causing some issues with the sync system.\n2. The mode change wasn't triggering the controller reset for the self peer and that was causing some issues with the new test that was changing the peer ID between resets.\n3. The VariableId was changing on the client to NONE, upon sync mode change, and that was causing some crashes. Now the VarId is constant.\n\nAdds a new Test that ensure the scene sync can properly handle the sync mode reset.","shortMessageHtmlLink":"Fixes scene mode change."}},{"before":"393a43c131c5a566717d5510279642b75e1874f6","after":"08495bc8f5f64bf1aa8e300db73b986ef395c878","ref":"refs/heads/main","pushedAt":"2024-07-01T08:18:53.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Allows a delayed name initialization for the ObjectData. + Unit Tests.","shortMessageHtmlLink":"Allows a delayed name initialization for the ObjectData. + Unit Tests."}},{"before":"47375eead5ee54a2c86204ab79ab405f95f2bb39","after":"393a43c131c5a566717d5510279642b75e1874f6","ref":"refs/heads/main","pushedAt":"2024-06-30T18:05:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Improved error log.","shortMessageHtmlLink":"Improved error log."}},{"before":"7b2f5e2391cf4b743a700d79099706165ae1dafd","after":"47375eead5ee54a2c86204ab79ab405f95f2bb39","ref":"refs/heads/main","pushedAt":"2024-06-28T08:00:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Renames function clean to reset on the NetworkInterface that better describes what the functions does.","shortMessageHtmlLink":"Renames function clean to reset on the NetworkInterface that better d…"}},{"before":"eef0ddc1698a5ee0f40ff8af57524b163a43ce3b","after":"7b2f5e2391cf4b743a700d79099706165ae1dafd","ref":"refs/heads/main","pushedAt":"2024-06-24T17:42:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Adds API to force set the SceneDebugger singleton ptr.","shortMessageHtmlLink":"Adds API to force set the SceneDebugger singleton ptr."}},{"before":"51a1dcf8cd70115fa13e4aa3600ffbb4d9c597c2","after":"eef0ddc1698a5ee0f40ff8af57524b163a43ce3b","ref":"refs/heads/main","pushedAt":"2024-06-24T14:39:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Adds NS_ prefix to ASSERT macros to avoid macro conflicts with other libs.","shortMessageHtmlLink":"Adds NS_ prefix to ASSERT macros to avoid macro conflicts with other …"}},{"before":"d1e6434915d57b516c1d42c6c4bc881dc429a5c0","after":"51a1dcf8cd70115fa13e4aa3600ffbb4d9c597c2","ref":"refs/heads/main","pushedAt":"2024-06-22T10:53:23.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Adds test that verify the net sync works when the Networking is disabled.","shortMessageHtmlLink":"Adds test that verify the net sync works when the Networking is disab…"}},{"before":"467274b78b57960e4414a4b85a093212914c0644","after":"d1e6434915d57b516c1d42c6c4bc881dc429a5c0","ref":"refs/heads/main","pushedAt":"2024-06-21T14:36:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Adds tests to check the controller_by_peer property sync.","shortMessageHtmlLink":"Adds tests to check the controller_by_peer property sync."}},{"before":"7922084c831dd1004f09fd4021bae306d1f27654","after":"467274b78b57960e4414a4b85a093212914c0644","ref":"refs/heads/main","pushedAt":"2024-06-21T14:27:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Changes the ASSERT with an ENSURE when in game so broken inputs doesn't crash the game, which is a risk in production.","shortMessageHtmlLink":"Changes the ASSERT with an ENSURE when in game so broken inputs doesn…"}},{"before":"79a55f0f3853e74abc6540be32cc26540c2e94d7","after":"7922084c831dd1004f09fd4021bae306d1f27654","ref":"refs/heads/main","pushedAt":"2024-06-21T14:20:10.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Refactors the FrameInput format so to include the buffer size.\n\nThe reason for this change was to make the NetSync much reliable. Since we can't guarantee that the client is ALWAYS uptodate we can't guarantee the input size calculation to work every time. With this change the size is included into the buffer therefore we made it more reliable and finally removed thecount_input_size which was very easy for the user to introduce bugs.","shortMessageHtmlLink":"Refactors the FrameInput format so to include the buffer size."}},{"before":"5be2040a7178c3b4264d300aea680963e4145f0b","after":"79a55f0f3853e74abc6540be32cc26540c2e94d7","ref":"refs/heads/main","pushedAt":"2024-06-21T09:28:48.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Makes the DataBuffer much reliable and asserts when the controller makes the DB to fail.\n\nThis change ensure that the DataBuffer fails each time any api doesn't perform the action it's supposed to AND asserts if the controller fails a DataBuffer: solving an undefined behaviour that was very missleading.","shortMessageHtmlLink":"Makes the DataBuffer much reliable and asserts when the controller ma…"}},{"before":"8aed0e4731e4056d55d98c53b86cd3d1cbdc1b14","after":"5be2040a7178c3b4264d300aea680963e4145f0b","ref":"refs/heads/main","pushedAt":"2024-06-21T06:58:57.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Changes uint32 to VarId::IdType on a loop.","shortMessageHtmlLink":"Changes uint32 to VarId::IdType on a loop."}},{"before":"7428951a300cc1195daec79d9731842dae52a0a3","after":"8aed0e4731e4056d55d98c53b86cd3d1cbdc1b14","ref":"refs/heads/main","pushedAt":"2024-06-21T06:55:11.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Changes the type used for VarId to uint8 and ObjectNetId to uint16 optimizing the encoding.","shortMessageHtmlLink":"Changes the type used for VarId to uint8 and ObjectNetId to uint16 op…"}},{"before":"e056d6d7d5772364481605b04d860826e6cea1c9","after":null,"ref":"refs/heads/NetworkControlledBy","pushedAt":"2024-06-21T05:58:03.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"}},{"before":"ba310a45b2ebfd4335fb7cc7edd64ec3de11637d","after":"7428951a300cc1195daec79d9731842dae52a0a3","ref":"refs/heads/main","pushedAt":"2024-06-21T05:57:40.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Refactors the snapshot generation/parsing to ensure the controlled_by_peer is also networked\n\nThis change was necessary to simplify the way the controller peer are synchronized. Now the server is the only responsible to set the controlling peer and the net sync will sync that info with the connected clients.","shortMessageHtmlLink":"Refactors the snapshot generation/parsing to ensure the controlled_by…"}},{"before":"73366c26438fba670a52e2193f29224aef6c0deb","after":"e056d6d7d5772364481605b04d860826e6cea1c9","ref":"refs/heads/NetworkControlledBy","pushedAt":"2024-06-21T05:55:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Finalized the controlled by peer","shortMessageHtmlLink":"Finalized the controlled by peer"}},{"before":null,"after":"73366c26438fba670a52e2193f29224aef6c0deb","ref":"refs/heads/NetworkControlledBy","pushedAt":"2024-06-20T18:34:56.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Integrates the synch of the controlled by peer.","shortMessageHtmlLink":"Integrates the synch of the controlled by peer."}},{"before":"9298c0a376425d489859a910e7278dc4c6ddb96b","after":"ba310a45b2ebfd4335fb7cc7edd64ec3de11637d","ref":"refs/heads/main","pushedAt":"2024-06-20T08:39:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Fixes godot compilation.","shortMessageHtmlLink":"Fixes godot compilation."}},{"before":"8b715bc6d14cddf199e6f9e8c4df0e9d9ebfd9fc","after":null,"ref":"refs/heads/cc","pushedAt":"2024-06-20T08:15:15.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"}},{"before":"562c7b08f12894a9af8e622a0c991220b90ecf39","after":"9298c0a376425d489859a910e7278dc4c6ddb96b","ref":"refs/heads/main","pushedAt":"2024-06-20T08:15:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"The variable type is now statically stored during the variable registration and the encoder can avoid storing it. (#132)","shortMessageHtmlLink":"The variable type is now statically stored during the variable regist…"}},{"before":"6c92aec7c5be604627adb4f903c0d5ad1ccf74e7","after":"562c7b08f12894a9af8e622a0c991220b90ecf39","ref":"refs/heads/main","pushedAt":"2024-06-20T08:14:02.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Update Contributors image link","shortMessageHtmlLink":"Update Contributors image link"}},{"before":null,"after":"8b715bc6d14cddf199e6f9e8c4df0e9d9ebfd9fc","ref":"refs/heads/cc","pushedAt":"2024-06-20T08:12:24.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"The variable type is now statically stored during the variable registration and the encoder can avoid storing it.","shortMessageHtmlLink":"The variable type is now statically stored during the variable regist…"}},{"before":"562c7b08f12894a9af8e622a0c991220b90ecf39","after":"6c92aec7c5be604627adb4f903c0d5ad1ccf74e7","ref":"refs/heads/main","pushedAt":"2024-06-20T08:12:14.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Merge branch 'main' of github.com:GameNetworking/network_synchronizer","shortMessageHtmlLink":"Merge branch 'main' of github.com:GameNetworking/network_synchronizer"}},{"before":"c9798b479aa3a37b14e2b2444b7d849b0e7eb338","after":"562c7b08f12894a9af8e622a0c991220b90ecf39","ref":"refs/heads/main","pushedAt":"2024-06-19T15:28:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Update Contributors image link","shortMessageHtmlLink":"Update Contributors image link"}},{"before":"c7b8f08a321edfeba092fdf02f55b2bfe0fa5327","after":null,"ref":"refs/heads/fixtests","pushedAt":"2024-06-19T13:51:53.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"}},{"before":"53df87a67a3b5fa9cf420eac9d418332598eecb2","after":"c9798b479aa3a37b14e2b2444b7d849b0e7eb338","ref":"refs/heads/main","pushedAt":"2024-06-19T13:51:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"AndreaCatania","name":"Andrea Catania","path":"/AndreaCatania","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/8342599?s=80&v=4"},"commit":{"message":"Fixes tests (#131)\n\nWhen running the tests multiple time was possible to cause them to assert due some desync that happened because of the compensation algorithm was triggering random desync. These random desync make the tests miss behave that were unable to rely on some assumptions that allow them to verify the various algorithms.\r\nThe fix was essentially disabling the compensation algorithm (sub_ticks) feature entirely to ensure the test can trigger desync on purpose and verify all the algorithms like the recovery mechanism.\r\n\r\nNotice, this bug isn't a regression. This was never triggered / detected before and in any case the bug was on the tests not on the code.","shortMessageHtmlLink":"Fixes tests (#131)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEetAncQA","startCursor":null,"endCursor":null}},"title":"Activity · GameNetworking/NetworkSynchronizer"}