History log of /libcore/ojluni/src/main/java/java/util/Formatter.java
Revision Date Author Comments
6975f84c2ed72e1e26d20190b6f318718c849008 01-Mar-2017 Tobias Thierer <tobiast@google.com> Make Android patch docs in ojluni more consistent with style guide

This CL consists of an automated and a manual part (originally
reviewed as separate CLs, then squashed together before submitting
in order to minimize the number of times each Android-changed line
is touch, since that makes future git archaeology on these simpler).

Automated part: Run the following command (performs regex replacements):

find ojluni -name \*\.java | xargs sed -i \
-e 's/Android[- ]changed/Android-changed/ig' \
-e 's/Android-changed :/Android-changed:/g' \
-e 's/Android-changed \(BEGIN\|END\)/\1 Android-changed/g' \
-e 's/Android-changed - /Android-changed: /g' \
-e 's/Android[- ]removed/Android-removed/ig' \
-e 's/Android-removed :/Android-removed:/g' \
-e 's/Android-removed \(BEGIN\|END\)/\1 Android-removed/g' \
-e 's/Android-removed - /Android-removed: /g' \
-e 's/Android[- ]added/Android-added/ig' \
-e 's/Android-added :/Android-added:/g' \
-e 's/Android-added \(BEGIN\|END\)/\1 Android-added/g' \
-e 's/Android-added - /Android-added: /g' \
-e 's/----- \(BEGIN\|END\) android\( -----\)\?/\1 Android-changed/g' \
-e 's/\/\* \(BEGIN\|END\) Android-changed \*\//\/\/ \1 Android-changed/g'

Manual part: Move BEGIN Android-* lines out of block comments

Some Android-{changed,removed,added} lines occurred inside block comments.
This CL targets places in ojluni that contained the String "* BEGIN Android-"

Changes made by this CL include:

- Move the "BEGIN Android-" line into a line comment (the style guide
mandates that "Android-" lines are always in line comments). In many
cases, that line comment is immediately followed by a block comment
holding commented-out upstream code.
- Add corresponding "// END Android-" line comments, where missing.
- Drop documented import changes altogether. These create noise for
little benefit:
(1.) Most import problems will be found at compile time
(2.) They generally correspond to documented changes elsewhere in
the file.
- In most cases, the phrasing of comments and the decision whether to
keep commented out upstream code was not changed by this CL.
- Some additional tweaks were made in line with the style guide.

No attempt was made to:

- Verify that commented-out upstream code actually matches the
current upstream.
- Make any fixes (eg. to comments) that would have required
git archaeology (looking up historic commits).

Bug: 35841464
Test: make droid cts update-api

Change-Id: Ibc60979cb6061cfb0e9c7096cc9dcab30ddfa733
0c3ff19908dde61846673021da243c9dddaa4105 15-Feb-2017 Tobias Thierer <tobiast@google.com> Clarify Android changes to Formatter, GregorianCalendar

Minor clarifications to extent and nature of Android changes
through use of BEGIN/END lines and (in case of small changes)
commented out upstream code.

Also fixed the copyright year in GregorianCalendar to be
consistent with upstream.

Test: Treehugger build succeeds.

Change-Id: I2888390c746235012dd722769b251828ec00b1bc
4ed824ce20b8e732696f63224d9ebea04ed3eea2 21-Dec-2016 Joachim Sauer <jsauer@google.com> Update java.util.Formatter to 8u60.

The main change is that it now supports formatting of java.time types.

- Adapt relevant test to Android sepcifics.
- Add Android-changed comments where appropriate
- Removed unused mantissa() and exponent() methods

Bug: 28832222
Test: run cts -m CtsLibcoreOjTestCases
Change-Id: I8a5de3f4bd39b6bad09850d4e5329a54331a2315
558e9c5474f5ba77f973053c7faf69d1f83e9d09 06-Dec-2016 Neil Fuller <nfuller@google.com> Fix Formatter.format("%,d") for locales without grouping

Fix Formatter.format("%,d") for locales without grouping
in their defaul decimal format.

Bug: 33245708
Test: vogar luni/src/test/java/libcore/java/util/FormatterTest.java
(cherry picked from commit 26d1f75ec1f3749e3def869fecb11a7dc0d3a31d)

Change-Id: I4164ae51d5abf12dd5031d714bfdcde1b21911a1
26d1f75ec1f3749e3def869fecb11a7dc0d3a31d 06-Dec-2016 Neil Fuller <nfuller@google.com> Fix Formatter.format("%,d") for locales without grouping

Fix Formatter.format("%,d") for locales without grouping
in their defaul decimal format.

Bug: 33245708
Test: vogar luni/src/test/java/libcore/java/util/FormatterTest.java
Change-Id: I2e0cf7757702d80993073979a7f3e854cc0489e8
49965c1dc9da104344f4893a05e45795a5740d20 30-Jun-2016 Ganesh Mahendran <opensource.ganesh@gmail.com> remove x attribute of java file

java file does not need x attribute. This patch removes it.

Change-Id: I2a7170d99f4bee7a7b819621c84dd197ded37fa2
Signed-off-by: Ganesh Mahendran <opensource.ganesh@gmail.com>
694e617f54a7bfbdad24913ce96f5d56f1a1960a 20-Jun-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Port openJdk8 java.lang package, part 2

- Removed floating to/from string performance hacks
we have added on the top of openJdk7 code (no longer needed)
- AbstractStringBuilder is Appendable again, we may decide
to revert this (see b/27582395 for context)
- New String method #join

Bug: 28666126
Change-Id: I35f6dbc1199e2bd2b4a4db69d35da81679d80093
eb385c8957bc6feddb50c6c2f437b16f8dedc70c 31-Mar-2016 Joachim Sauer <jsauer@google.com> Ensure %E and %e use upper- and lower-case E.

Formatter is documented to use e and E as the exponent symbol when using
%e and %E respectively.

Android adds internationalization support to this, but we still want to
stay consistent in the ROOT locale.

Bug: 27566754
(cherry picked from commit 52a8233bea1b27b348cde146a2af446064e0dd34)

Change-Id: I12543b3e84b966cdda58053f0bc45e18baef02fe
52a8233bea1b27b348cde146a2af446064e0dd34 31-Mar-2016 Joachim Sauer <jsauer@google.com> Ensure %E and %e use upper- and lower-case E.

Formatter is documented to use e and E as the exponent symbol when using
%e and %E respectively.

Android adds internationalization support to this, but we still want to
stay consistent in the ROOT locale.

Bug: 27566754
Change-Id: I6260cb22d3000d6c77ea23610bb776ef1c817eef
6756dc8d66f79a7f912e591d44205dbcf32f7e92 18-Mar-2016 Narayan Kamath <narayan@google.com> Formatter: Fix error-prone warning.

The same fix has been applied upstream in OpenJdk8.

The only thing this fix affects is an exception error message. I am
not writing a CTS test because I don't want to give any sort of false
hope that the exception message is stable.

bug: 27680061

(cherry picked from commit 2e79d156488d81680377f015ecdd0a64dcc3b231)

Change-Id: Ie6007a3dec217ad6c23ba359a3ff2f6bbfd2d8ae
2e79d156488d81680377f015ecdd0a64dcc3b231 18-Mar-2016 Narayan Kamath <narayan@google.com> Formatter: Fix error-prone warning.

The same fix has been applied upstream in OpenJdk8.

The only thing this fix affects is an exception error message. I am
not writing a CTS test because I don't want to give any sort of false
hope that the exception message is stable.

bug: 27680061
Change-Id: I6281d6a96722684d1ec5fc9bf33ad6c402d125c6
b31a117de532a94827fc4b072e2d907a89e7a91c 11-Jan-2016 Narayan Kamath <narayan@google.com> Formatter: Use localized exponent separator for %e.

bug: 26023758
Change-Id: Ie800e20a99517c9bd0a1c5b1a306b028d019f62d
35b5ac0ecdb74a6a55cb6757675537e31e94474e 11-Jan-2016 Narayan Kamath <narayan@google.com> Formatter: Case strings according the provided locale.

bug: 26023758
Change-Id: I88126f24511792ba7850b068e6c5113494d9bf0f
2c87ad3a45cecf9e344487cad1abfdebe79f2c7c 21-Dec-2015 Narayan Kamath <narayan@google.com> Update file headers.

Change-Id: I8149f41585768a1a4b72ab7bb4a1452376c05cc2
9820e5b27a8ac4ea426f8e3cddf06445a9e02840 08-Dec-2015 Yi Kong <yikong@google.com> Rewrite util.format for better performance

OpenJDK uses regular expression to parse the format specifier, which
is expensive both to compile and to execute. Rewriting to manually
parse the specifier reduces formatter benchmark execution time by 45%.

=== Angler a57@1.4GHz ===
benchmark Orig Mod
_Formatter_large 69300 37402
_Formatter_medium 70116 39899
_Formatter_small 68791 37501

Bug: 25887112
Change-Id: I71a94d81c8d8228696c4ca02e60d58552886eaae
51b1b6997fd3f980076b8081f7f1165ccc2a4008 16-Feb-2015 Piotr Jastrzebski <haaawk@google.com> Initial import of OpenJdk files.

Create new libcore/ojluni directory with src/main/java and
src/main/native subdirectiories.

Build ojluni into core-oj jar.

Use openjdk classes from java.awt.font package.

Copy all files from jdk/src/share/classes and jdk/src/solaris/classes
directories in openjdk into libcore/ojluni/src/main/java.

Copy following native files from openjdk to
libcore/ojluni/src/main/native:
jdk/src/solaris/native/java/io/canonicalize_md.c
build/linux-amd64/include/classfile_constants.h
jdk/src/share/native/java/net/DatagramPacket.c
jdk/src/solaris/native/sun/net/spi/DefaultProxySelector.c
jdk/src/share/native/java/lang/Double.c
jdk/src/share/native/java/lang/fdlibm/include/fdlibm.h
jdk/src/solaris/native/sun/nio/ch/FileChannelImpl.c
jdk/src/solaris/native/java/io/FileDescriptor_md.c
jdk/src/solaris/native/sun/nio/ch/FileDispatcherImpl.c
jdk/src/share/native/java/io/FileInputStream.c
jdk/src/solaris/native/sun/nio/ch/FileKey.c
jdk/src/solaris/native/java/io/FileOutputStream_md.c
jdk/src/solaris/native/java/io/FileSystem_md.c
jdk/src/share/native/java/lang/Float.c
jdk/src/share/native/java/net/Inet4Address.c
jdk/src/solaris/native/java/net/Inet4AddressImpl.c
jdk/src/share/native/java/net/Inet6Address.c
jdk/src/solaris/native/java/net/Inet6AddressImpl.c
jdk/src/share/native/java/net/InetAddress.c
jdk/src/solaris/native/java/net/InetAddressImplFactory.c
jdk/src/share/native/java/io/io_util.c
jdk/src/solaris/native/sun/nio/ch/IOUtil.c
jdk/src/share/native/java/io/io_util.h
jdk/src/solaris/native/java/io/io_util_md.c
jdk/src/solaris/native/java/io/io_util_md.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/java_io_FileDescriptor.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_FileInputStream.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_FileOutputStream.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_FileSystem.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_ObjectStreamClass.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_io_UnixFileSystem.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Double.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Float.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Integer.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Long.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Runtime.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Shutdown.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_StrictMath.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_String.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_System.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Thread.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/java_lang_Throwable.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_DatagramPacket.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet4Address.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet4AddressImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet6Address.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_Inet6AddressImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_InetAddress.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_InetAddressImplFactory.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_NetworkInterface.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_PlainDatagramSocketImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_PlainSocketImpl.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_SocketInputStream.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_SocketOptions.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/java_net_SocketOutputStream.h
jdk/src/share/native/java/lang/java_props.h
jdk/src/solaris/native/java/lang/java_props_md.c
jdk/src/share/native/java/util/zip/Adler32.c as java_util_zip_Adler32.c
jdk/src/share/native/java/util/zip/CRC32.c as java_util_zip_CRC32.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_CRC32.h
jdk/src/share/native/java/util/zip/Deflater.c as java_util_zip_Deflater.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_Deflater.h
jdk/src/share/native/java/util/zip/Inflater.c as java_util_zip_Inflater.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_Inflater.h
jdk/src/share/native/java/util/zip/ZipFile.c as java_util_zip_ZipFile.c
build/linux-amd64/tmp/sun/java.util.zip/zip/CClassHeaders/java_util_zip_ZipFile.h
jdk/src/share/native/java/lang/fdlibm/include/jfdlibm.h
jdk/src/share/native/common/jlong.h
jdk/src/solaris/native/common/jlong_md.h
jdk/src/share/native/common/jni_util.c
jdk/src/share/native/common/jni_util.h
jdk/src/solaris/native/common/jni_util_md.c
jdk/src/share/javavm/export/jvm.h
jdk/src/solaris/javavm/export/jvm_md.h
jdk/src/solaris/native/java/net/linux_close.c
jdk/src/share/native/sun/misc/NativeSignalHandler.c
jdk/src/solaris/native/sun/nio/ch/NativeThread.c
jdk/src/share/native/java/net/net_util.c
jdk/src/share/native/java/net/net_util.h
jdk/src/solaris/native/java/net/net_util_md.c
jdk/src/solaris/native/java/net/net_util_md.h
jdk/src/solaris/native/java/net/NetworkInterface.c
jdk/src/share/native/sun/nio/ch/nio.h
jdk/src/solaris/native/sun/nio/ch/nio_util.h
jdk/src/share/native/java/io/ObjectStreamClass.c
jdk/src/solaris/native/java/net/PlainDatagramSocketImpl.c
jdk/src/solaris/native/java/net/PlainSocketImpl.c
jdk/src/solaris/native/java/lang/ProcessEnvironment_md.c
jdk/src/share/native/java/lang/Runtime.c
jdk/src/share/native/java/lang/Shutdown.c
jdk/src/share/native/sun/misc/Signal.c
jdk/src/solaris/native/java/net/SocketInputStream.c
jdk/src/solaris/native/java/net/SocketOutputStream.c
jdk/src/share/native/java/lang/StrictMath.c
jdk/src/share/native/java/lang/String.c
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/sun_misc_NativeSignalHandler.h
build/linux-amd64/tmp/java/java.lang/java/CClassHeaders/sun_misc_Signal.h
build/linux-amd64/tmp/sun/java.net/net/CClassHeaders/sun_net_spi_DefaultProxySelector.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_FileChannelImpl.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_FileDispatcherImpl.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_FileKey.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_IOStatus.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_IOUtil.h
build/linux-amd64/tmp/java/java.nio/nio/CClassHeaders/sun_nio_ch_NativeThread.h
jdk/src/share/native/java/lang/System.c
jdk/src/share/native/java/lang/Thread.c
jdk/src/share/native/java/lang/Throwable.c
jdk/src/solaris/native/java/io/UnixFileSystem_md.c
jdk/src/solaris/native/java/lang/UNIXProcess_md.c
jdk/src/share/native/java/util/zip/zip_util.c
jdk/src/share/native/java/util/zip/zip_util.h

Change-Id: Ib237df4e1b7b5b4d9f12e74d189e6ec9eed3c31d