Does anyone know Lucee 5 and 6 treat this differen...
# lucee
l
Does anyone know Lucee 5 and 6 treat this differently:
Copy code
<cfscript>

    //Java Integer min/max -2147483648 to 2147483647

    writeoutput( isvalid('integer', 2147483647) & '<br>');
    writeoutput( isvalid('integer', 2147483648) & '<br>');
    
    writeoutput( isvalid('integer', -2147483647) & '<br>');
    writeoutput( isvalid('integer', -2147483648) & '<br>');

    /* Lucee Source Test Cases
	assertFalse(IsValid("integer","-21474836480"));
	assertFalse(IsValid("integer","21474836470")
	*/

    writeoutput( isvalid('integer', -21474836480) & '<br>');
    writeoutput( isvalid('integer', 21474836470) & '<br>');


</cfscript>
Lucee 5 and ACF 2023 behave in the same way.
s
Are they using the same java versions ?
use this to see:
Copy code
javaVersion = createObject("java", "java.lang.System").getProperty("java.version");
    writeOutput("Java Version: " & javaVersion);
r
Lucee 6 changed from using Double to BigDecimal, for processing within the engine, and increased the size of acceptable integers in the process.
☝️ 1
l
TryCF has 17 for Lucee 6 and 8 for Lucee 5 So yeah different java versions
@Rodney That makes sense