Mark Form, Block, Action, Table, etc. as 'deprectaed'
1622
Views
15
Comments
Not right now
Service Studio

Mark any platform artifact as 'deprecated'

Also add comments/explanation e.g. discontinued, replace usage with ....

Only feature should be Show a Warning when compiling code and add warning to Documentation Output.


I'm not sure if this is what you mean, but it would be great to be able to have the equivalent of "out-commenting" source code in 2/3GL languages so old code can be saved for posterity. Currently, we have to do ugly hacks like an IF with a False condition.
2025-02-22 18-27-01
Alfaro
 
MVP
Merged this idea with 'Mark Action as Obsolete/Deprecated' (created on 09 Sep 2014 14:24:34 by Matthias Preuter)
Advanced property on Public actions to mark an action as Obsolete, with a note property for more detailed info and alternative action. 

Like
  • C# Obsolete
  • Java Deprecated
The Note should be visible in TrueChange windows like "Reminder".

This comment was:
- originally posted on idea 'Mark Action as Obsolete/Deprecated' (created on 09 Sep 2014 by Matthias Preuter)
- merged to idea 'Mark Form, Block, Action, Table, etc. as 'deprectaed'' on 07 Oct 2020 14:04:37 by Carlos Alfaro
2016-04-21 20-09-55
J.
 
MVP
Even though I like it, I wonder what the advantages will be.

In the end the action should be killed anyhow, so why not do it instantly?




This comment was:
- originally posted on idea 'Mark Action as Obsolete/Deprecated' (created on 09 Sep 2014 by Matthias Preuter)
- merged to idea 'Mark Form, Block, Action, Table, etc. as 'deprectaed'' on 07 Oct 2020 14:04:37 by Carlos Alfaro
You don't have to change everthing at once, first change the Core Components and then later adjust it in the layers above. The reminder helps other developers to take action on the Obsolte actions.

This could also be helpful for Forge or System components when they change.



This comment was:
- originally posted on idea 'Mark Action as Obsolete/Deprecated' (created on 09 Sep 2014 by Matthias Preuter)
- merged to idea 'Mark Form, Block, Action, Table, etc. as 'deprectaed'' on 07 Oct 2020 14:04:37 by Carlos Alfaro

Hi!

Just change the name of the public action to contain "DEPRECATED" as OutSystems itself as made in the RichWidgets component as for examples: "Deprecated_Cell_MergeRight", "Deprecated_Container_Round", etc.

This should be enough to call attention. If you want to find deprecated elements just search for the text "DEPRECATED" or even shorter version.

Cheers,

Tiago Bernardo



This comment was:
- originally posted on idea 'Mark Action as Obsolete/Deprecated' (created on 09 Sep 2014 by Matthias Preuter)
- merged to idea 'Mark Form, Block, Action, Table, etc. as 'deprectaed'' on 07 Oct 2020 14:04:37 by Carlos Alfaro

I find this feature to be very useful especially in bigger environments where you have different teams working on co-dependent modules\apps and that can have different development lifecycles. Being able to immediately look at usages of deprecates elements in TrueChange avoids the hassle of having to search for deprecated elements. It would also leverage the possibility of finding the usage of deprecated elements across the entire environment and plan for updating the code where needed.

Currently i use the same approach as Tiago's and in smaller environments where there's only 1 or 2 teams developing it does the job i guess.

However, I would extend this feature to any other potentially reusable element in Service Studio, not just actions (like webblocks, for example).



This comment was:
- originally posted on idea 'Mark Action as Obsolete/Deprecated' (created on 09 Sep 2014 by Matthias Preuter)
- merged to idea 'Mark Form, Block, Action, Table, etc. as 'deprectaed'' on 07 Oct 2020 14:04:37 by Carlos Alfaro
Merged this idea with 'Obsolete/Deprecated flag for public elements' (created on 11 Mar 2021 10:35:05 by João Almeida)

All entities/actions/statics, but specially public ones, should have a deprecated/obsolete flag to make it easier to manage when that element is being phased down. This would trigger a warning in all its the consumers.

Alternatively if a flag is to big of a change (metadata model change) a naming convention on the object names with suffix _Deprecated could be reported as true change and architecture.dashboard warning. 

The bennifit of this approach is that it fits the current way marks deprecated elements in components like OutSystems UI and other Forge and system components build and maintained by OutSystems.

That could be a good compromise, and Architecture Dashboard could pick up on those also.

Just what I need a mechanism to give a True change and Architecture Dashboard warning.

And every time I publish, I get an warning that there is an obsolete element in use.

Changed the category to
Service Studio
Changed the status to
Not right now

Hello Pedro Damásio

Thank you for contributing and your idea fits OutSystems vision for Service Studio. However, we have other priorities that we will focus on first.

For this reason, we are not going to tackle this right away but will keep an eye to revisit it later.

Thank you,
Paulo Sebastião