-
Notifications
You must be signed in to change notification settings - Fork 185
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Rojo marking scripts as "Unknown Instance" when syncing #512
Comments
Is there any way this could be my own issue and if so is there a way i can fix it myself |
I am also experiencing this issue. Is there anything i can do to help with tracking down the exact problem? |
Hello, thank you for filing an issue. I think there are two problems here. The first issue is with the diagnostic that Rojo is giving you. The instance should not be marked as an unknown instance. This is hopefully just a cosmetic issue, but hints at a potential bug in the plugin's internal instance tracking. The second issue is that Rojo is not giving you details about why it couldn't update
If you run into this issue, I would recommend looking for any very large scripts in your game. They are likely the cause, and I recommend splitting them into multiple modules not just for Rojo, but for general readability and performance. |
When a session is disconnected, the apiContext long-polling for messages continues until resolved/rejected. This means that even after a session is disconnected, a message can be received and handled. This leads to bad behavior, as the session was already cleaned up and the message cannot be handled correctly. The instance map was cleaned up upon disconnect, so it will warn about unapplied changes to unknown instances. (Like #512) It's very easy to repro: Connect a session, disconnect it, then save a change. https://github.com/rojo-rbx/rojo/assets/40185666/846a7269-7043-4727-9f9c-b3ac55a18a3a ----------- This PR fixes that neatly by tracking all active requests in a map, and cancelling their promises when we disconnect.
When a session is disconnected, the apiContext long-polling for messages continues until resolved/rejected. This means that even after a session is disconnected, a message can be received and handled. This leads to bad behavior, as the session was already cleaned up and the message cannot be handled correctly. The instance map was cleaned up upon disconnect, so it will warn about unapplied changes to unknown instances. (Like rojo-rbx#512) It's very easy to repro: Connect a session, disconnect it, then save a change. https://github.com/rojo-rbx/rojo/assets/40185666/846a7269-7043-4727-9f9c-b3ac55a18a3a ----------- This PR fixes that neatly by tracking all active requests in a map, and cancelling their promises when we disconnect.
Error Returned From Roblox:
![image](https://user-images.githubusercontent.com/36064214/146646520-c20781ec-3f3e-4783-a4f1-3df45c809a12.png)
Script In Question:
![image](https://user-images.githubusercontent.com/36064214/146646548-d95e06ee-f001-42f5-a200-3da73e8e58cb.png)
The text was updated successfully, but these errors were encountered: