OutSystems version locking
599
Views
4
Comments
New
References

Hi,

My suggestion is that modules could reference a particular version of another module. 

This would allow teams to keep developing and evolving their modules and not being concerned about apps that are not currently being worked on becoming broken or needing someone to manually update them.

This is a very common scenario in larger factories and even with proper architecture it will happen.

The way I see this working in practice is tagging module versions as "stable" and any consumer could choose to reference "current version", which would be the same as it is now, or one of the "stable version".

This extra concept of "stable version" might be needed otherwise we would always be selecting from a list of hundreds or thousands of versions.

From a platform perspective I believe this is quite doable! We can already just clone any module and reference that one (thus creating a kind of stable version), the platform could do this behind the scenes and have that "hidden clone" as the Stable version. 

The biggest difference from what we can do now is that these clones MUST use the same physical tables of the main module! (as in: not creating new ones)

It goes without saying that what I'm suggesting here is also the way most "traditional" languages work!

Cheers,

Hermínio

2016-04-21 20-09-55
J.
 
MVP

In other words, you want branching ;)


What a great idea! But not yet, for now its just about keeping some sanity when managing bigger factories! 

Altough I guess you can see this one actually helping towards that goal in the future! ;)

Yeah, I'm not sure how this isn't "branching".

J.Ja

In Unix and also in Microsoft.NET it's possible to have multiple versions of a Lib. So I think this should be possible for OutSystems eSpaces/Modules too. It would be especially nice if it is also possible to put Deprecated flags and comments on e.g. server actions. (not only a flag but comments too, so that a hint can be given on what the replaced ways are).