mirror of
https://github.com/corda/corda.git
synced 2024-12-29 09:18:58 +00:00
9411c223af
commit fabf4dd0cca19118c59c925f572a655d1d9c4092
Author: Joel Dice <joel.dice@gmail.com>
Date: Sun Jul 9 17:36:06 2017 -0600
reserve a little more stack space for worst-case lambda expressions
commit 24b95016dd6f62fa4a82312310fcb5c55cc22f93
Author: Joel Dice <joel.dice@gmail.com>
Date: Sun Jul 9 17:33:39 2017 -0600
support constructor references
commit a329416f4f37840d2a5d7976874585413cd4c6af
Author: Joel Dice <joel.dice@gmail.com>
Date: Sun Jul 9 17:11:19 2017 -0600
normalize class name in Classes.forName
This fixes a Tomcat classloading issue when using the OpenJDK class library.
commit ecafdf40baf2f3cde4835620e9af4380b1081fe7
Author: Joel Dice <joel.dice@gmail.com>
Date: Sun Jul 9 16:58:04 2017 -0600
fix some lambda bugs
commit 552dfd779baf077cc6445b4042588e4b6e34f3d2
Merge: 63dda56 aa2f25d
Author: Joel Dice <joel.dice@gmail.com>
Date: Sat Jul 8 10:57:59 2017 -0600
Merge remote-tracking branch 'corda/chrisr3-invoking-extension'
commit 63dda560f8648a793bdb609879076ab729b17e19
Merge: 3ec983d e589f10
Author: Joel Dice <joel.dice@gmail.com>
Date: Sat Jul 8 10:54:53 2017 -0600
Merge pull request #538 from dicej/master
avoid definePackage infinite recursion with OpenJDK class library
commit aa2f25da404b2fc168a672392df939b52ea250ab
Author: Chris Rankin <chris.rankin@r3.com>
Date: Mon Jul 3 17:26:41 2017 +0100
Add support for "invokevirtual" and "invokeinterface".
The "invokeinterface" support seems to be broken for lambdas that require native types to be boxed/unboxed.
commit e589f105741ea36d07bba1e300c7ed69c33a22d1
Author: Joel Dice <joel.dice@gmail.com>
Date: Sun Jul 2 19:43:36 2017 -0600
avoid definePackage infinite recursion with OpenJDK class library
commit 3ec983dd82e01b36fb96411df345a54119a68181
Merge: 6f6bdd7 78881d4
Author: Joel Dice <joel.dice@gmail.com>
Date: Tue Jun 13 09:50:49 2017 -0600
Merge pull request #534 from lwahlmeier/fileGetParentFile
fixed File.getParent when getting parent returns root
commit 78881d427cd474c14f5ce94484f5253de564074b
Author: Luke Wahlmeier <lwahlmeier@gmail.com>
Date: Tue May 30 13:42:56 2017 -0600
fixed File.getParent when getting parent returns root
commit 6f6bdd7d5c171e0c4c807d0a4f3aa676461307de
Merge: 8b694f9 b22343e
Author: Joel Dice <joel.dice@gmail.com>
Date: Mon May 22 12:58:09 2017 -0600
Merge pull request #529 from mikehearn/proguard-fixes
Some fixes to the ProGuard files
commit 8b694f961496f2d47a377254f61153b0338335fd
Merge: dfae414 61c82e1
Author: Joel Dice <joel.dice@gmail.com>
Date: Mon May 22 12:57:54 2017 -0600
Merge pull request #531 from mikehearn/fileinputstream-compat
FileInputStream has wrapped some more native methods
commit dfae414da8da57049076c16c43472cc32bdeb07c
Merge: 16dd804 d7a6f68
Author: Joel Dice <joel.dice@gmail.com>
Date: Mon May 22 12:57:38 2017 -0600
Merge pull request #532 from mikehearn/use-symlinks
Symlink OpenJDK files rather than hardlink
commit d7a6f68235b2d42c03aba36f1bb48d173adb4fa6
Author: Mike Hearn <mike@plan99.net>
Date: Sun May 14 21:42:06 2017 +0200
Symlink OpenJDK files rather than hardlink
commit 61c82e1070d857bcdc7a4f086d13836d9608da00
Author: Mike Hearn <mike@plan99.net>
Date: Sun May 14 21:40:52 2017 +0200
FileInputStream has wrapped some more native methods in recent OpenJDK releases
commit b22343eb6731f1df2631635e2fcf9d51817273fe
Author: Mike Hearn <mike@plan99.net>
Date: Sun May 14 21:38:09 2017 +0200
Some fixes to the ProGuard files
commit 16dd804f392168497fa17ab682978f938e291bfb
Merge: e2d3270 19deadd
Author: Joel Dice <joel.dice@gmail.com>
Date: Wed Mar 22 16:00:30 2017 -0600
Merge pull request #526 from MaartenR/arrays-binsearch
Added integer array binary search methods to Arrays class
commit e2d3270fe8e92203b6107b95f862ff5bd245c37a
Merge: dee99d6 545b9c8
Author: Joel Dice <joel.dice@gmail.com>
Date: Wed Mar 22 16:00:20 2017 -0600
Merge pull request #527 from MaartenR/integer-nolz
Added numberOfLeadingZeros method to Integer class
commit 545b9c8732a6ea026285b1edf976a79eb541ef2e
Author: Maarten Raaphorst <mwraaphorst@gmail.com>
Date: Tue Mar 14 11:23:36 2017 +0100
Tested more negative numbers
commit b45bcf09535daef99ed31451ae55db8bec83164c
Author: Maarten Raaphorst <mwraaphorst@gmail.com>
Date: Tue Mar 14 10:47:27 2017 +0100
Added unit test for numberOfLeadingZeros method of the Integer class
commit 19deadd36bbfc02a8c13e6d91963e41f5125057f
Author: Maarten Raaphorst <mwraaphorst@gmail.com>
Date: Mon Mar 13 12:19:17 2017 +0100
Fixed mistake with end index being exclusive
commit 7271c0b7077ae3bef473e036aa0f0298a9eb0601
Author: Maarten Raaphorst <mwraaphorst@gmail.com>
Date: Fri Mar 10 11:17:13 2017 +0100
Added numberOfLeadingZeros method to Integer class
commit 023bb69acd071348f29cd43ff954d3dcf2856c7c
Author: Maarten Raaphorst <mwraaphorst@gmail.com>
Date: Thu Mar 9 13:43:03 2017 +0100
Added integer array binary search methods to Arrays class
commit dee99d6dd60b743a870d1a2c58183649c8a6449c
Merge: f7a651d
6c90953
Author: Joel Dice <joel.dice@gmail.com>
Date: Wed Mar 1 08:39:32 2017 -0700
Merge pull request #525 from MaartenR/master
Added functionality to HttpURLConnection for obtaining content length
commit 6c90953745be5451ac9a028639f94e3fcc43d7f3
Author: Maarten Raaphorst <raaphorst@serviceplanet.nl>
Date: Wed Mar 1 14:19:51 2017 +0100
Made http headers case insensitive
commit 2c3a82d2b387251a8932ddb6575e718c2c1785a7
Author: Maarten Raaphorst <mwraaphorst@gmail.com>
Date: Fri Feb 3 05:42:56 2017 -0800
Added functionality to HttpURLConnection for obtaining content length
350 lines
8.9 KiB
Prolog
350 lines
8.9 KiB
Prolog
# proguard include file (http://proguard.sourceforge.net)
|
|
|
|
# This file is for use in combination with vm.pro when ProGuarding
|
|
# OpenJDK-based builds
|
|
|
|
# the following methods and fields are refered to by name in the VM:
|
|
|
|
-keepclassmembers class java.lang.Thread {
|
|
public void run();
|
|
}
|
|
|
|
-keepclassmembers class java.lang.ThreadGroup {
|
|
void threadTerminated(java.lang.Thread);
|
|
}
|
|
|
|
-keep class java.lang.System {
|
|
private static void initializeSystemClass();
|
|
public static void setProperties(java.util.Properties);
|
|
}
|
|
|
|
-keep class sun.misc.Launcher {
|
|
public static sun.misc.Launcher getLauncher();
|
|
}
|
|
|
|
-keep class java.lang.ClassLoader {
|
|
private static java.lang.ClassLoader scl;
|
|
private static boolean sclSet;
|
|
|
|
protected ClassLoader(java.lang.ClassLoader);
|
|
}
|
|
|
|
-keep class avian.SystemClassLoader {
|
|
protected java.net.URL findResource(java.lang.String);
|
|
}
|
|
|
|
-keepnames class java.lang.ClassLoader {
|
|
public java.lang.Class loadClass(java.lang.String);
|
|
static void loadLibrary(java.lang.Class, java.lang.String, boolean);
|
|
private static java.net.URL getBootstrapResource(java.lang.String);
|
|
private static java.util.Enumeration getBootstrapResources(java.lang.String);
|
|
}
|
|
|
|
-keep class java.util.Properties {
|
|
public java.lang.Object setProperty(java.lang.String, java.lang.String);
|
|
public java.lang.String getProperty(java.lang.String);
|
|
}
|
|
|
|
-keep class java.util.Hashtable {
|
|
public java.lang.Object remove(java.lang.Object);
|
|
}
|
|
|
|
-keep class avian.OpenJDK {
|
|
<methods>;
|
|
}
|
|
|
|
-keepclassmembers public class java.security.PrivilegedAction {
|
|
public java.lang.Object run();
|
|
}
|
|
|
|
-keepclassmembers public class * implements java.security.PrivilegedAction {
|
|
public java.lang.Object run();
|
|
}
|
|
|
|
-keepclassmembers public class java.security.PrivilegedExceptionAction {
|
|
public java.lang.Object run();
|
|
}
|
|
|
|
-keepclassmembers public class * implements java.security.PrivilegedExceptionAction {
|
|
public java.lang.Object run();
|
|
}
|
|
|
|
-keep public class java.security.PrivilegedActionException {
|
|
public PrivilegedActionException(java.lang.Exception);
|
|
}
|
|
|
|
# these class names are used to disambiguate JNI method lookups:
|
|
|
|
-keepnames public class java.net.URL
|
|
-keepnames public class java.util.Enumeration
|
|
-keepnames public class java.security.ProtectionDomain
|
|
-keepnames public class java.security.PrivilegedAction
|
|
-keepnames public class java.security.PrivilegedExceptionAction
|
|
-keepnames public class java.security.AccessControlContext
|
|
|
|
# the following methods and fields are refered to by name in the OpenJDK
|
|
# native code:
|
|
|
|
-keep class java.util.Properties {
|
|
public java.lang.Object put(java.lang.Object, java.lang.Object);
|
|
}
|
|
|
|
-keepclassmembers class * {
|
|
public boolean equals(java.lang.Object);
|
|
public void wait();
|
|
public void notify();
|
|
public void notifyAll();
|
|
public java.lang.String toString();
|
|
}
|
|
|
|
-keepclassmembers class java.lang.String {
|
|
public String(byte[]);
|
|
public String(byte[], java.lang.String);
|
|
public byte[] getBytes();
|
|
public byte[] getBytes(java.lang.String);
|
|
}
|
|
|
|
-keepclassmembers class java.lang.Boolean {
|
|
public boolean getBoolean(java.lang.String);
|
|
}
|
|
|
|
-keepclassmembers class java.util.zip.Inflater {
|
|
long strm;
|
|
boolean needDict;
|
|
boolean finished;
|
|
byte[] buf;
|
|
int off;
|
|
int len;
|
|
}
|
|
|
|
-keepclassmembers class java.io.FileDescriptor {
|
|
private int fd;
|
|
private long handle;
|
|
}
|
|
|
|
-keep class java.net.NetworkInterface {
|
|
<fields>;
|
|
}
|
|
-keep class java.net.InetAddress {
|
|
<fields>;
|
|
}
|
|
-keep class java.net.Inet4Address {
|
|
<fields>;
|
|
}
|
|
-keep class java.net.Inet4AddressImpl
|
|
-keep class java.net.Inet6Address {
|
|
<fields>;
|
|
}
|
|
-keep class java.net.Inet6AddressImpl
|
|
-keep class java.net.InetSocketAddress {
|
|
public InetSocketAddress(java.net.InetAddress, int);
|
|
}
|
|
-keep class java.net.ServerSocket
|
|
-keep class java.net.SocketTimeoutException
|
|
|
|
-keepclassmembers class java.net.PlainSocketImpl {
|
|
<fields>;
|
|
}
|
|
|
|
-keepclassmembers class java.net.TwoStacksPlainSocketImpl {
|
|
*** fd1;
|
|
*** lastfd;
|
|
}
|
|
|
|
-keepclassmembers class java.net.AbstractPlainSocketImpl {
|
|
*** timeout;
|
|
*** trafficClass;
|
|
}
|
|
|
|
-keepclassmembers class java.net.SocketImpl {
|
|
*** serverSocket;
|
|
*** fd;
|
|
*** address;
|
|
*** port;
|
|
*** localport;
|
|
}
|
|
|
|
-keepclassmembers class java.io.FileInputStream {
|
|
private java.io.FileDescriptor fd;
|
|
}
|
|
|
|
-keepclassmembers class java.io.FileOutputStream {
|
|
private java.io.FileDescriptor fd;
|
|
private boolean append;
|
|
}
|
|
|
|
# changed in native code via sun.misc.Unsafe (todo: handle other
|
|
# Atomic* classes)
|
|
-keepclassmembers class java.util.concurrent.atomic.AtomicInteger {
|
|
private int value;
|
|
}
|
|
|
|
# avoid inlining due to access check using a fixed offset into call stack:
|
|
-keep,allowshrinking,allowobfuscation class java.util.concurrent.atomic.AtomicReferenceFieldUpdater {
|
|
*** newUpdater(...);
|
|
}
|
|
|
|
# accessed reflectively via an AtomicReferenceFieldUpdater:
|
|
-keepclassmembers class java.io.BufferedInputStream {
|
|
protected byte[] buf;
|
|
}
|
|
|
|
-keep class java.lang.System {
|
|
public static java.io.InputStream in;
|
|
public static java.io.PrintStream out;
|
|
public static java.io.PrintStream err;
|
|
# avoid inlining due to access check using fixed offset into call stack:
|
|
static java.lang.Class getCallerClass();
|
|
# called from jni_util.c:
|
|
static java.lang.String getProperty(java.lang.String);
|
|
}
|
|
|
|
# refered to by name from native code:
|
|
-keepnames public class java.io.InputStream
|
|
-keepnames public class java.io.PrintStream
|
|
|
|
# avoid inlining due to access check using fixed offset into call stack:
|
|
-keep,allowshrinking,allowobfuscation class java.lang.System {
|
|
static java.lang.Class getCallerClass();
|
|
}
|
|
|
|
-keep class java.io.UnixFileSystem {
|
|
public UnixFileSystem();
|
|
}
|
|
|
|
-keep class java.io.WinNTFileSystem {
|
|
public WinNTFileSystem();
|
|
}
|
|
|
|
-keep class java.io.File {
|
|
private java.lang.String path;
|
|
}
|
|
|
|
-keepclassmembers class java.lang.ClassLoader$NativeLibrary {
|
|
long handle;
|
|
private int jniVersion;
|
|
}
|
|
|
|
-keep class java.nio.charset.Charset {
|
|
# called from jni_util.c:
|
|
boolean isSupported(java.lang.String);
|
|
}
|
|
|
|
# Charsets are loaded via reflection. If you need others besides
|
|
# UTF-8, you'll need to add them (e.g. sun.nio.cs.ISO_8859_1).
|
|
-keep class sun.nio.cs.UTF_8
|
|
|
|
# loaded reflectively to handle embedded resources:
|
|
-keep class avian.avianvmresource.Handler
|
|
|
|
# loaded reflectively by sun.misc.Launcher:
|
|
-keep class avian.file.Handler
|
|
|
|
# refered to symbolically in MethodAccessorGenerator:
|
|
-keep class sun.reflect.MethodAccessorImpl {
|
|
<methods>;
|
|
}
|
|
-keep class sun.reflect.ConstructorAccessorImpl {
|
|
<methods>;
|
|
}
|
|
-keep class sun.reflect.SerializationConstructorAccessorImpl {
|
|
<methods>;
|
|
}
|
|
|
|
# referred to by name in LocaleData to load resources:
|
|
-keep class sun.util.resources.CalendarData
|
|
-keep class sun.util.resources.TimeZoneNames
|
|
-keep class sun.text.resources.FormatData
|
|
|
|
# loaded via reflection from DefaultFileSystemProvider:
|
|
-keep class sun.nio.fs.LinuxFileSystemProvider
|
|
-keep class sun.nio.fs.BsdFileSystemProvider
|
|
|
|
# loaded via JNI in UnixNativeDispatcher.c:
|
|
-keep class sun.nio.fs.UnixFileAttributes {
|
|
<fields>;
|
|
}
|
|
-keep class sun.nio.fs.UnixFileStoreAttributes {
|
|
<fields>;
|
|
}
|
|
-keep class sun.nio.fs.UnixMountEntry {
|
|
<fields>;
|
|
}
|
|
|
|
-keep class sun.nio.fs.UnixException {
|
|
UnixException(int);
|
|
}
|
|
|
|
-keep class sun.net.www.protocol.jar.Handler
|
|
|
|
# These concurrent classes refer to certain members reflectively in their static initializers
|
|
-keepclassmembers class java.util.concurrent.ConcurrentHashMap$HashEntry {
|
|
*** next;
|
|
}
|
|
|
|
-keepclassmembers class java.util.concurrent.CopyOnWriteArrayList {
|
|
*** lock;
|
|
}
|
|
|
|
-keepclassmembers class java.util.concurrent.CountDownLatch {
|
|
*** allocationSpinLock;
|
|
}
|
|
|
|
-keepclassmembers class java.util.concurrent.PriorityBlockingQueue {
|
|
*** allocationSpinLock;
|
|
}
|
|
|
|
-keepclassmembers class java.util.concurrent.SynchronousQueue$TransferStack {
|
|
*** head;
|
|
}
|
|
|
|
-keepclassmembers class java.util.concurrent.ConcurrentLinkedQueue {
|
|
*** head;
|
|
*** tail;
|
|
}
|
|
|
|
-keepclassmembers class java.util.concurrent.ConcurrentLinkedQueue$Node {
|
|
*** item;
|
|
*** next;
|
|
}
|
|
|
|
-keepclassmembers class java.util.concurrent.SynchronousQueue$TransferStack$SNode {
|
|
*** match;
|
|
*** next;
|
|
}
|
|
|
|
# These classes are accessed via bytecode generated on the fly.
|
|
-keepclassmembers class java.lang.reflect.Proxy {
|
|
<methods>;
|
|
}
|
|
|
|
-keepclassmembers class java.lang.reflect.InvocationHandler {
|
|
<methods>;
|
|
}
|
|
|
|
# Don't strip special enum members.
|
|
-keepclassmembers,allowoptimization enum * {
|
|
public static **[] values();
|
|
public static ** valueOf(java.lang.String);
|
|
}
|
|
|
|
-keepclassmembers class java.lang.reflect.Executable {
|
|
<methods>;
|
|
}
|
|
|
|
# Needed to create temporary file paths, amongst other things.
|
|
-keep class sun.security.provider.NativePRNG
|
|
-keep class sun.security.provider.SHA
|
|
|
|
# Character set codecs
|
|
-keep class sun.nio.cs.ISO_8859_1
|
|
-keep class sun.nio.cs.UTF_8
|
|
-keep class sun.nio.cs.UTF_16
|
|
-keep class sun.nio.cs.UTF_16BE
|
|
-keep class sun.nio.cs.UTF_16LE
|
|
-keep class sun.nio.cs.US_ASCII
|
|
|
|
# Accessed from native code
|
|
-keep class java.util.zip.Deflater {
|
|
<fields>;
|
|
} |