Skip to content
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

Reconciler fails on an error of some description when a project is disconnected and reconnected or updated #315

Open
Stoklomolvi opened this issue Apr 26, 2020 · 3 comments
Labels
type: bug Something happens that shouldn't happen version: 6

Comments

@Stoklomolvi
Copy link

I was trying to update my Rojo project (VSCode, I am aware that v6.0.0-rc.1 is still undergoing some work), and in the process of doing so I keep receiving the following error:

17:33:54.384 - [Rojo-Warn] Disconnected from an error: Plugin_rojo.rbxm.Rojo.Plugin.Reconciler:161: unwritable property

I get that bug when I'm trying to sync from VSCode to Roblox Studio for certain folders, but I have yet to isolate what kinds of files (or maybe which specific file) causes this issue. I suspect that it may be a pebkac error with regards to a ***.model.json file, perhaps an extra property definition that does not actually exist in the Roblox class, but I am unsure. In the process of attempting to find the minimum viable project required to duplicate this error, I received another error:

17:46:17.407 - [Rojo-Warn] Disconnected from an error: Plugin_rojo.rbxm.Rojo.Plugin.Reconciler:127: Rojo detected an invariant violation within itself:
17:46:17.413 - [Rojo-Warn] Cannot add an instance from a patch that has no parent.
17:46:17.414 - [Rojo-Warn] Instance 4f437c97-6db9-4fec-9ea2-6f0dbafe864f with parent be61af0d-0583-4dc8-94cc-ea27fc32e4f4.
17:46:17.416 - [Rojo-Warn] State: InstanceMap {
17:46:17.417 - [Rojo-Warn] }
17:46:17.419 - [Rojo-Warn] 
17:46:17.419 - [Rojo-Warn] This is a bug in Rojo. Please file an issue:
17:46:17.420 - [Rojo-Warn] https://github.com/rojo-rbx/rojo/issues

I am not really aware of what to do there, except that that bug did not appear when I was working with v0.5.4. I had started with v0.5.4, but I kept receiving some kind of binary deserialization bug on the server-side (something with regards to SSTR?), so I tried upgrading to v6.0.0-rc1. I searched through the closed issues log to see if something like this issue has been reported before, but it did not appear to have been. My guess is that issue #312 may be related to the issue I am reporting.

Let me know if more information is needed, or this issue is known, etc. Thanks!

@LPGhatguy LPGhatguy added type: bug Something happens that shouldn't happen version: 6 labels Apr 27, 2020
@Stoklomolvi
Copy link
Author

After doing some investigation, I have narrowed down the first bug "unwritable property" to a handful of .rbxmx file that represent Roblox model objects. Not including these files does not induce the Rojo error. Another effect with some of these models (actually, all the models I have), is that the PrimaryPart ref is not set, though I don't think that is expected based on issue #142. I can verify that the .rbxmx files are valid, as I can import them into Roblox Studio directly from file and the PrimaryPart ref is set when using that approach. The referent id in the files themselves also corresponds to the correct parts.

The second bug arises when I am moving a folder into a path that Rojo is actively watching for changes. I believe an easy way to replicate this bug would be to:

2. Add a folder with an init.lua in it into the ReplicatedStorage folder on disk; we'll call this folder ScriptA
3. Start Rojo server and connect from Roblox Studio
4. Add another folder of something (preferably a folder with an init.lua in it) to the ScriptA folder on disk
4. Disconnect in Roblox Studio
5. Reconnect in Roblox Studio
6. Add another folder of something (preferably a folder with an init.lua in it) to the ScriptA folder on disk
7. The "invariant violation" bug should arise, but not always

The second bug is not really that impactful, as it does not occur often, but the first bug shuts down the Rojo connection from Roblox Studio, which means that syncing between disk and Roblox Studio has to be done manually, e.g. write code with VSCode, connect in Roblox Studio, write code, connect, etc.

@LPGhatguy
Copy link
Contributor

Hello, thanks for the report! There was a lull of Rojo development in the period since you filed this issue, but I believe this issue should be solved on the Rojo master branch now. I'll be publishing a new Rojo 6.0 release candidate in the coming days.

@dphfox
Copy link

dphfox commented Apr 24, 2021

I just encountered this error randomly in Roblox Studio; I wasn't syncing anything at the time, it just happened in the background:

image

No idea if this is fixed already, but thought I'd let you know anyways 🙂

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: bug Something happens that shouldn't happen version: 6
Projects
None yet
Development

No branches or pull requests

3 participants