Please don't use the [Deprecated] tag when hiding new EnumItems

I’ve observed recently that certain new EnumItems have been added with a [Deprecated] tag in order to hide them from the property drop-down menu before they are enabled using an FFlag.

Some examples of recent changes that have done this:

Added EnumItem Material.ForceField : 1584 [Deprecated]

Added EnumItem Technology.Compatibility : 2 [Deprecated]
Added EnumItem Technology.ShadowMap : 3 [Deprecated]

Added EnumItem Font.Gotham : 17 [Deprecated]
Added EnumItem Font.GothamSemibold : 18 [Deprecated]
Added EnumItem Font.GothamBold : 19 [Deprecated]
Added EnumItem Font.GothamBlack : 20 [Deprecated]

Describing them as deprecated has resulted in some confusion when I’ve presented weekly changes to Roblox’s API, as it would seem like the feature is no longer supported upon arrival, which doesn’t make a lot of sense.

Rather than continuing to use a [Deprecated] tag for hiding these new properties, could you guys instead use something like the [Hidden], or the [NotBrowsable] tag? The latter can be set using the ReflectionMetadata.xml file.

Thank you!

36 Likes

I personally find this confusion a result of how either Roblox or the community uses the term “Deprecated.”

Doing a quick search on the term returns results relating to “Discouragement of the use of a certain feature.” So in a way, the [Deprecated] tag is correct.

I don’t think we use the word deprecated on the forum that way. It is always clearly related to a feature being supported at one time but not being supported anymore (i.e. won’t receive updates, might not be fixed if it breaks, might be removed at some point, do not use for new projects)

4 Likes

We used to have a preliminary tag for this sort of thing. Bring it back.

9 Likes

Support, I’ve found this out in Release Notes 449 when CloneTrooper1019 was answering a question about why the term [Deprecated] is being used for the new fonts that arrived and to, that confuses developers a ton by whether this is not going to be functional anymore and developers from new to present are or will get confused with the [Deprecated] tag in Release Notes.

^ Been here for sometime with these types or releases, did struggle a lot when some of the tags got removed and replaced with a separate definition like the tag I’ve mentioned above.

Anywho, why are we still using the term and tag [Deprecated] when we could add back an old tag or a present on if I recall like Preliminary and possibly a new one like the one we see in the Release Notes and that being Pending / Live for certain cases. However, I remember seeing Preliminary being used often in the Github and the Syntax version of the Release Notes, it does use the tag [Preliminary] instead of [Deprecated] in some usecases or a conversion due to confusion to us developers.

I see this being useful in many cases or the ones I’ve listed above, a tag like [Hidden] would be easier for the user/developer(s) to read and understand what values or functions aren’t available or won’t be working with the new studio version. Don’t know why this hasn’t been looked at and added, it seems so much better than [Deprecated].

Bring this tag back as it’ll confuse developers a ton for me and others around the community, the [Deprecated] usecase in the Release Notes scenario seems reasonable by Roblox Staff but it isn’t the right approach for when we’re reading some important updates and information with these releases to studio and nothing else.

3 Likes