Release Notes for 630

Why was it decided to set the attribute on the line before the named function declaration? Wouldn’t it make more sense to just always place the tag before the function keyword, as is already the case with anonymous functions? Can I do it this way regardless?

4 Likes

Finally, no more pain…
(Thank me for reporting it)

9 Likes

We are so back

8 Likes

Luau is a whitespace agnostic language so you can, but it’ll have to be before the local. So something like this does work just fine:

@native local function foo()
end

but something like this will not:

local @native function foo()
end

This is just because of how Luau is parsed. There’s no difference between local @native; function foo() end and local @native function foo() end to the parser, which means that you can’t tell whether it’s valid syntax or a bug.

7 Likes

thank you for the clarification!

enjoy your weekend everyone :+1:

4 Likes

It’s nice to see something in the release notes knowing that you were involved in it:


I am the one who first reported this issue it was actualy in someone elses bug report come feature request that i reported the issue

The "bug report"


https://devforum.roblox.com/t/viewportframes-do-not-show-surfaceappearances-properly/1477371/18

6 Likes

So is ban API coming out soon?

4 Likes

Likely early staging. Maybe we’ll see a beta in the next 2-3 months?

6 Likes

FINALLY.

7 Likes

Sometimes fixes or changes gets marked as live even when they’re not, for example this bug fix got marked as live even though it’s not rolled out yet. This can be very confusing and misleading especially since no Roblox engineer responded to the bug report of this issue in the devforum.

Also this fix appeared again on the release notes of version 630 even though it first appeared on the release notes of version 626.

5 Likes

The beta is already live it just wont work in game


(Source: Release note 622)

3 Likes

I always love to see the new changes made to Roblox Studio. The teams have brought amazing features in the past months, and I look forward to the future!

2 Likes


Finally… after all these years… you don’t know how much I was waiting for this!

5 Likes

I’m not really familiar with some terms within the coding community. What does this mean, and what are the possible benefits? I’m intrigued.

3 Likes

pretty sure it’s related to this one

3 Likes

Uh, so there’s an issue where if you join a Roblox game the textures and user interface appear low quality. I hope this gets fixed.

Here is an example:

Right now:

Normally:

You can see that the second image is a lot more clearer and of more quality than the first one. The textures on the characters are blurrier in the first image and so is the logo of the game which is a GUI.

3 Likes

Luau annotations has me the most excited out of all of this

6 Likes

I think this is dependent on your gpu and how much overload it has since guis render on gpu.

6 Likes


Soooo looking forward to this feature. Having to make my own ban system using data store service was obnoxious.

4 Likes

Attributes are a feature of Luau that allows you to add what’s essentially metadata to functions. You can read the RFC for it here but it’s a bit technical in nature. The idea is that you’ll be able to control things like the compiler and script analyzer a bit better using them.

The @native attribute (proposed in this RFC) is the first of these attributes and it allows you to tell the compiler to make a specific function compile with ‘native code generation’. You don’t need to know the exact details, but the idea behind native code generation is that it will make code very fast by making it run directly on the CPU instead of inside the Luau interpreter.

Not every function benefits from native code generation though. It mostly impacts very math-heavy code. Even if the code doesn’t get anything from it though, it adds some extra memory usage and extra startup time to the code. So, it’s desirable to only natively compile the functions that actually benefit from it. Thus, @native!

6 Likes