As part of the Jade 2016 SP1 release details, the signature for the new String::replace function has been published for the upcoming Jade 2018 release.
The signature of this is:
Code: Select all
replace(target: String; replacement: String; bIgnoreCase: Boolean): String;
However, we've already got an existing String::replace implementation with the following signature:
Code: Select all
replace(target: String; replacement: String): String;
This has approx. 300 references that will need to be changed via our source control procedures (along with associated testing), with all changes being released simultaneously alongside the method signature change. Depending on company policies when it comes to implementing/testing such changes, the time & effort involved could end up making an upgrade to Jade 2018 prohibitively difficult for anyone in a similar boat.
Before submitting anything via JEDI to ask for things that could help us with the migration/upgrade path to Jade 2018 in this regard - I first wanted to raise this here to give others the chance to share how their String::replace methods are defined (I'm assuming we've all got a version of this!), so we can all see which one is most common.
Couple of Jade features that'd be useful to have in general, which would help with this:
- Default parameters. In lieu of method overloading, this would allow the default value of the last parameter to be specified by Jade, so we can utilise the String::replace function upfront.
- Rename Method JCF command. This would allow us to rename our current implementation to something else, along with updating all references simultaneously.