History log of /libcore/non_openjdk_java_files.mk
Revision Date Author Comments
c5307105db3c8a091a7b1a47b344bdfa8d3f54d0 07-Aug-2017 Narayan Kamath <narayan@google.com> Linux: Implement getrlimit

Bug: 63004717
Test: vogar OsTest
Change-Id: I6a44f2a1281b4cc2344629f5eabc160619151b56
108091b6787f37a23862c7c9bb965ccf932430ab 11-Jul-2017 Przemyslaw Szczepaniak <pszczepaniak@google.com> Added StructStat nanosecond precision fields.

Since Linux 2.6 the kernel supports nanosecond precision
(with timespec struct) for times of: last access, last
modification and last status change in stat struct.

Test: CtsLibcoreTestCases
Bug: 62949898
Change-Id: Ie3f13f621bc64dd20f01fdc0c10906f02f41909c
c3a5f45a5f15d709fb03074fe180ac4a81304f82 05-Jun-2017 Andreas Gampe <agampe@google.com> Libcore: Remove sampling profiler

Remove the (very) old sampling profiler. It has been unsupported for
a while now.

Bug: 37272346
Test: m
Test: art/tools/run-libcore-tests.sh --mode=host
Change-Id: I64d77244b5816ef1f605d19530b96be38f5c1bc6
2da0b3378a08244e0a9f5f612618cb14dc033ff3 22-May-2017 Narayan Kamath <narayan@google.com> Implement DelegateLastClassLoader.

A classloader that implements the following lookup order :

- The boot classpath is always searched first.
- The list of dex files associated with the classloader is
searched second.
- Finally, parents of the classloader are searched.

Bug: 37966546
Test: vogar DelegateLastClassLoaderTest.

Change-Id: Ic5e95d132f30beb9b8b4499cdbec0e7dd00f9eb4
3cbfb6e3a3d8c50b6512df250b24dbfffbf6d3a7 30-Mar-2017 Neil Fuller <nfuller@google.com> Addition of new time zone lookup code

Introduction of libcore.util.TimeZoneFinder for
resolving time zones by country / by country + offset
information.

This code is intended to be a work-a-like replacement
for code currently residing in android.util.TimeUtils
and using time_zones_by_country.xml in the plaform.

android.util.TimeUtils and
com.android.internal.telephony.ServiceStateTracker will
be switched over to using it in a follow up change.

At present, the algorithm should return the same
logical results as the code it is intended to replace.

A notable difference is that it uses ICU's TimeZone class
instead of java.util.TimeZone because
it has more convenient methods and the ability to
freeze timezones. More care has been taken to return
immutable data structures than the code it replaces.

This change also changes the TimeZoneDistroInstaller
and associated classes / tests to be aware of and
require the new file.

Bug: 25338903
Test: vogar luni/src/test/java/libcore/util/TimeZoneFinderTest.java
Test: CTS: run cts -m CtsLibcoreTestCases -t libcore.tzdata.shared2
Test: CTS: run cts -m CtsLibcoreTestCases -t libcore.tzdata.update2
Test: CTS: run cts -m CtsLibcoreTestCases -t
libcore.util.TimeZoneFinderTest
Test: Manual testing after install using prepareTzDataUpdates.sh /
update test app and reboot

(cherry picked from commit 085fbffe1a9fd2d53bc1959a189b0289302c67b3)

Change-Id: I6541b84d0e6e289cb2495e5ae045fd0356145d47
085fbffe1a9fd2d53bc1959a189b0289302c67b3 30-Mar-2017 Neil Fuller <nfuller@google.com> Addition of new time zone lookup code

Introduction of libcore.util.TimeZoneFinder for
resolving time zones by country / by country + offset
information.

This code is intended to be a work-a-like replacement
for code currently residing in android.util.TimeUtils
and using time_zones_by_country.xml in the plaform.

android.util.TimeUtils and
com.android.internal.telephony.ServiceStateTracker will
be switched over to using it in a follow up change.

At present, the algorithm should return the same
logical results as the code it is intended to replace.

A notable difference is that it uses ICU's TimeZone class
instead of java.util.TimeZone because
it has more convenient methods and the ability to
freeze timezones. More care has been taken to return
immutable data structures than the code it replaces.

This change also changes the TimeZoneDistroInstaller
and associated classes / tests to be aware of and
require the new file.

Bug: 25338903
Test: vogar luni/src/test/java/libcore/util/TimeZoneFinderTest.java
Test: CTS: run cts -m CtsLibcoreTestCases -t libcore.tzdata.shared2
Test: CTS: run cts -m CtsLibcoreTestCases -t libcore.tzdata.update2
Test: CTS: run cts -m CtsLibcoreTestCases -t
libcore.util.TimeZoneFinderTest
Test: Manual testing after install using prepareTzDataUpdates.sh /
update test app and reboot
Change-Id: Ic6d0a617519a7685815c99a8e41ccab65be1ff57
f996d6958851e14c1965a0783e5b4512769997b9 24-Mar-2017 Neil Fuller <nfuller@google.com> Centralize knowledge of time zone file paths

Centralize the knowledge of time zone file paths. The
knowledge is in a couple of places and there is some
file name duplication. A new file will be
added if time_zones_by_country.xml is made
updateable outside of an OTA.

Test: make / boot (to confirm the new System class dependency is ok)
Test: run cts -m CtsLibcoreTestCases -t libcore.java.lang.SystemTest
Test: run cts -m CtsLibcoreTestCases -t libcore.util.TimeZoneDataFilesTest
Test: run cts -m CtsLibcoreTestCases -t libcore.util.ZoneInfoDBTest
Bug: 25338903
Change-Id: Iaf9afc148faee8db7839513270a621a8149fd5fa
(cherry picked from commit bab90fe9bc8cd53373d0881b3f0b97f24bc61b21)
bab90fe9bc8cd53373d0881b3f0b97f24bc61b21 24-Mar-2017 Neil Fuller <nfuller@google.com> Centralize knowledge of time zone file paths

Centralize the knowledge of time zone file paths. The
knowledge is in a couple of places and there is some
file name duplication. A new file will be
added if time_zones_by_country.xml is made
updateable outside of an OTA.

Test: make / boot (to confirm the new System class dependency is ok)
Test: run cts -m CtsLibcoreTestCases -t libcore.java.lang.SystemTest
Test: run cts -m CtsLibcoreTestCases -t libcore.util.TimeZoneDataFilesTest
Test: run cts -m CtsLibcoreTestCases -t libcore.util.ZoneInfoDBTest
Bug: 25338903
Change-Id: Iaf9afc148faee8db7839513270a621a8149fd5fa
5744e4a762ca12243b47dd8aed24d87d963b4d3b 17-Mar-2017 Andreas Gampe <agampe@google.com> Libcore: Add support for capabilities

Add support for capget and capset, as well as related prctl constants,
to android.system.Os.

Bug: 36232535
Test: m
Test: manual
Change-Id: I28c741bef2f9e047400dae83b69fc22fd3527498
62ef120281c2ac8ed3c3c6fd8abc78ddd49fae12 20-Mar-2017 Narayan Kamath <narayan@google.com> Remove com.android.dex.* from the boot classpath.

All boot classpath dependencies on this code have been removed.
The only remaining user is dx.

Test: CtsLibcoreTestCases

Change-Id: If7350bdd9ebe072e8ee3c3499f1d9f912799dd48
0965ac3ceff49f3c090c417c0e30ea51c6f294a7 15-Mar-2017 Andreas Gampe <agampe@google.com> Libcore: Rename Posix to Linux

We refer in Os to Linux manpages. Future changes will add Linux-specific
APIs to Os. Be honest and rename the class.

Bug: 36232535
Test: m
Test: m test-art-host
Test: Device boots
Change-Id: Ie9d4536d03499a75efaf2bcf16d41bacc97ac943
29957558cf0db700bfaae360a80c42dc3871d0e5 19-Oct-2016 Tobias Thierer <tobiast@google.com> Move java.util.concurrent from JSR-166 to an OpenJDK upstream

Apply diff between JSR-166 and OpenJDK to java.util.concurrent.*

This affects
- all classes from java.util.concurrent
- all classes from java.util.concurrent.atomic
- all classes from java.util.concurrent.locks

This makes the license of these classes (GPLv2 with classpathi
exception) consistent with the other files taken from OpenJDK.

Previously, they were in the public domain (from JSR-166), with one
exception: CopyOnWriteArrayList.java (COWAL) was previously Android's
own implementation under Apache 2.0 license. This CL switches that
file to the same upstream OpenJDK revision as the other files touched
by this CL; it is therefore now under the same GPLv2+CE license.

For files other than COWAL, this CL applies the difference between
the old (JSR-166) and new (OpenJDK) upstream. That difference is:
- OpenJDK adds an additional license header (GPLv2+CE) to each file;
this CL adds those license headers.
- The JSR-166 backport of AbstractQueuedSynchronizer and ReentrantLock
commented out use of @ReservedStackAccess with a // OPENJDK-9
comment. In Android, this CL drops these lines entirely instead
- OpenJDK and JSR-166 use a slightly different paths in doc links to
Collection.html#optional-restrictions
For these, Android was already using a third variant so this CL
doesn't affect those.
- Flow and SubmissionPublisher are not available in OpenJDK 8 nor in
Android so they are missing from JSR-166's OpenJDK 8 backport and
are also omitted here.

Because the new upstream is based on OpenJDK, all of the files now
live in the ojluni/ source directory.

=== Upstream OpenJDK 9 revision that this code corresponds to

This corresponds to upstream revision 14076 with the changes from
revision 13050 reverted ("hg backout"). Revision 14076 is between
upstream mercurial tags jdk-9+113 (revision 13993) and jdk-9+114
(revision 14115). Backing out of revision 13050 was necessary in
order for the code to use sun.misc.Unsafe like it did before this
CL, rather than jdk.internal.misc.Unsafe which is not available
on Android.

This revision was obtained by running the following steps:

hg clone http://hg.openjdk.java.net/jdk9/jdk9 jdk9-tmp
cd jdk9-tmp
sh ./get_source.sh
cd jdk/src/java.base/share/classes/java/util/concurrent
hg update -r 14076
hg backout -r 13050 # arbitrarily resolved merge conflicts
rm Flow.java SubmissionPublisher.java # OpenJDK 9 specific
zip -r ~/juc.zip .

The merge conflicts in the backout step were resolved arbitrarily
since they involved files from outside of java.util.concurrent.*

=== Android changes (difference between Android and upstream OpenJDK)

The following changes are Android specific (they are not part of the
difference between JSR-166 and OpenJDK) so they were all kept /
(same as re-applying them on top of the new OpenJDK upstream). In
the case of links to Collection.html#optional in documentation, note
that JSR-166, OpenJDK and Android use three different paths, so
Android's version was kept. Generally these changes come with
Android-changed comments. When the changes are in documentation,
those comments are sometimes omitted since they don't fit in
documentation. To ensure that all of the below changes were
authored by AOSP authors, I have manually verified that each of
them either
(a) is a removal without comment, or
(b) there is an existing Android-changed, android-note or
similar comment that explains the change, or
(c) can be traced to the AOSP commit that introduced it

I'm specifying for each change below whether it falls into categories
(a), (b) or (c). For (c), I am listing the AOSP commit's SHA below.

The only new Android-changed block introduced by this CL is in
CopyOnWriteArrayList.

-ArrayBlockingQueue
(b): removed link to collections framework docs
- BlockingDeque:
(b) fixed framework docs link to "Collection#optional"
- BlockingQueue:
(b) removed link to collections framework docs
(b) fixed framework docs link to "Collection#optional"
- CompletableFuture:
(b) @hide several methods
(b) Removed sentences in toplevel documentation referring to
the methods defaultExecutor(), minimalCompletionStage() and
newIncompleteFuture() (explained by the @hide per above).
This includes removal of a paragraph around CompletionStage's
methods returning CompleteableFuture; that paragraph had been
referring to the @hide methods minimalCompletionStage() and
copy().
- ConcurrentHashMap:
(b) removed link to collections framework docs
(c) changes around keySet()'s return type from libcore commit
0ee1606ffb8586014fb3ea6e540c07d7180d9e9e
- changed compile time type of keySet() return value to be Set
rather than KeySetView, but add documentation guaranteeing
that the value will be a KeySetView.
- remove the reference to {@link #keySet()} from the links in
the documentation for KeySetView
(a) Remove use of annotation @jdk.internal.vm.annotation.Contended
(not available on Android).
- ConcurrentLinkedDeque:
(b) removed link to collections framework docs
- ConcurrentLinkedQueue:
(b) removed link to collections framework docs
- ConcurrentMap:
(b) removed link to collections framework docs
(b) fixed framework docs link to "Collection#optional"
- ConcurrentNavigableMap:
(b) removed link to collections framework docs
- ConcurrentSkipListMap:
(b) removed link to collections framework docs
- ConcurrentSkipListSet:
(b) removed link to collections framework docs
(b) fixed framework docs link to "Collection#optional"
- CopyOnWriteArraySet:
(b) removed link to collections framework docs
(b) fixed framework docs link to "Collection#optional"
- CountedCompleter:
(a) removed snippet
"(such as {@link java.nio.channels.CompletionHandler})"
from documentation (line ~ 45).
- DelayQueue:
(b) removed link to collections framework docs
- Exchanger:
(b) removed use of annotation
@jdk.internal.vm.annotation.Contended
(not available on Android)
- ExecutorService:
(b) removed security manager docs
- Executors:
(b) removed security manager docs & logic
- ForkJoinPool:
(b) removed use of annotation
@jdk.internal.vm.annotation.Contended
(not available on Android)
- ForkJoinTask:
(b) @hide pollSubmission() method (OpenJDK 9 API)
- LinkedBlockingDeque:
(b) removed link to collections framework docs
- LinkedBlockingQueue:
(b) removed link to collections framework docs
- LinkedTransferQueue:
(b) removed link to collections framework docs
- PriorityBlockingQueue:
(b) removed link to collections framework docs
- ScheduledThreadPoolExecutor:
(b) omit class-level docs on setRemoveOnCancelPolicy()
(b) Remove security manager docs from shutdown(), shutdownNow()
- SynchronousQueue:
(b) removed link to collections framework docs
- ThreadLocalRandom:
(a) One empty line dropped around line ~ 465
- ThreadPoolExecutor:
(b) removed security manager docs from shutdown(), shutdownNow()
(b) change setCorePoolSize() to not throw if
maximumPoolSize < corePoolSize
- TimeUnit:
(b) removed java 9 ChronoUnit related code
- TransferQueue:
(b) removed link to collections framework docs
- atomic/AtomicIntegerFieldUpdater,
atomic/AtomicLongFieldUpdater,
atomic/AtomicReferenceFieldUpdater:
(b) use of VMStack.getStackTrace1() in constructor
(b) commented out legacy security code
(b) commented out isAncestor()
- (b) atomic/Striped64: Commented out use of annotation
@jdk.internal.vm.annotation.Contended (not available on Android)

For CopyOnWriteArrayList, added the following two new Android changes:
- removed link to collections framework docs
- fixed framework docs link to "Collection#optional"

Bug: 30860904
Bug: 31028793

Test: CtsLibcoreJsr166TestCases (includes CopyOnWriteArrayListTest)
Test: CtsLibcoreJavaUtilCollectionsTestCases

Change-Id: I41e666d9825f6624e678b6c568326b1155b7adaf
92929ee38d838ec47130c8e37c353dc6522b0114 01-Dec-2016 Tobias Thierer <tobiast@google.com> Drop deprecated libcore.io.Base64 in favor of java.util.Base64

Move the last last remaining user (DropBox) of l.i.Base64.encode()
to j.u.Base64.getEncoder().encodeToString() which produces exactly
the same result.

The decoding behavior of the two implementations differ:
- in case of error, l.i.Base64 returns null vs. j.u.Base64 throws
- j.u.Base64 is more strict about forbidding extra in-stream or
trailing characters
- the two implementations differ in how many bytes they decode if
the encoded data ends prematurely.
To document the behavior change, the old libcore.io.Base64Test was
kept with updated expectations and under a new name.

Bug: 31292683
Test: libcore.java.util.LibcoreIoDerivedBase64Test

Change-Id: I62d4731d38619629d72549430c57e07f8ea4aa1e
02e8f0793940b5fd42b038dd912006c6d98a843c 31-Oct-2016 Alex Light <allight@google.com> Add dalvik.system.ClassExt class

This class is allocated by the runtime lazily and is used to hold data
for java.lang.Class that is often not needed. This allows us to add
useful things to keep around in Class without regressing memory use.
Initially we are placing the saved verifyError into this class. This
type is expected to grow as time goes on.

Test: m test-art-host

Change-Id: I9556734102d7e7a35a81e8af8b133cba2e75d16c
faf8883397aed1411590edd1bf5b6681430a10f5 18-Oct-2016 Narayan Kamath <narayan@google.com> MethodHandles: Add support for method handle transforms [part 1]

Defines a new invoke type (INVOKE_TRANSFORM) and support for invoking
the transformer method. Full details provided in the companion ART
change (commit 3f1e50841b70507a2619c031fa0b0b4791ffa386).

bug: 30550796
Test: make test-art-host

Change-Id: I643e8a818ec2e66f604477be9384aaf7a2671f9d
48e205e5e0bc55b5c7b11df445da39c5be890623 11-Oct-2016 Yi Kong <yikong@google.com> Implement root-less ICMP for InetAddress#isReachable

IPPROTO_ICMP socket kind allows sending and receiving ICMP Echo
messages without priviledges.

Test: libcore.java.net.InetAddressTest
Bug: 31926888
Bug: http://code.google.com/p/android/issues/detail?id=20106
Change-Id: I97e908695a3e04ac11841acbe2c887f26e6b8910
118de16ee0529955eaca8cc5ce864cac49598c86 29-Sep-2016 Shubham Ajmera <shubhamajmera@google.com> Set warnings for unbuffered I/O

The change introduces a new BlockGuard policy to track unbuffered
I/O. Policy can be set in the following way:
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
.detectUnbufferedIO().build());

IoTracker generates warnings for unbuffered I/O if the operation
could be replaced with a buffered I/O.

The change also removes IoTrace class which was called each time an I/O
operation was invoked.

Bug: 3018772
Test: vogar BlockGuardTest
Change-Id: I18d42c3b3ceaf0b4b98cf15914716b20a48e50c8
(cherry picked from commit 7b05c367448843d7e62db4e87a1ac8fae9b0176c
)
1b7ce76ba2c2737c9dab5245e4da7823f456ec0b 09-Sep-2016 Neil Fuller <nfuller@google.com> Implement Executable.getParameters() to use compiled-in metadata

Implements the Executable.getParameters() code to take advantage of
.dex metadata that records parameter names and access flags / modifiers
(e.g. final, sythentic, mandated).

On Android, this metadata is stored in a new system annotation
dalvik.annotation.MethodParameters. See the MethodParameters class for
the specification. The metadata is optional and the intention is that
Jack or other compilers can include or exclude it based on developer
preference.

Contained here are various tests for valid and invalid metadata, along
with the supporting .smali files used to generate the .dex files
used by the tests. See the README.txt for more information on
generation.

See the associated art/ change for the native code used in Executable.

Bug: 30391692
Test: test-art-host and CtsLibcoreTestCases
Change-Id: Ied3d0f03bb6eb154b974a856b341bd14b5e45fc1
e1f193f0f7ccd8a3c0557ec93055140c68546aa9 08-Sep-2016 Neil Fuller <nfuller@google.com> Collapse ART's AbstractMethod class into Executable

After the OpenJDK 8 pull there is now a common base class
for Method and Constructor that can be used instead.

Methods that are abstract on Executable but on Android
were implemented in AbstractMethod are now consistently
renamed to "{method}Internal", declared final and
given package-protected access.

For consistency with all other private, natively
implemented methods, the method getDeclaredAnnotations()
has been renamed getDeclaredAnnotationsNative().

Bug: 28666126
Bug: 31052885
Test: make test-art-host and cts run of CtsLibcoreTestCases

Change-Id: I3ab8d4e1fd0c95f77d8d8af91241edaa8141e7a7
23f33cd98dcc2217a42322da1139b5a207e7e040 02-Sep-2016 Igor Murashkin <iam@google.com> dalvik: Add new optimization annotation for art (@CriticalNative)

Native methods annotated with @CriticalNative will execute significantly
faster than any other form of JNI due to not needing to call back into
the runtime or execute a state transition.

Microbenchmark measurements on angler-userdebug:

* Regular JNI cost in nanoseconds: 115
* Fast JNI cost in nanoseconds: 60
* @FastNative cost in nanoseconds: 35
* @CriticalNative cost in nanoseconds: 25

(Up to 4.6x faster than using regular JNI)

Change-Id: Ifa71cd88e48f9ba73e72d9e7898c1bab319c30bf
Test: make -j32 test-art-host
7824728ab38aa81e647c668b3a7f09811be8fa76 17-Aug-2016 Orion Hodson <oth@google.com> Support loading a DEX file from a ByteBuffer.

Introduces a new class InMemoryDexClassLoader taking a ByteBuffer to
load DEX files from memory.

Bug: http://b/26878838
Test: JUnit tests in InMemoryDexClassLoaderTest.

Change-Id: Ia0bfbd849e716f17a70e54154bd5c5817f79a9e8
2491f780339cc250189c733a6866a05adb44ec59 29-Jul-2016 Igor Murashkin <iam@google.com> dalvik: Add new optimization annotation for art (@FastNative)

Native methods annotated with @FastNative will execute even faster than
the old RegisterNatives-based "fast jni".

Test: make -j32 test-art-host
Performance: Up to 67% faster on angler (vs fast jni) on JNI transitions

Change-Id: Ic23823ae0f232270c068ec999fd89aa993894b0e
6d1649c5b37b21ef2b690bc0f86306e19a32db02 05-Aug-2016 Yi Kong <yikong@google.com> Move NetworkInterface logic away from JNI

OpenJDK implementation of NetworkInterface keeps a lot of logic inside
JNI in order to support multiple platforms. The code is unmaintainable
and has low performance.

This patch moves NetworkInterface away from native implementation, and
use libcore.io as the interface to underlying system call. It uses
getifaddrs(3) to fetch all necessary network information and processes
them within Java.

Bug: 28609551
Test: Passes CTS tests
Change-Id: If8466a18cbc3318219cb04122b1afa8712beb2bc
7b05c367448843d7e62db4e87a1ac8fae9b0176c 09-Jun-2016 Shubham Ajmera <shubhamajmera@google.com> Set warnings for unbuffered I/O

The change introduces a new BlockGuard policy to track unbuffered
I/O. Policy can be set in the following way:
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
.detectUnbufferedIO().build());

IoTracker generates warnings for unbuffered I/O if the operation
could be replaced with a buffered I/O.

The change also removes IoTrace class which was called each time an I/O
operation was invoked.

Bug: 3018772

Change-Id: I18d42c3b3ceaf0b4b98cf15914716b20a48e50c8
dab9b37946e6e61c6fd149ad92c518ae534d0457 03-May-2016 Sergio Giro <sgiro@google.com> libcore: provide instances from Crypto provider if targetting SDK <= 23

The provider is not installed but we provide instances anyway in order
to avoid breaking app compatibility. Only for apps whose target
SDK version is at most 23 (M).

(cherry picked from commit 5df38d1ae2e3615430ff6fe476b9cea9e6177bb1)

Bug: 28550092
Change-Id: I2038733b0911191a06a36386edf6d09b89693da3
5df38d1ae2e3615430ff6fe476b9cea9e6177bb1 03-May-2016 Sergio Giro <sgiro@google.com> libcore: provide instances from Crypto provider if targetting SDK <= 23

The provider is not installed but we provide instances anyway in order
to avoid breaking app compatibility. Only for apps whose target
SDK version is at most 23 (M).

Bug: 28550092
Change-Id: Id8e4f0413a956a4c87088af70932c9d51faf478d
a469a66ed90a730913107df13ce3aff7037934ef 15-Apr-2016 Andreas Gampe <agampe@google.com> Libcore: Refactor hardcoded system properties

Refactor where and how (static) hardcoded system properties are
stored. This refactor will allow the compiler to serve these
properties during compile-time initialization.

Bug: 27265238
Bug: 28174137

(cherry picked from commit 59ae74317d957baae6e1a52deadfd96b1c6698cc)

Change-Id: I1fccf7558d085542dd710aa98ecdb61ae8fcabf2
59ae74317d957baae6e1a52deadfd96b1c6698cc 15-Apr-2016 Andreas Gampe <agampe@google.com> Libcore: Refactor hardcoded system properties

Refactor where and how (static) hardcoded system properties are
stored. This refactor will allow the compiler to serve these
properties during compile-time initialization.

Bug: 27265238
Bug: 28174137
Change-Id: I1fccf7558d085542dd710aa98ecdb61ae8fcabf2
f04099d77872a0742db6f67263e7edc0828a8af6 05-Apr-2016 Jeff Hao <jeffhao@google.com> Remove AnnotationAccess and its remaining uses.

Libcore side of this change. Adds a libcore test that retention
annotations are handled properly.

(cherry-picked from commit d890de26ec16f7fc32b58a00725aff1b2a79a169)

Change-Id: Ifce1df78e63cd2c43e91e4fd039e087dc82463ff
d890de26ec16f7fc32b58a00725aff1b2a79a169 05-Apr-2016 Jeff Hao <jeffhao@google.com> Remove AnnotationAccess and its remaining uses.

Libcore side of this change. Adds a libcore test that retention
annotations are handled properly.

Change-Id: I5aade3be674a83d71fa0c7bb33342a154f2c11ab
e8b323c7cb7d55be9a4df579231e44f04f53d766 11-Mar-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> JSR-166 update without java 1.9 method/classes

Second attempt, in frist one I've submitted some code from openJdk 1.9
that shouldn't be here, orignial change can be found at
5328e07d282bef36ac8b757bbee16a761415b2c4

Adapted from sources taken from CVS using:
cvs -d ':pserver:anonymous@gee.cs.oswego.edu/home/jsr166/jsr166' checkout -D "03/03/2016 10:00:00 GMT" jsr166

This time with hidden/removed "@since 9" methods and classes

Bug: 27426599
Change-Id: Ibd8d26e13cba091bfd983c73d005e4f8d8f5946d
(cherry picked from commit b8b75116273ecfdb8ffdd1869b1c0dd04570a95e)
b8b75116273ecfdb8ffdd1869b1c0dd04570a95e 11-Mar-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> JSR-166 update without java 1.9 method/classes

Second attempt, in frist one I've submitted some code from openJdk 1.9
that shouldn't be here, orignial change can be found at
5328e07d282bef36ac8b757bbee16a761415b2c4

Adapted from sources taken from CVS using:
cvs -d ':pserver:anonymous@gee.cs.oswego.edu/home/jsr166/jsr166' checkout -D "03/03/2016 10:00:00 GMT" jsr166

This time with hidden/removed "@since 9" methods and classes

Bug: 27426599
Change-Id: Ibd8d26e13cba091bfd983c73d005e4f8d8f5946d
ed4f365789d43b1961657195df223a19bf4ef20f 15-Mar-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> Revert "JSR-166 update"

I missed comments on framework/base change regarding "@since 9" parts
This reverts commit 5328e07d282bef36ac8b757bbee16a761415b2c4.

Change-Id: Iff71b8a17e79a0a5c1ecadc05bccadceabb83393
5328e07d282bef36ac8b757bbee16a761415b2c4 11-Mar-2016 Przemyslaw Szczepaniak <pszczepaniak@google.com> JSR-166 update

Adapted from sources taken from CVS using:
cvs -d ':pserver:anonymous@gee.cs.oswego.edu/home/jsr166/jsr166' checkout -D "03/03/2016 10:00:00 GMT" jsr166

Bug: 27426599
Change-Id: Ic9ba278929f8747d58b69e7d67ec325064588bff
9599ec54b164da29db4e3386a9839aca73caf8ee 01-Feb-2016 Igor Murashkin <iam@google.com> Revert "Revert "reflection: Add new AnnotatedElement 1.8 methods.""

This reverts commit ac6e7a426c30abe6de4361c95755ff759845265f.

Runtest failure has been fixed in I28c3707e38c1f69ea9d3660f68136f688122ac4e

Change-Id: I1749dc89b790d44b5e40bc8b20aa62885bda792b
f1934b47a2ae60f5d75dd174cf8cd1f44fa22d25 01-Feb-2016 Narayan Kamath <narayan@google.com> Revert "Revert "Update sun.misc.Unsafe.""

This reverts commit 6e91d0c85a31020388bd165bcbefa595888a7dd1.
6e91d0c85a31020388bd165bcbefa595888a7dd1 01-Feb-2016 Narayan Kamath <narayan@google.com> Revert "Update sun.misc.Unsafe."

This reverts commit 5ef64a3267fe516dbe032af2d7de243bdfbc4e29.

Change-Id: I5b3fe02b8a1143c9599d69ac8512d037a0c88d4d
5ef64a3267fe516dbe032af2d7de243bdfbc4e29 01-Feb-2016 Narayan Kamath <narayan@google.com> Update sun.misc.Unsafe.

Change-Id: If58f42ecd773feb746eabb206369327852d01e0e
ac6e7a426c30abe6de4361c95755ff759845265f 29-Jan-2016 Nicolas Geoffray <ngeoffray@google.com> Revert "reflection: Add new AnnotatedElement 1.8 methods."

Fails interpreter access checks.

This reverts commit 4d4ff5e7b929a404fc9f16232c639b7a11969489.

Change-Id: Ie3b7f44b653dacc5a6d18eae5bff34fe2cb2cdfc
4d4ff5e7b929a404fc9f16232c639b7a11969489 15-Jan-2016 Igor Murashkin <iam@google.com> reflection: Add new AnnotatedElement 1.8 methods.

Methods are currently @hide 1.8 and default is commented out.
Needs corresponding runtime change to run.

Change-Id: I8420a4d208bb60874a9cf996766313c7d5058c45
33fc9556dfda6298fcd7c119f68a7375e13cbed9 28-Dec-2015 Richard Uhler <ruhler@google.com> Introduce NativeAllocationRegistry API.

The NativeAllocationRegistry API provides a way to associate native
allocations with Java objects. The native allocations will
automatically be freed when the correspondong Java object becomes
unreachable.

Use NativeAllocationRegistry for BigInt.

Bug: 23130675
Change-Id: If89dc03f0668afdecf1086280d16d2803e07a62a
59cd43352e5fd4907303d06f9b92f01c943375f7 18-Dec-2015 Narayan Kamath <narayan@google.com> Remove unused collation and formatting code.

Change-Id: I154d59e4ccff1d899530aebf27cf444f15f674ab
85d69e16fe1e59e50c1ad228e754abf325088362 20-Dec-2015 Narayan Kamath <narayan@google.com> Revert "Revert "Port ICU based regex implementation over to OpenJdk.""

This reverts commit fadaa97dd78736d94460684d87dcdadd14a5813c.

Fixes build breakage due to unresolved @link tags.

Change-Id: I329c28d872a2a40064b7219d3537eaae1cfe6fae
fadaa97dd78736d94460684d87dcdadd14a5813c 18-Dec-2015 Brian Carlstrom <bdc@google.com> Revert "Port ICU based regex implementation over to OpenJdk."

This reverts commit 075cf9ab88476958db0dd3ca80e21802fc623f66.

Change-Id: If343ef8a2f62b1ce301f1801b1660cfb21552178
075cf9ab88476958db0dd3ca80e21802fc623f66 18-Dec-2015 Narayan Kamath <narayan@google.com> Port ICU based regex implementation over to OpenJdk.

Change-Id: I5de7fa40dbf35843949ac3eb9d7cef680d64e45a
1ee1fbedc2e3f810a69d7a73a07f3f9a8388b488 15-Dec-2015 Shubham Ajmera <shubhamajmera@google.com> java.text.Collator implemented using icu4j

Implemented java.text.Collator, java.text.CollationElementIterator,
java.text.RuleBasedCollationKey using icu4j.

Removed unused classes - libcore.icu.RuleBasedCollatorICU,
java.text.RuleBasedCollationKeys, java.text.CollationRules.

Bug: 25860873
Bug: 26140420

Change-Id: I8a78db9a4d0d1c04a8a1e18408c54234db43cfd8
c2664d2482b841baea0c14eef94e5fbe2a65dbb8 02-Dec-2015 Yi Kong <yikong@google.com> Merge code path for hostname lookup

getAllByName goes a separate duplicate path from getAllByNameOnNet.
Merge them to use Android framework getaddrinfo, and implement
resolution caching for both methods.

Bug: 25923779
Change-Id: I19ec3e52dd865f6968a47a0b17a810c781ba5bfc
f640e11f2a796db071428f97a12ef84888e8ef4d 03-Nov-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> Move StrictJarFile to framework/core

Since StrictJarFile is derived from harmony code,
and not used in the libcore itself, we're moving
it to framework/base code.

Bug: 25337946
Change-Id: I477b7934fb3abfb0c7660e23dd46db216c504e73
(cherrypicked from 8996a40bc2d5caa031992765d642021252c4c810)
2e1b9c6550cefe75aee07f0b9637c3fc4b539555 25-Nov-2015 Sergio Giro <sgiro@google.com> ojluni: use the okhttp DefaultHostnameVerifier in HttpsURLConnection

DistinguishedNameParser was moved to frameworks/base in c/821104. It
remains to:
- consider whether we want tests for it (b/25882613)
- consider whether to submit tests exercising its functionality upstream
in okhttp (b/25881522)

Not cherrypicking from dev branch as the original CL to do it went wrong
and would need to cherrypick more changes

Change-Id: I181dedd1d031035f45d6dde8d8c3d5a086834174
33e49e4e5ca9250ce741d39b56f357557f2883ff 24-Nov-2015 Nicolas Geoffray <ngeoffray@google.com> Revert "libart: add lambda proxy support"

955-lambda is flaky

Bug: 25107649
Bug: 24618608

This reverts commit 5a92ed3ace6e1cc71b20f29b7761cefd47f6cc06.

(cherry picked from commit ef1a480efa8a1efb50bc909d2227cc2dbce2b313)

Change-Id: If4e5b2756fcaddb9ea17c7c3ad239095addc9046
1a38b683a62420d549980ad0ad6bfe935378866c 24-Nov-2015 Narayan Kamath <narayan@google.com> Remove unused class.

NullCipherSpi isn't really used anywhere.

Change-Id: I2b89118115b4d566135bfb5b395b33aa2845f3f1
938b163cc74e7fee7e16580ecac063f414dcfaf2 28-Oct-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> Remove code that unused/deprecated on android.

Lobotomize classes that make no sense on android.

Change-Id: I1d6fdc5ec22a3605af6ecae7a40415ec94aa4a75
bf0af16053dc79937acab41e7b1e52024d263bf3 28-Sep-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> Update list of libcore files.

Change-Id: I6e86bfbe1f84fe9436f2ca919bf2f2608ca92f4f
a2f1c61be6bf4dfb1976f4b385ca4373e8b3f91f 28-Oct-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> Remove code that unused/deprecated on android.

Lobotomize classes that make no sense on android.

Change-Id: I1d6fdc5ec22a3605af6ecae7a40415ec94aa4a75
(cherry picked from commit
2bf9ac3e27e846bc6d33a5becd0023772f6456af)
358e76b7e1b4c5c97746153a963349dedf9e296e 14-Oct-2015 Przemyslaw Szczepaniak <pszczepaniak@google.com> Remove java.lang.IntegralToString

It's not used by the OpenJdk, remaining uses (in the framework) can
be replaced by the com.android.internal.util.HexDump and
small new class in conscrypt.

bug: 24932279
Change-Id: I56e9b11e438a2f13e458955fe2305b47a525a759
082643a27088b8dbae15c0e084ce319d0346636a 29-Sep-2015 Narayan Kamath <narayan@google.com> Add libcore.util.RecoverySystem

Hides libcore implementation details and lets us avoid applying
libcore's obfuscation map to the frameworks.

bug: 24308618
Change-Id: I9958c034c58b9c6163adb8a857ab72817cb8540f
96b40e87c32023084d7153360b1fa0c44c598095 12-Aug-2015 Narayan Kamath <narayan@google.com> Stop using libcore's java.util.prefs implementation.

Change-Id: If30217f18b124871ff43a39b0fb7a55bd06f095b
4fff8bb49a15d2b55e3aa8ffe98446f7f475285e 03-Aug-2015 Narayan Kamath <narayan@google.com> Use android's regex implementation.

Preserve ICU semantics.

Change-Id: Ic98b49c4f64f0b5525297bb96026154885eb111d
7f86b47e355e169d18548141031bd80f159bc41f 28-Jul-2015 Narayan Kamath <narayan@google.com> StrictLineReader is no longer used.

Change-Id: I24b58bb82d9d4b66475ed8b918c473edceacae2b
6dabcda1bfa001c50c6c365eb5c52fb9f23a46ec 28-Jul-2015 Narayan Kamath <narayan@google.com> DeleteOnExit isn't used any more.

Change-Id: Ia8f2873dfbd2e9839030f76a90628bda30fddd40
7ea8d82c03e0d50a44354bff544881979deaf1a4 24-Jul-2015 Narayan Kamath <narayan@google.com> Generate the API definition correctly.

Use an explicit list of files to generate documentation from, instead
of using the broad (and obsolete) libcore list. Also fixes a missing tag
in the package description of sun.reflect.

Change-Id: I68fa1bec2930fed1821ea425106fb5b586a0cea8
0a57ec224e5ce980fb24fcc59983206f13ff821e 24-Jul-2015 Narayan Kamath <narayan@google.com> Rewrite our file inclusion logic.

Avoids painful greps, and forces all files in the list to be valid
and named by absolute path relative to libcore. This is the foundation
for changing our API stub generation procedure, where we'll need the
same list of files.

Change-Id: I2bd31b850de13706e42c2ce3dd5cbd4dc3facef0