Release Notes for 471

Notes for Release 471


Client Difference Log

API Changes

Added Class StudioDeviceEmulatorService : Instance [NotCreatable] [Service] [NotReplicated]
	Added Function bool StudioDeviceEmulatorService:EmulatePCDeviceWithResolution(string deviceId, Vector2 resolution) {RobloxScriptSecurity} [Yields]
	Added Function string StudioDeviceEmulatorService:GetCurrentDeviceId() {RobloxScriptSecurity} [Yields]
	Added Function Enum<ScreenOrientation> StudioDeviceEmulatorService:GetCurrentOrientation() {RobloxScriptSecurity} [Yields]
	Added Function bool StudioDeviceEmulatorService:HasDeviceWithId(string deviceId) {RobloxScriptSecurity} [Yields]
	Added Function void StudioDeviceEmulatorService:SetCurrentDeviceId(string deviceId) {RobloxScriptSecurity} [Yields]
	Added Function void StudioDeviceEmulatorService:SetCurrentOrientation(Enum<ScreenOrientation> orientation) {RobloxScriptSecurity} [Yields]
	Added Event StudioDeviceEmulatorService.CurrentDeviceIdChanged() {RobloxScriptSecurity}
	Added Event StudioDeviceEmulatorService.OrientationChanged() {RobloxScriptSecurity}

Added Property bool Studio.Show Deployment Warnings
Added Property Color3 Studio.Menu Item Background Color [NotReplicated]
Added Property Color3 Studio.Primary Text Color [NotReplicated]
Added Property Color3 Studio.Script Editor Scrollbar Background Color [NotReplicated]
Added Property Color3 Studio.Script Editor Scrollbar Handle Color [NotReplicated]
Added Property Color3 Studio.Secondary Text Color [NotReplicated]
Added Property Color3 Studio.Selected Menu Item Background Color [NotReplicated]
Added Property Color3 Studio.Selected Text Color [NotReplicated]

Added Event StudioService.OnSaveOrPublishPlaceToRoblox(bool showGameSelect, bool isPublish) {RobloxScriptSecurity}

Added EnumItem StudioScriptEditorColorCategories.MenuPrimaryText : 30
Added EnumItem StudioScriptEditorColorCategories.MenuSecondaryText : 31
Added EnumItem StudioScriptEditorColorCategories.MenuSelectedText : 32
Added EnumItem StudioScriptEditorColorCategories.MenuBackground : 33
Added EnumItem StudioScriptEditorColorCategories.MenuSelectedBackground : 34
Added EnumItem StudioScriptEditorColorCategories.MenuScrollbarBackground : 35
Added EnumItem StudioScriptEditorColorCategories.MenuScrollbarHandle : 36

Removed Function MemStorageService:GetTable

(Click here for a syntax highlighted version!)


Update 471 shows syntax for generic varargs as
function f<a…>(…: a…) end

And update 469 shows typed varargs as
function foo(…: T): …T

Which one is it? T… for generics and …number for builtin types? Or …number / …T for generics and the latest update is a typo?

3 weeks ago it said generics for functions were added, but I still can’t use them, any word on when they will be enabled?



function foo(...: number): ...number means it’s a function that accepts a variadic length of numbers.

function foo<T...>(...: T...): T... will mean that it’s a function that remembers every types of each values passed into ..., so you could write local a, b = foo(1, "hello") and we’ll know to return (number, string) in this case.

They’ll be enabled sometimes soon in the next week. Had to be disabled due to a critical issue, will be back in a few weeks. Type checking - Luau


Fixed a Luau compatibility bug with userdata comparison; userdata objects now always compare equal to each other since __eq calls are not performed on the object and itself.

In light of the fact that this bug became a feature we’re reevaluating this and the fix is likely to not get enabled.