I am trying to have multiple versions of a module on a controller. I have some programs that want the old module and some that require the new. The breaking change between the two is that my main method in the new module had additional parameters. I can't find a way in KRL to set default values for a method parameter, so I can't get my old programs to work with the new module's main method.
The only other solution I can think of would be is to append a version number to the module name, all of the method names and every program call to the module.... which sounds like a crappy solution.
We only run a program on our robot once and we output new programs multiple times a day. Sometimes we run older programs again, so we have to come up with ways to be backwards compatible. Our company focuses on mass customization instead of mass production which is why we have so many programs and process changes.