Array.delete now returns an array?

We have recently upgraded to the new 5.3.2.77 version of Lucee from 5.2.8.50 and have found a surprising change which has broken our unit tests.

array.delete(value) and array.append(value) now return the array (with the “value” deleted or added) where it used to return a boolean.

I can find nothing in the release notes or the Jira issue tracker about this change. This is quite a core and non-compatible change, I would expect something like this to be documented somewhere. Further, it is not even consistent with your docs:

which at the time of posting specify that these methods should return booleans.

I am worried after the upgrade that there will be other subtle changes that are not backward compatible with our existing code. Where can I find a list of these changes?

Or was this even supposed to be changed? Is this perhaps a bug?

1 Like

It may have been part of this ticket which was for Adobe CF 2018 compat.

https://luceeserver.atlassian.net/browse/LDEV-1844

You can read more about Adobe’s change including array.delete() here:

1 Like

3 posts were split to a new topic: SNAPSHOT Changelogs

Return values for the documentation needs updating to Array. We’ve just tripped up on this too. Happy to do it if I’m allowed!

Return values are defined in the xml files and are automatically output by the docs build process. File a PR!

https://github.com/lucee/Lucee/5.3/core/src/main/java/resource/fld/core-base.fld

It will take a while to flow thru to docs as the builds are done with the latest stable commandbox

2 Likes