rojo-rbx / vscode-rojo Goto Github PK
View Code? Open in Web Editor NEWVisual Studio Code plugin for Rojo
Home Page: https://marketplace.visualstudio.com/items?itemName=evaera.vscode-rojo
License: Mozilla Public License 2.0
Visual Studio Code plugin for Rojo
Home Page: https://marketplace.visualstudio.com/items?itemName=evaera.vscode-rojo
License: Mozilla Public License 2.0
As of the latest update, it is impossible to build a project without using your mouse which is very impractical. You could make it a separate button in the Rojo menu or add a command for it.
Currently the vscode extension will use the "release branch" install from, with a "target version" as an override.
It would be beneficial if the vscode extension looked for a foreman.toml
file and respects the configuration foreman uses. This would make collaborators across a project all use the same version of Rojo.
When you add a new node in default.project.json (via 'Rojo: Sync from here..', I haven't checked what happens when you edit the file directly)
VSCode Terminal
Project configuration changed, reloading Rojo.
Rojo server listening on port 34872
ROBLOX Studio Output
17:49:42.880 - [Rojo-Warn] Rojo session terminated because of an error:
17:49:42.880 - [Rojo-Warn] Unknown error: HttpError: NetFail
It connects back fine by clicking 'Connect' on the Rojo ROBLOX Plugin widget, but is annoying when testing and adding new files!
Once Rojo starts releasing mac binaries, we no longer need to build Rojo from source on macOS. Will need to adjust the install code to handle binaries for both platforms.
The extension will get stuck on "Downloading Rojo..." and will not fallback to the already installed version if Github has issues.
Without a fallback in this case, it will throw Cannot read 'property' of find of undefined
(#55) or HTTP status 500 errors. The extension will basically lock up until the user reload the windows.
Hi, I'm reaching out to let you know that we are fixing a bug with the workspaceContains
VS Code extension activationEvent that could change the activation behavior for your extension.
Here's the issue: This event is supposed to start a search in the user's workspace with the given glob pattern, and activate the extension if it finds a match. A pattern like *.txt
should find a file in the root of the workspace matching *.txt
, but it should not search the entire workspace. A pattern like **/*.txt
should recursively search the entire workspace. We discovered that VS Code is incorrectly applying the **
pattern to every workspaceContains pattern that includes a *
.
Since this may impact the startup performance of VS Code, we need to scope these searches correctly. Once we fix this, a pattern like *.txt
will only match a .txt file in the root of the workspace.
The change will be in VS Code Insiders in early January. It will be released with 1.53 in early February. Please see microsoft/vscode#110510 for more details and let me know if you have any questions.
The feature of "Add support for optional paths" from Rojo 7.1.0 is not supported in the project.schema.json.
Snippet where this needs to be changed
vscode-rojo/schemas/project.schema.json
Line 29 in 2fac453
Hi, I maintain VS Code's Webview API
Our telemetry suggests that your extension uses webviews and may be loading resources in these webviews using hardcoded vscode-resource:
URIs. These URIs have some important limitations and don't work properly when VS Code is run in a browser. We are also making changes in the desktop version of VS Code that may cause these URIs to not work properly in future versions of VS Code.
While we are making our best effort to continue support existing webview extensions that use vscode-resource:
URIs on desktop versions of VS Code, we will not able to fully support all uses cases.
To ensure that your extension continues to work in as many environments as possible—including on web and remotely—please:
Switch to use the Webview.asWebviewUri
function for loading resources.
Switch to use the Webview.cspSource
property in content security policies.
These APIs shipped around 2 years ago so they should be available in all modern versions of VS Code. You can find additional information about the issue here: microsoft/vscode#97962
Let me know if you have any questions about this change
As the title says, any time i start up rojo (7.0.0) i get a warning saying "Couldn't install Rojo plugin: your platform is not supported" but the extension does work and connects to the localhost and the roblox studio rojo plugin can pick it up.
uname -a
:
Linux arch 5.17.4-arch1-1 #1 SMP PREEMPT Wed, 20 Apr 2022 18:29:28 +0000 x86_64 GNU/Linux
Maybe consider having linux as a supported OS since grapejuice and wine can now run roblox and roblox studio on linux just like native
So, Rojo can't build to .rbxl, I get that. But is there an option to choose the build type? I haven't been able to find it, and so took it upon myself to pry open the code of the extension and solve it. I changed 1 character and now it works. Am I missing something or is this the only to solve this issue?
In V05.js, I changed:
"const outputFile = ${outputConfig}.${this.isConfigRootDataModel() ? "rbxl" : "rbxm"}
;"
to
"const outputFile = ${outputConfig}.${this.isConfigRootDataModel() ? "rbxlx" : "rbxm"}
;"
Rojo server startup fails due to rate limit of the update check that occurs every time you start the server
I assume it happens with call to https://api.github.com/repos/LPGhatguy/rojo/releases
{
"message": "API rate limit exceeded for 123.456.789.123. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.)",
"documentation_url": "https://developer.github.com/v3/#rate-limiting"
}
Plugin should handle this error gracefully and still start locally installed rojo server
This tab seems to always show when vs code boots, even if you have projects where rojo is set up. It would be nice to have a config option to turn it off (unless I have missed something)
This may be important for the upcoming 0.5.x changes, depending on how Rojo is released (prerelease or not)
every time i use the command "Rojo: initialize" it throw an error.
spawnSync c:\Users\me.vscode\extensions\evaera.vscode-rojo-1.6.1\bin\rojo-v0.4.13.exe UNKNOWN
To reproduce:
In VSCode, open the command pallette and run the command "Rojo: Show welcome screen"
In the News section of the page, there is one link which leads to a 404. (The only link on the section)
Right now, multiple project files can be serving concurrently, but only if they are from different workspaces (this happens have a multi-root workspace). If you have a project serving already, and you try to start a project file from the same workspace, the old one is stopped before starting the new one.
Is this the behavior that most people want? Or do most people want to be able to serve multiple project files from the same project at once?
Currently on unsupported systems (e.g. Linux) it is not possible to have rojo manage the plugin installation even if you provide the path in settings. On unsupported systems it should be changed so it will only error if a custom path is not provided, if a path is specified then it should use the provided path without issue.
When using VSCode remotely via ssh or codespaces, you have to manually forward the port after serving the project. It should automatically forward the port for you.
Some relevant docs: https://code.visualstudio.com/api/advanced-topics/remote-extensions#forwarding-localhost
I either don't know how or you can't do it
Rojo v0.5.x is incredibly old at this point and seeing how this extension is still being maintained, I'm surprised that the extension still hasn't been updated.
Since I set up my MacBook, the extension has not been able to recognize Aftman's Rojo installation installation and as such prompts me to install it before I can use it.
When clicking "Install Rojo now", it does something and the issue goes away for as long as the editor is open. Once I close and re-open the project, it happens again.
Aftman was installed using the self installer. Its location is:
The issue does not occur when Rojo is installed with Cargo, and does not occur on my Windows PC. It also did not occur with my previous MacBook setup, where I used Homebrew to install Aftman. I'm not sure what's going on.
Rbx-dom currently has pretty weak support for Roblox's binary format (rbxl and rbxm). It would be super sweet if there was a way to configure vscode-rojo to use the xml format ( rbxlx and rbxmx ) when building.
Hello! When you rename a file in vscode, it duplicates it in roblox studio
One of our game designers is struggling with server issue for the Rojo studio plugin. It is very similar to this issue on the main Rojo repo but is easily reproducible with his setup.
lsof -i :34872
in terminal to see the service running.lsof -i :34872
again and notice that the service is still running.Address already in use
.kill -9 [PID]
to kill the running service.VSCode plugin version 2.1.2.
MacOS Big Sur 11.6 (20G165)
Full error output;
Rojo server listening:
Address: localhost
Port: 34872
Visit http://localhost:34872/ in your browser for more information.
[ERROR rojo] Rojo crashed!
[ERROR rojo] This is probably a Rojo bug.
[ERROR rojo]
[ERROR rojo] Please consider filing an issue: https://github.com/rojo-rbx/rojo/issues
[ERROR rojo]
[ERROR rojo] Details: error binding to 127.0.0.1:34872: error creating server listener: Address already in use (os error 48)
[ERROR rojo] in file /Users/runner/.cargo/registry/src/github.com-1ecc6299db9ec823/hyper-0.14.19/src/server/server.rs on line 77
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace.
The extension currently shows the output every time it is activated.
Line to edit:
Line 116 in 449d7fe
I installed Rojo in VS Code. The Welcome page says I need to choose between Roblox.com plugin or Manage It For Me (Recommended). When I click on either button, nothing happens.
Minor "issue", I know. But it's always nice when they're easy ones ;)
In the "Next Steps" section:
Next steps
Now that you've got the hang of using Rojo, you should take a look at the official documentation which dives in deeper on some more advanced features of Rojo that you'll definitely want to know about! Learn how to:
Make your script.......
The "official documentation" link currently goes to: https://lpghatguy.github.io/rojo/sync-details/
I'd suggest going to: https://lpghatguy.github.io/rojo/master/
The title is an error that pops up that ends up breaking Rojo indefinitely, with "strenuous" workarounds.
I am able to replicate this error by spinning the studio extension up before the Rojo server has started via Ctrl+P > Rojo: Start server with last used project file
with the error being rather persistent even when re-opening Visual Studio Code, reinstalling the extension and/or reimporting my place from a .rbxlx
file via rbxlx-to-rojo.
There is uncertainty as to whether being in Zen Mode would cause any problems as there is a setting that mutes notifications.
An obvious one would be to wait until the notification appears then start the server like any individual with a normal amount of patience, however, I feel as if there could be a more elegant way to notify the developer of their impatience; to mitigate such an error from seemingly breaking the extension; either/both.
when I use the command "Rojo: initialize" in Mac, it throw an error:
"spawnSync /Users/userName/Library/Application Support/Code/User/globalStorage/evaera.vscode-rojo/rojo-v6.2.0 Unknown system error -88".
In a Rojo project's schema, under $properties
, having $Name
or $Parent` set can mess up with Rojo's reconciliation. By making the JSON Schema error when the user attempts to set these properties, users will be less prone to making mistakes and causing duplicates when syncing.
There's a few links spread across different files to:
https://github.com/LPGhatguy/rojo
these should be switched to
https://github.com/rojo-rbx/rojo
Kind of a neat feature, and just a suggestion.
Currently, when the "Install Roblox Studio Plugin" button is pressed in the Rojo Menu, the plugin is installed to %localappdata%\Roblox\Plugins
. However, in my Studio settings, I have changed the directory to the local plugins. Using the registry value rbxm_local_plugin_last_directory
located in Computer\HKEY_CURRENT_USER\SOFTWARE\Roblox\RobloxStudio
would fix the issue. %localappdata%\Roblox\Plugins
should still be the fallback value if Computer\HKEY_CURRENT_USER\SOFTWARE\Roblox\RobloxStudio
doesn't exist.
Currently, a message shows up everytime you start syncing with Rojo.
Conflicts of interest notwithstanding, I don't want this advertisement showing up every time I start syncing with Rojo, nor do I want to have to uninstall rojo via foreman in order to use this extension.
test.project.json
, serve.project.json
, default.project.json
for serve mode, and build.project.json
, ... for build modeCurrently, if Rojo crashes, the status icon still remains as if it is currently running. This can be confusing when you are unsure why files will no longer sync, or why the studio plugin will not connect. You have to explicitly check the Rojo extension output to see if that is the issue.
It would make it easier if the icon would update if Rojo is no longer running, either back to the "Start Rojo" status, or a status showing explicitly that Rojo has stopped and it wasn't because the stop command was run.
Doesn't seem to work with anything other than default?
$path + $className is valid
This issue was originally filed by @Integern in rojo-rbx/rojo#238. More details there!
The plugin does not support the 6.x.x versioning scheme and won't install the RC without specifying a Git tag.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.