DateTimeFormat does not support 'X' in the mask

Description

Lucee currently does not support using the 'X' portion of the mask inside of the DateTimeFormat function. When trying to create a date such as

which is 'ThreeLetterISO8601TimeZone' according to the SimpleDateFormat Java docs https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html#iso8601timezone

The following works in Coldfusion 2016:

which at the time of running it produced:

But in the latest versions of Lucee produces:

As a workaround currently the only way to get the desired output to work in Lucee is to use this:

For clarity using:

does not produce the desired result because the time zone portion does not contain a colon. Please see the comment thread below.

Environment

None

Activity

Show:
Igal Sapir
October 31, 2017, 3:43 PM
Brandon Brown
October 31, 2017, 3:46 PM

See attached image for the Java example with the difference between X and Z

Igal Sapir
October 31, 2017, 4:25 PM

please confirm the issue. thank you.

Igal Sapir
October 31, 2017, 4:47 PM

thank you for your input.

Pothys - MitrahSoft
November 1, 2017, 11:00 AM

I've added test case for this ticket & confirmed the issue happened on lucee. It fixed in latest lucee versoin Lucee 5.2.6.13
Pull Request: https://github.com/lucee/Lucee/pull/332

Fixed

Assignee

Igal Sapir

Reporter

Brandon Brown

Priority

Major

Labels

Fix versions

Sprint

None

Affects versions