summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Rename package to android.icu.* instead of com.android.ibm.icu.*.Narayan Kamath2015-04-073-5/+5
| | | | | | Based on a discussion with the icu team. Change-Id: I47a6b260a9348debd65282794996f7976b8bc008
* Merge "Changes to enable timezone data overrides for ICU and libcore"Neil Fuller2015-04-072-19/+64
|\
| * Changes to enable timezone data overrides for ICU and libcoreNeil Fuller2015-03-262-19/+64
| | | | | | | | | | Bug: 19941636 Change-Id: Id587be99f645978c2e1067c9f8eef26d6d63ec27
* | Merge "GZIPInputStream: Correctly handle extras in gzip headers."Narayan Kamath2015-04-072-1/+17
|\ \
| * | GZIPInputStream: Correctly handle extras in gzip headers.Narayan Kamath2015-04-072-1/+17
|/ / | | | | | | | | | | | | We were peeking into the wrong field for the extra length. bug: https://code.google.com/p/android/issues/detail?id=159340 Change-Id: Ib7ed400e3e119b1d6c95be49d25812c5c7f366b9
* | Merge "Fix annoying (but non-fatal) java doc error."Ying Wang2015-04-031-1/+10
|\ \
| * | Fix annoying (but non-fatal) java doc error.Ying Wang2015-04-021-1/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | IcuIteratorWrapper.java references com.ibm.icu.text.BreakIterator, which is renamed by our jarjar rule, and so unrecognizable by javadoc, with annoying error: error: package com.ibm.icu.text does not exist. We don't want to generate doc for this file anyway. Change-Id: I815eff9d174561be9a380dd7374800cf25d6ca7a
* | | Merge "Expose getSpi from crypto operations as hidden API."Alex Klyubin2015-04-034-4/+22
|\ \ \
| * | | Expose getSpi from crypto operations as hidden API.Alex Klyubin2015-03-244-4/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes it possible for platform code to obtain the current SPI implementation of Cipher, Signature, Mac, and KeyAgreement instances. The current use case is to access additional information about these crypto operations when they are backed by Android KeyStore. NOTE: The getSpi API will not and cannot become public framework API. Bug: 18088752 Change-Id: If575726d288eebc73ffa3209c316fad071a087fd
* | | | Merge "GZIPInputStream: Fix handling of header CRCs."Narayan Kamath2015-04-032-3/+19
|\ \ \ \
| * | | | GZIPInputStream: Fix handling of header CRCs.Narayan Kamath2015-04-032-3/+19
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is the same mistake as public bug 159340, we were peeking in the wrong buffer for the CRC. Note that this is different from the member CRC, the latter is the CRC of the actual data (not the header) and is mandatory. Change-Id: I98d49bdd9d5ea93fe982783c8077531764ee5347
* | | | Merge "Update test expectations after rename."Narayan Kamath2015-04-031-3/+3
|\ \ \ \
| * | | | Update test expectations after rename.Narayan Kamath2015-04-031-3/+3
|/ / / / | | | | | | | | | | | | | | | | | | | | Zip64 tests were moved to Zip64FileTest. Change-Id: I653e63268e174d4f70e8eecd2d5535fbf6556588
* | | | Merge "Don't use zip64 by default."Narayan Kamath2015-04-036-579/+669
|\ \ \ \
| * | | | Don't use zip64 by default.Narayan Kamath2015-04-036-579/+669
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This change was breaking tools like dexmaker that would write zipfiles to disk so that the runtime could read them. We don't want to go back and amend the local file header, so we just throw an IOException if somebody writes more than 4GB of data to an entry that doesn't have a declared size. If the entry has a declared size > 4GB, we can write the zip64 header in advance. bug: 19574093 Change-Id: I771e821996efd3ef4c3de5e02f5a0062e62f9244
* | | | Merge "Be consistent with the library path."Nicolas Geoffray2015-04-031-1/+5
|\ \ \ \
| * | | | Be consistent with the library path.Nicolas Geoffray2015-04-021-1/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | For the boot class loader (loader == null) loadLibrary tries to find the the full path of the library using java.library.path. When actually loading the library, we need to use the same java.library.path property in case the library has dependencies. Change-Id: I2404d72f5c65c6a5ecfedc1efe879cfc9cef55ad
* | | | | Merge "Add dalvik.system.TransactionAbortError class"Sebastien Hertz2015-04-031-0/+62
|\ \ \ \ \ | |_|_|/ / |/| | | |
| * | | | Add dalvik.system.TransactionAbortError classSebastien Hertz2015-04-021-0/+62
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | This class is only used by ART's compiler to abort transaction when initializing image classes ahead-of-time. Bug: 20019689 Change-Id: I60bb9270074ccabb04e14369ebeb755493729a23
* | | | Merge "Implement BreakIterator in terms of icu4j."Narayan Kamath2015-04-026-450/+37
|\ \ \ \
| * | | | Implement BreakIterator in terms of icu4j.Narayan Kamath2015-04-026-450/+37
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Note that we need manual range checks in our wrapper because the ICU4J implementation will clamp offsets to either end of the input text. benchmark results : text benchmark us linear runtime LIPSUM BreakIterator 326.02 ===== LIPSUM IcuBreakIterator 333.47 ====== LONGPARA BreakIterator 227.67 ==== LONGPARA IcuBreakIterator 228.68 ==== GERMAN BreakIterator 79.09 = GERMAN IcuBreakIterator 81.30 = THAI BreakIterator 1654.11 ============================== THAI IcuBreakIterator 1646.75 ============================= THAI2 BreakIterator 44.28 = THAI2 IcuBreakIterator 42.67 = TABS BreakIterator 12.79 = TABS IcuBreakIterator 12.53 = ACCENT BreakIterator 16.26 = ACCENT IcuBreakIterator 15.37 = EMOJI BreakIterator 17.71 = EMOJI IcuBreakIterator 18.34 = SPACES BreakIterator 16.86 = SPACES IcuBreakIterator 15.78 = EMPTY BreakIterator 9.22 = EMPTY IcuBreakIterator 9.96 = NEWLINE BreakIterator 11.08 = NEWLINE IcuBreakIterator 9.96 = BIDI BreakIterator 19.54 = BIDI IcuBreakIterator 18.96 = Change-Id: I72023dd605da8e33974aa3181506f0d9c7bc180e
* | | | Merge "Override ICU4Js search path for ICU4C data."Narayan Kamath2015-04-021-0/+6
|\ \ \ \ | |/ / / |/| | |
| * | | Override ICU4Js search path for ICU4C data.Narayan Kamath2015-04-011-0/+6
| | | | | | | | | | | | | | | | Change-Id: I4dc6c40be400e298921c57f5c6d6c413edd70f68
* | | | Merge "Fix KeyGeneratorTest breakage due to AndroidKeyStore."Alex Klyubin2015-04-012-1/+13
|\ \ \ \ | |/ / / |/| | |
| * | | Fix KeyGeneratorTest breakage due to AndroidKeyStore.Alex Klyubin2015-04-012-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AndroidKeyStore provider's KeyPairGenerator and KeyGenerator instances require AndroidKeyStore-specific initialization parameters which are represnted by Android framework classes and are thus not accessible from libcore tests. This CL fixes KeyGeneratorTest to skip AndroidKeyStore provider to follow the behavior of KeyPairGeneratorTest. Change-Id: I61d176a7bc22a676d06d32f49aba37aebebe9c76
* | | | Merge "Exclude resources from charset/translit/localespi."Narayan Kamath2015-04-011-3/+6
|\ \ \ \
| * | | | Exclude resources from charset/translit/localespi.Narayan Kamath2015-04-011-3/+6
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We're not building sources so we shouldn't build resource either. Even if we *were* building charset, we wouldn't want the ICU charset provider SPI queried by default. Fixes errors in the ART buildbot and CTS. Change-Id: Ia3b1ca1e14cadaca99c6a616e13b7bb2792aa848
* | | | Merge "Revert "Revert "Add icu4j to core-libart.jar."""Narayan Kamath2015-04-014-8/+47
|\ \ \ \
| * | | | Revert "Revert "Add icu4j to core-libart.jar.""Narayan Kamath2015-04-014-8/+47
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 3b59929cb9978453c8bc81cf7e222c40fa42ce90. Fixes the original flaky build issues and fixes a typo caught by the previous review. Change-Id: Ia8a008b75dba51980b064f9689477b8698bcfa5c
* | | | Merge "Revert "Add icu4j to core-libart.jar.""Narayan Kamath2015-03-314-47/+8
|\ \ \ \
| * | | | Revert "Add icu4j to core-libart.jar."Narayan Kamath2015-03-314-47/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit de7c1fb9684c2558743e88fbf74a61f5ed6b47b5. Change-Id: I22be183176e27371b3ab5fd8868598968cf01584
* | | | | Merge "Add icu4j to core-libart.jar."Narayan Kamath2015-03-314-8/+47
|\ \ \ \ \ | |/ / / /
| * | | | Add icu4j to core-libart.jar.Narayan Kamath2015-03-304-8/+47
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The first approach of building icu4j against the SDK and adding that to the boot classpath won't work out too well. Besides being a bit of a hack, there's no way to express that relationship for hostdex builds. We now compile icu4j sources along with core-libart. This is the most direct way of expressing this relationship and allows us to include exactly what we need. Note that we exclude the locale SPIs, transliterators and charset code by default. Change-Id: Idd305e77480bc681ed5b47e740dfec20d3bc7b26
* | | | Merge "Timezone data installer code"Neil Fuller2015-03-3120-1/+2045
|\ \ \ \ | |/ / / |/| | |
| * | | Timezone data installer codeNeil Fuller2015-03-3120-1/+2045
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The code here is used by the system server to install timezone data updates. It is separate so it can be tested. Scripts are included that build an "update bundle" (a zip file with a well-defined contents). ConfigBundle contains logic to extract the bundle safely. TzDataBundleBuilder is used in the test and tools to construct a bundle. The scripts in tools is a placeholder and will evolve. bionic/libc/tools/zoneinfo tools will likely move there so they can be integrated more closely. An app is included for testing updates. Bug: 19941636 Change-Id: Id0985f8c5be2f12858ee8bf52acf52bdb2df8741
* | | | Merge "Add a test to confirm that TZ data is in sync"Neil Fuller2015-03-303-0/+22
|\ \ \ \
| * | | | Add a test to confirm that TZ data is in syncNeil Fuller2015-03-273-0/+22
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Android has two sources of timezone data: one used by bionic / libcore code, and one used by ICU. When ICU4J is added more tests can be added to confirm that ICU4C and ICU4J agree on time zone and other sources of data like CLDR and the ICU version itself. Bug: 19941636 Change-Id: I614392a876e19a55e362489f142eec71beaf5547
* | | | Merge "Make ArtField have no functionality"Mathieu Chartier2015-03-295-257/+73
|\ \ \ \
| * | | | Make ArtField have no functionalityMathieu Chartier2015-03-295-257/+73
|/ / / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pre-requisite to making them non java objects. Some other changes to speed up reflection. TODO: Another CL for ArtMethod. Bug: 19264997 Change-Id: I17ca0cf4b9ba853e59f4a6eff3a05d9d90cf23f9
* | | | Merge "Test NetworkSecurityPolicy effect on HTTP connections."Alex Klyubin2015-03-261-0/+54
|\ \ \ \
| * | | | Test NetworkSecurityPolicy effect on HTTP connections.Alex Klyubin2015-03-251-0/+54
| |/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds CTS tests that assert that platform-provided URLConnection instances that use cleartext HTTP honor the cleartext traffic policy from NetworkSecurityPolicy. Bug: 19215516 Change-Id: I79f5fce5e00434e96f4325c1aae65a573f10dcdd
* | | | Merge "Remove a misleading comment."Neil Fuller2015-03-261-3/+0
|\ \ \ \ | |/ / / |/| | |
| * | | Remove a misleading comment.Neil Fuller2015-03-131-3/+0
| | | | | | | | | | | | | | | | Change-Id: I7a5c8095e98f1449fb4efc98061c488fd0b573e2
* | | | Merge "Add libcore.net.NetworkSecurityPolicy."Alex Klyubin2015-03-254-2/+340
|\ \ \ \
| * | | | Add libcore.net.NetworkSecurityPolicy.Alex Klyubin2015-03-244-2/+340
| | |/ / | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This hidden libcore API is to be used by bundled network stacks to determine whether cleartext network traffic is permitted. These stacks cannot directly use the public Android framework API android.security.NetworkSecurityPolicy because the framework package typically compile-time depends on the packages offering these bundled network stacks. As an example, this CL makes java.util.logging.SocketHandler and platform-provided URLConnection instances for the FTP protocol honor this new flag. To avoid duplication, the intention is that framework's android.security.NetworkSecurityPolicy implementaion will switch to this new libcore API to store/retrive the state of framework's NetworkSecurityPolicy class. Bug: 19215516 Change-Id: I78e348458975d69c52918582a43db25df87e2a15
* | | | Merge "Fix for ftp:// invalid urls with ProxySelector"Neil Fuller2015-03-251-1/+1
|\ \ \ \ | |/ / / |/| | |
| * | | Fix for ftp:// invalid urls with ProxySelectorNeil Fuller2015-03-251-1/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are currently no tests for FtpURLConnection. Future commits are planned that add tests that are based on the MockFTPServer open-source project. Thanks to pk.samson@ for the report. Bug: https://code.google.com/p/android/issues/detail?id=160725 Change-Id: I54fc2d5825f4e1b9681d537dd2c92b90659be5b5
* | | Merge "Fix for devices with multiple multicast-capable interfaces"Neil Fuller2015-03-241-8/+28
|\ \ \
| * | | Fix for devices with multiple multicast-capable interfacesNeil Fuller2015-03-171-8/+28
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | test_joinGroupLjava_net_SocketAddressLjava_net_NetworkInterface was wrong: 1) The sending socket was joining a group for no obvious reason except, perhaps, to test null NetworkInterface handling. 2) The sending socket was always using the default interface to send multicast packets, but receiving on a specified interface. For devices with several interfaces we have reports of the test failing. It is assumed to be because of (2) when the specified interface and the default interface differ in the presence of multiple interfaces. To explicitly test null handling for joinGroup() more tests have been added. Thanks to swl77wade for helping to track this down. Bug: 159740 Change-Id: Ibb180f6d93770a95f70a6bfa34bfadd93aa3187e
* | | Merge "Remove forced alignment code."Christopher Ferris2015-03-244-84/+291
|\ \ \