Skip to content

Rojo 6.0.0 Release Candidate 1

Pre-release
Pre-release
Compare
Choose a tag to compare
@LPGhatguy LPGhatguy released this 30 Mar 00:25
· 378 commits to master since this release

This is the first release candidate for Rojo 6!

We've decided that it's time for Rojo to come out of being a 0.x version project, as it is already used in production on many large-scale projects. We also chose to skip over 1.0, like many projects, to avoid needing to call a version of Rojo "1.0".

This release contains the last new features before Rojo 6.0 will be released. If all goes well, we should have one or two more release candidates with bug fixes before that happens.

Major Changes

.json files now turn into ModuleScript instances

Ever need to get some data into Roblox? Now, you can use Rojo to transform any JSON file into a Lua ModuleScript that's ready to be loaded!

$className now optional for services

Tired of writing "ReplicatedStorage": { "$className": "ReplicatedStorage" }? Now, Rojo is smart enough to no longer need these hints for services.

This change also works for the children of StarterPlayer: StarterPlayerScripts and StarterCharacterScripts!

{
	"name": "Hello, Rojo 6!",
	"tree": {
		"$className": "DataModel",

		"ReplicatedStorage": {
			"$path": "src/ReplicatedStorage"
		},

		"StarterPlayer": {
			"StarterPlayerScripts": {},
			"StarterCharacterScripts": {}
		}
	}
}

rojo plugin install

The Rojo CLI is now able to install its plugin for you with a single command. This can help make sure that the plugin you're using is the correct version.

Two-Way Sync Option

This option is very very unstable, but it's now possible to toggle two-way sync in the Rojo plugin:

Rojo 6 Settings Panel

This feature is likely to blow up in all sorts of exciting ways and is known to cause several problems right now.

Open Scripts Externally

Another option has appeared next to two-way sync: the ability to open scripts in your external editor instead of the built-in Studio editor.

Turning this on will make the Rojo plugin intercept any attempt to open a script and open the corresponding .lua file in your default program.

Trying the Release Candidate

To install the Roblox Studio plugin, there are a few options now:

  • Run rojo plugin install from the Rojo 6 CLI
  • Download the attached Rojo.rbxm and install it manually
  • Install from the Roblox plugin page

There are now a few ways to download the Rojo CLI.

With Foreman

Add a line to the [tools] section in foreman.toml:

rojo = { source = "rojo-rbx/rojo", version = "6.0.0-rc.1" }

From GitHub Release

Download one of the attached binaries on this release page!

From the VS Code Extension

Change your release channel in the extension's setting page to 6.x:

unknown (11)

From Crates.io

You can use Cargo (1.40.0+) to build the release yourself from crates.io:

cargo install rojo --version 6.0.0-rc.1

All Changes Since 0.6.0-alpha.3

  • Added basic settings panel to plugin, with two settings:
    • "Open Scripts Externally": When enabled, opening a script in Studio will instead open it in your default text editor.
    • "Two-Way Sync": When enabled, Rojo will attempt to save changes to your place back to the filesystem. Very early feature, very broken, beware!
  • Added --color option to force-enable or force-disable color in Rojo's output.
  • Added support for turning .json files into ModuleScript instances (#308)
  • Added rojo plugin install and rojo plugin uninstall to allow Rojo to manage its Roblox Studio plugin. (#304)
  • Class names no longer need to be specified for Roblox services in Rojo projects. (#210)
  • The server half of experimental two-way sync is now enabled by default.
  • Increased default logging verbosity in commands like rojo build.
  • Rojo now requires a project file again, just like 0.5.4.