+1
On 6/8/2016 10:37 AM, Daniel Fuchs wrote:
On 08/06/16 15:35, Roger Riggs wrote:
Yes, I would update the spec to the new behavior.
What about:
* <li>Otherwise, if the string contains {@code "{<digit>"}
* where {@code <digit>} is in {@code [0-9]}
* then java.text.MessageFormat is used to format the string.
(The current phrasing does not use 'then').
-- daniel
On 6/8/2016 10:31 AM, Daniel Fuchs wrote:
Good point Roger!
I was already wondering whether looking for {[0-9] instead
of {[0-3] deserved a small mention in the release note.
The fact that the spec needs updating confirms that this
little behavior change probably needs to be mentioned.
I will do the paperwork for the spec change.
I don't think we need any switch to revert to the old behaviour,
right?
best regards,
-- daniel
On 08/06/16 15:14, Roger Riggs wrote:
Hi Daniel,
Looks ok, but...
Formatter.java:
- line 104: the javadoc says it looks for '{0' but the implementation
looks for '{'[0..9]
It looks like the spec is out of sync with the implementation (the
implementation is more lenient)
and has been for a while.
According to the spec/javadoc; no formatting should occur unless it
contains "{0"
Roger
On 6/8/2016 9:46 AM, Daniel Fuchs wrote:
Hi,
Please find below a patch for a small optimization
in Formatter.formatMessage.
This patch also removed the synchronized keyword which
was there for historical reasons - but which has
become needless.
More background available at:
https://bugs.openjdk.java.net/browse/JDK-8153666
(thanks Martin!)
and
http://stackoverflow.com/questions/36433146/why-is-the-formatmessage-method-in-java-util-logging-formatter-synchronized
(thanks Jason!)
bug:
8153666: Optimize Formatter.formatMessage
https://bugs.openjdk.java.net/browse/JDK-8153666
patch:
http://cr.openjdk.java.net/~dfuchs/webrev_8153666/webrev.00
best regards, and thanks to all who provided suggestions and
archeological background!
-- daniel