Commit Graph

405 Commits

Author SHA1 Message Date
Christoph Aschwanden
4fa35e8688
classlib: fix issue with Date.UTC year
Co-authored-by: noblemaster <contact@noblemaster.com>
2023-02-12 10:52:36 +03:00
Alexey Andreev
5c146c6de0 Fix issues in recently merged PR 2023-01-26 09:17:08 +01:00
Ivan Hetman
ada086a864
Base64 implementation (#650)
classlib: add Base64 support
2023-01-26 08:40:03 +01:00
Alexey Andreev
8014c038c0 Migrate to gradle 2023-01-23 17:16:07 +01:00
Alexey Andreev
64ae44ee01 JS: store global object in a variable to avoid name clashes between generated declarations (in minified mode) and global declarations 2022-11-17 12:02:46 +01:00
Alexey Andreev
8285799b2b Fix checkstyle warning 2022-11-11 11:09:19 +01:00
Alexey Andreev
1fb70b0903 Fix private method call resolution in Java 11 2022-11-11 10:56:20 +01:00
Alexey Andreev
292aa21aef classlib: use built-in unicode table to implement tolower/toupper methods.
This makes it possible to use TeaVM in environments where these functions aren't natively available.
For example, WASI
2022-11-09 12:08:17 +01:00
Alexey Andreev
d5cdd740f5 Fix incorrect behaviour of Class.getInterfaces
fix #635
2022-11-04 16:15:30 +01:00
Alexey Andreev
a40c955d39 classlib: fix StringBuilder.indexOf
Fix #615
2022-10-05 10:16:54 +02:00
Alexey Andreev
2b671b8088 Fix issue with precedence of % operator 2022-08-25 12:48:59 +02:00
Alexey Andreev
bab6c8bddf Fix checkstyle error 2022-08-16 10:15:48 +02:00
Alexey Andreev
38d3bf1c63 classlib: fix ByteBuffer.slice
Probably fixes #607
2022-08-16 10:06:08 +02:00
Alexey Andreev
10415b356e classlib: fix AbstractSet.hashCode 2022-08-12 16:47:59 +02:00
Alexey Andreev
3571917a2f Fix issue in record toString method generator 2022-08-06 14:07:53 +03:00
Alexey Andreev
7fe79a1768 Fix abstract classes are considered by dependency analysis when constructed by reflection
Also fix #592
2022-07-13 12:48:34 +03:00
Alexey Andreev
f0d805fda8 Support Java 17 records 2022-07-10 20:40:24 +03:00
Alexey Andreev
29fd95be95 Fix bugs related to MULTINEWARRAY in various backends 2022-07-10 18:16:16 +03:00
Alexey Andreev
87324a3569 Add Stream.toList 2022-06-23 10:42:43 +03:00
Ulugbek Abdullaev
eba1d1e574
stdlib: implement Stream.takeWhile (#588)
Co-authored-by: Ulugbek <ulugbek.abdullaev@jetbrains.com>
2022-06-10 13:41:16 +03:00
Alexey Andreev
e625409562 classlib: add ResourceBundle.getBaseBundleName 2022-05-08 18:07:40 +03:00
Alexey Andreev
b52729a7c2 Fix checkstyle error 2022-04-04 15:23:04 +03:00
Alexey Andreev
4b5b09164f Remove outdated test 2022-03-25 15:52:39 +03:00
Alexey Andreev
0bcd3101ad Remove unused threeten code 2022-03-25 13:21:21 +03:00
Alexey Andreev
393ab3b09e Classlib: fix bug in regexp implementation 2022-02-25 20:34:44 +03:00
Alexey Andreev
e4a408d26e classlib: throw exception from URL constructor when invalid ':' provided 2022-01-12 16:02:46 +03:00
Alexey Andreev
6d11abf4b6 Implement missing methods in Boolean, Byte and Short classes 2021-10-14 15:25:00 +03:00
Alexey Andreev
7058a195b7 JS: fix class of object created by multianewarray instruction 2021-04-01 12:05:18 +03:00
Alexey Andreev
aa8a91d030 classlib: implement missing charsets 2021-03-30 20:03:25 +03:00
Alexey Andreev
75d06bebbf JS: fix bug in compilation of monitorenter instruction 2021-03-18 14:20:29 +03:00
JohannesS
f97484365c JS: fix overrides with default methods 2021-03-18 12:26:33 +03:00
Alexey Andreev
0cff9e104c Fix checkstyle warnings after migration to the new version 2021-03-18 11:51:20 +03:00
Alexey Andreev
e5249ecb6a java.time: ignore or remove tests that don't pass due to weird or unclear reasons 2021-03-18 00:13:52 +03:00
Alexey Andreev
44bacd0b02 java.time: update threeten code and tests WRT JDK semantics 2021-03-18 00:13:52 +03:00
Alexey Andreev
e9d0ed5c67 java.time: reduce generated code size 2021-03-18 00:13:52 +03:00
Alexey Andreev
1b31d6da9a java.time: format code according to checkstyle rules 2021-03-18 00:13:52 +03:00
Alexey Andreev
2924af963d java.time: add support for time zones 2021-03-18 00:13:52 +03:00
Alexey Andreev
81878548b4 java.time: running threeten tests 2021-03-18 00:13:51 +03:00
Alexey Andreev
91c00da57b java.time: add tests from threeten 2021-03-18 00:13:51 +03:00
Alexey Andreev
67045b068e Fix infinite loop in Deflater 2021-03-09 16:09:09 +03:00
Alexey Andreev
707d11d9d8 JS: remove old node-based test runner, use new JUnit browser runner in travis 2021-03-09 11:04:21 +03:00
Alexey Andreev
bc9ad315ff Fix time-based test for worse timer resolution 2021-03-09 11:00:24 +03:00
Alexey Andreev
1eab7e41b1 Fix tests. Add headless firefox test runner 2021-03-08 12:00:13 +03:00
Alexey Andreev
61db54e848 Add JS test runner that runs tests right in the browser 2021-03-07 15:56:48 +03:00
Alexey Andreev
8b4f401bcb Fix TreeMap iterator
Fix #519
2021-03-06 21:08:51 +03:00
Alexey Andreev
ddf194af31 JS: reset file size to 0 when creating FileOutputStream
Fix #558
2021-03-06 19:38:49 +03:00
Alexey Andreev
0ade0313ce Fix issue in DecimalFormat rounding.
When value near 1 (0.999...) is rounded to 1, exponent should be increased.
This fixes #557. Also reuse exponent/mantissa/sign analyzer
written for StringBuilder.append(double)
2021-02-27 22:07:00 +03:00
Ivan Hetman
8122095193
Fix circular reference support in toString of collection classes (#552) 2021-01-11 21:32:44 +03:00
Alexey Andreev
55ba9be16a Proper implementation for List.of, Set.of, Map.of/ofEntries 2020-10-07 16:32:34 +03:00
Alexey Andreev
74cc1d8d7d Fix Float.parse and Double.parse for some values 2020-10-07 16:32:34 +03:00
Ivan Hetman
1785d6ad9e
Collectors.toMap (#515)
Implement Collectors.toMap
2020-10-07 12:21:55 +03:00
Alexey Andreev
306c78459c JS: use symbol instead of string property to represent Java exception wrapper 2020-09-09 19:28:32 +03:00
Ivan Hetman
fcc1fb7690
Fix Stream.min and Stream.max (#520) 2020-09-08 19:02:45 +03:00
Alexey Andreev
d97dce4650 Fix concatenation with byte and short in JVM 9+
Fix #522
2020-09-08 15:03:19 +03:00
Alexey Andreev
5ee332c771 Fix crash when lambda is not used. Fix #500 2020-06-01 12:19:37 +03:00
Alexey Andreev
ecc4be2d25 Fix class initialization optimization 2020-05-19 13:27:26 +03:00
Alexey Andreev
c7c47f63ee Implement Math.nextDown, reimplement ulp and nextUp using bit operations 2020-04-30 14:19:50 +03:00
Adam J Ryan
e0fc5d834b Add ability to fine tune transpiler class substitutions. 2020-04-01 19:32:34 +03:00
Jörg Hohwiller
c2d27fdb1a
Add support for String.isBlank() (#482) 2020-03-10 11:28:54 +03:00
Alexey Andreev
ea1134d66b Trying to reduce number of classes for which name is provided in their metadata 2020-03-02 16:36:09 +03:00
Alexey Andreev
7f02ccdd87 Mark some tests with @WholeClassCompilation 2020-02-27 18:43:27 +03:00
Alexey Andreev
95426e2159 Add per-class compilation when running tests (requires @WholeClassCompilation annotation) 2020-02-27 18:43:08 +03:00
Colorize
a97bda3c1a
Support Collection.removeIf (#474) 2020-02-17 11:23:24 +03:00
Alexey Andreev
884fcfe538 Return accidentally removed annotation 2020-02-04 18:02:48 +03:00
Alexey Andreev
fa198244dd Fix bug in ArrayDeque implementation 2020-02-04 17:36:46 +03:00
Alexey Andreev
afa4e15846 Trying to fix #460
Actually, could not reproduce this, added some tests (they passed on initial version).
2020-01-27 16:03:51 +03:00
Alexey Andreev
2d2ef642a3 Fix virtual method resolution in code server mode 2020-01-23 19:03:47 +03:00
Alexey Andreev
72275a0877 Fix passing reflection tests with fast global analysis enabled 2020-01-23 18:58:18 +03:00
adamjryan
34aed76714 Add write replace method to lambdas that implement java.io.Serializable (#453)
Add write replace method to lambdas that implement java.io.Serializable

* Peripheral java library classes added as part of the toString method
of SerializedLambda to align functionality with the standard library.
* Test added that checks the SerializedLambda can be returned and that
it is populated with the correct values including it's toString method.
2020-01-15 11:11:48 +03:00
Adam J Ryan
42cd4c7cb4 Missing (un)boxing for long values in reflection method value marshalling. 2020-01-12 11:01:22 +03:00
Alexey Andreev
e064457fe7 Fix issues in Spliterators code 2019-12-09 11:53:40 +03:00
Alexey Andreev
477d8b2d69 Fix Stream.collect. Add some of the missing functional interfaces 2019-12-04 15:50:10 +03:00
Alexey Andreev
780a3a8cca Fix parsing dates without delimiters using SimpleDateFormat 2019-11-18 13:58:32 +03:00
Alexey Andreev
575ec4a415 Merge lambda tests 2019-11-18 12:37:22 +03:00
Alexey Andreev
d71aec7c40 Fix bug when boxing primitive value inside lambda to supertype (e.g. java.lang.Object) of corresponding wrapper type 2019-11-18 12:34:55 +03:00
Alexey Andreev
b090c2f47d Refactor stream implementation and tests, fix some bugs 2019-11-08 19:30:21 +03:00
Alexander Gusakov
74ee848e0c fix String#join, rm producing extra zero characters 2019-11-08 12:36:08 +03:00
Alexey Andreev
fb78377db8 Fix various issues reported by PVS Studio and LGTM 2019-10-31 14:36:37 +03:00
Alexey Andreev
8a91605c56 Add support for Class.getCanonicalName/getEnclosingClass 2019-10-18 15:10:16 +03:00
Artem Godin
e46f204b4e #431: Add support for char annotation methods
Fixes #431
2019-10-14 14:06:21 +03:00
Alexey Andreev
bffb50f0cd Implement array bounds checking in JavaScript 2019-10-07 16:55:30 +03:00
Alexey Andreev
a2a9dbcbe3 Improve performance of inliner in FULL optimization level
The former implementation suffered from class inference.
The reason was in many nodes having too many possible classes in them.
The new implementation does not handle full set of classes in each node.
Instead, it introduces concept of 'overflow', i.e. node having
more types than the given upper limit.
These nodes behave as if there were all possible classes in them,
which allows to apply certain optimization for these nodes and
omit heavy computations of large type sets.
2019-09-27 16:36:55 +03:00
Alexey Andreev
0a5ed2b4a5 Travis: add scripts to test if headless Chrome runs properly 2019-08-21 12:48:10 +03:00
Alexey Andreev
1d19562c49 Fix Double.parseDouble and Float.parseFloat for some cases of illegal input 2019-08-12 16:38:52 +03:00
Alexey Andreev
ec9fe5471d Fix Long.bitCount. Fix #413 2019-08-07 18:48:06 +03:00
Alexey Andreev
e16ba8a6ca C: don't treat primitives as subtypes of Object. Fix #411 2019-08-07 13:45:40 +03:00
Alexey Andreev
a5ba6f247e Fix register allocator 2019-07-30 11:23:52 +03:00
Alexey Andreev
2d3d92f9a8 Update versions of Unicode data, CLDR, tzdata, asm and Rhino 2019-07-27 22:10:56 +03:00
Alexey Andreev
90e00f7eb4 C: add option to support exceptions via setjmp/longjmp 2019-07-22 16:53:47 +03:00
Alexey Andreev
6e71fa7e87 C: implement file IO in Windows 2019-06-14 15:32:20 +03:00
Alexey Andreev
91de1f6ca7 C: implement native file system 2019-05-31 15:05:23 +03:00
Alexey Andreev
2ba4ce0977 Fix inability to synchronize using array object
See #393
2019-05-29 22:49:13 +03:00
Alexey Andreev
80a12a164d Remove tests that don't pass in OpenJDK 12 2019-05-29 21:38:11 +03:00
Alexey Andreev
1ca635fac6 JS: fix rethrowing uncaught exception
See #394
2019-05-29 21:37:34 +03:00
Alexey Andreev
3364022313 classlib: add URLEncoder and URLDecoder 2019-05-24 17:34:33 +03:00
Alexey Andreev
1b23c9194b Remove tests that don't pass in JDK 11 2019-04-27 14:07:02 +03:00
Alexey Andreev
ec8bae1d40 C: fix bugs in RTTI. Support args parameter of main method 2019-04-04 18:34:30 +03:00
Alexey Andreev
45d31da85c Make clinit optimization weaker in order to properly handle case
when clinit method reads state that was set somewhere in main method
2019-03-27 19:34:30 +03:00
Alexey Andreev
955ac92035 Get rid of reflection code 2019-03-22 11:32:48 +03:00
Alexey Andreev
ac627580c6 JS: Support JSByRef annotation on method return types 2019-03-21 18:09:38 +03:00
Alexey Andreev
a8226ef6a3 Decrease memory consumption 2019-03-11 17:27:51 +03:00
Alexey Andreev
abdd9b3270 C backend: support coroutines 2019-03-10 14:04:04 +03:00
Alexey Andreev
88dca1bd02 Decrease memory consumption during compilation 2019-03-06 16:51:01 +03:00
Alexey Andreev
2a1aca98da Use shared ReferenceCache between different stages of compilation 2019-03-05 19:32:50 +03:00
Alexey Andreev
3c9a3bb359 Store AST cash in binary format. Introduce more compact
AST serialization format.

Reduce memory consumption of incremental compilation on dev server
2019-03-05 19:06:21 +03:00
Alexey Andreev
95092c4d82 Refactor things around decompiler, JS backend and control flow debug info 2019-02-25 16:10:35 +03:00
Alexey Andreev
463f24506d Fix Throwable.toString 2019-02-13 19:30:14 +03:00
Alexey Andreev
6900fd587c Fix Float/Double.parse for strings like '123.' 2018-12-24 18:16:05 +03:00
Alexey Andreev
bab0cd59a6 Improve performance and stability of development server and incremental compilation 2018-12-13 18:45:44 +03:00
Alexey Andreev
d968b20e4c Fix generation of integer multiplication in minified mode. Fix String.intern() (see #370) 2018-12-11 17:42:14 +03:00
Alexey Andreev
d74bcbe2b9 Fast dependency analyzer, fix bugs in incremental compiler 2018-12-07 17:41:21 +03:00
Alexey Andreev
2bb146af47 Improve float to string conversion 2018-12-07 00:21:18 +03:00
Alexey Andreev
f23c71cd97 Improve double to string conversion 2018-12-02 16:12:59 +03:00
Alexey Andreev
1cf3cce076 Reduce minimum runtime size 2018-12-01 23:07:03 +03:00
Alexey Andreev
0c03379206 Fix inability to catch exception when calling just created lambda 2018-11-26 14:49:03 +03:00
Alexey Andreev
85f901362f Wrap native JS exceptions as java.lang.RuntimeException 2018-11-26 14:01:50 +03:00
Alexey Andreev
a3dfc0c486 Add API to catch native JS exceptions 2018-11-23 19:54:37 +03:00
Alexey Andreev
b9ec21a667 Fix Long.reverse 2018-11-23 14:32:50 +03:00
Alexey Andreev
6d2815bc5c Support running JUnit3 tests and improve support of JUnit4 2018-11-22 19:51:33 +03:00
Alexey Andreev
148c07336c Generate entire code inside wrapper IIF 2018-11-15 12:47:25 +03:00
Alexey Andreev
064888c9a1 Support Java 11 2018-11-12 18:59:28 +03:00
Alexey Andreev
f8400279f8 Fix test runner 2018-10-28 00:22:24 +03:00
Alexey Andreev
4d2c075c07 Always embed runtime into generated file. Remove 'runtime' build property 2018-10-28 00:15:36 +03:00
Alexey Andreev
6551f3eb68 Make JS function out of JS object when casting to JSFunctor interface 2018-10-24 14:30:26 +03:00
Alexey Andreev
d20accc20c Add support for Array.set 2018-08-29 13:20:16 +03:00
Alexey Andreev
c9ebe2e2e9 Wasm backend: fix more tests. Implement Array.get. Implement x instanceof C for all cases. 2018-05-13 19:17:45 +03:00
Alexey Andreev
f23128bb13 Wasm backend: fix many tests 2018-05-12 23:43:53 +03:00
Alexey Andreev
a81eeeee03 Wasm backend: fix hanging tests, make more tests pass, change name generation scheme 2018-05-10 17:41:28 +03:00
Alexey Andreev
b087610c2c Wasm backend: make JUnit tests work 2018-05-08 23:31:51 +03:00
Alexey Andreev
37efbd742b C backend: more bugfixes
* Fix cloning Object[] in 64-bit systems
* Fix generation of x instanceof Interface
* Fix a % b when a and b are float or double
* Fix generation of unreachable virtual calls
2018-05-05 23:35:17 +03:00
Michele Comignano
c11b868c0b Add IdentityHashMap, improve distribution of identityHashCode
Add IdentityHashMap, improve distribution of identityHashCode
2018-05-05 22:05:22 +03:00
Alexey Andreev
d2aa37d6a4 C backend: fix more bugs, pass more tests 2018-05-05 15:17:35 +03:00
Alexey Andreev
540ad7f694 Uprage HPPC to 0.7.3 2018-03-20 19:10:36 +03:00
Alexey Andreev
52a23fcadd Support '.<digits>' floating literals in Double.parseDouble
See #327
2018-02-16 23:17:17 +03:00
Alexey Andreev
51d87091cc Fix TimeUnit.convert implementation
See #329
2018-02-16 22:40:56 +03:00
Alexey Andreev
96b2d4e7d6 Support o and x format specifiers in String.format 2018-01-28 19:19:45 +03:00
Alexey Andreev
4ebaf476fe Fix to[Hex/Octal/Binary]String for unsigned values 2018-01-28 18:38:00 +03:00
Alexey Andreev
caaf2114bf Fix error when superclass has final String fields 2018-01-25 21:53:28 +03:00
Alexey Andreev
28e17af500 Implement ArrayBlockingQueue 2018-01-22 23:32:10 +03:00
Alexey Andreev
8e4b84545f Fix flaky test 2018-01-07 16:04:38 +03:00
Alexey Andreev
c46bfbc93c Fix bugs in URL implementation 2018-01-03 19:47:00 +03:00
Alexey Andreev
422cb0462a Add java.net.URL implementation 2018-01-01 14:53:44 +03:00
Alexey Andreev
c15709994f Fix bug in decompiling nested catch blocks with complex control flow 2017-12-03 18:39:57 +03:00
Alexey Andreev
cc04c3446d Add support for several JDK classes and functions 2017-11-26 17:10:56 +03:00
Alexey Andreev
608e62ae3b Add support of stream API 2017-11-26 13:13:33 +03:00
Alexey Andreev
62f639f92b Properly report missing virtual methods 2017-11-19 14:36:04 +03:00
Alexey Andreev
0e5b1a97c1 Add PipedInputStream and PipedOutputStream 2017-11-16 15:11:58 +03:00
Alexey Andreev
82b96da215 Add StreamTokenizer 2017-11-16 15:11:58 +03:00
Alexey Andreev
30da395304 Add BufferedWriter 2017-11-16 13:43:31 +03:00
Alexey Andreev
c9485ccbdc Add tests for FileInputStream and FileOutputStream 2017-11-16 00:19:00 +03:00
Alexey Andreev
a96b5912c7 Uncomment previously failing File tests and fix bugs in File implementation 2017-11-16 00:19:00 +03:00
Alexey Andreev
105c188953 Fix nested exception handlers 2017-11-16 00:19:00 +03:00
Alexey Andreev
23c25c5d6e Add tests for java.io.File. Improve its implementation to pass tests 2017-11-15 00:13:07 +03:00
Alexey Andreev
2bbdf6caba Rename DependencyChecker to DependencyAnalyzer 2017-11-12 23:21:16 +03:00
Alexey Andreev
840b9dfe8b Fix message format tests 2017-11-03 21:59:21 +03:00
Alexey Andreev
344cb4e42d Fix T[].clone() 2017-11-03 21:58:48 +03:00
Alexey Andreev
90cc2c4677 Add implementation of java.text.MessageFormat 2017-11-03 00:32:16 +03:00
Alexey Andreev
5109691a8d Implement java.util.Formatter for subset of available specifiers 2017-10-30 00:03:30 +03:00
Alexey Andreev
ffbfd7df79 Add minor stuff to classlib 2017-10-26 20:17:09 +03:00
Alexey Andreev
74be67038d Implement ResourceBundle 2017-10-26 20:11:24 +03:00
Alexey Andreev
f61567dfde Implement StringWriter and PrintWriter 2017-10-26 15:51:01 +03:00
Alexey Andreev
5c436c3391 Improve node.js test runner: send response after each test, update timeout after each test. 2017-10-26 14:11:56 +03:00
Alexey Andreev
de14a57fe1 Change how method resolution work in DCE and devirtualization.
Since in Java 8 there are default methods in interface, method
resolution algorithm becomes more complicated. This alseocauses
several related changes.

1. Resolve methods as late as possible; do not resolve
   virtual call sites during DCE.
2. Due to several reasons we have to improve linking phase
   to preserve super methods that aren't actually ever called,
   but present in virtual call sites.

Related issue: #311
2017-10-22 17:56:31 +03:00
Alexey Andreev
daf0f03634 Fix Boolean.getBoolean(String). Fix various minor issues with system properties
See #306
2017-10-13 16:06:10 +03:00
Alexey Andreev
0b985b95d1 Implementing java.util.EnumMap 2017-10-12 15:13:55 +03:00
Alexey Andreev
e885ebdbbb Move tests from TArrayDequeTests to proper location 2017-10-10 23:59:55 +03:00
Alexey Andreev
26824f1399 Add some properties-related methods to System class 2017-10-10 12:56:51 +03:00
Alexey Andreev
dfaeb46c5e Implementing EnumSet 2017-10-08 21:40:45 +03:00
Alexey Andreev
669594fc9c JS: add reflection support for methods 2017-07-17 22:21:17 +03:00
Alexey Andreev
4171d468d4 JS: add reflection support for constructors 2017-07-17 22:21:17 +03:00
Alexey Andreev
c4c5635f88 Add reflection support for constructors 2017-07-17 22:21:16 +03:00
Alexey Andreev
31f9ca57ce Add reflection support for fields 2017-07-17 22:21:16 +03:00
Alexey Andreev
d4903d460b Reformat test code to conform checkstyle settings 2017-07-01 15:47:46 +03:00
Alexey Andreev
cdec4560ba Remove dumb comments containing only @author annotation 2017-07-01 13:13:52 +03:00
Alexey Andreev
d982f89ab6 Add missing folder to CLDR archive. Fix tests WRT changes in CLDR. 2017-06-25 13:36:35 +03:00
Alexey Andreev
40b29cdfa1 Add support for altMetafactory 2017-06-18 21:22:44 +03:00
Alexey Andreev
2992c6e406 Wrap function by an object if returning value of native method is
a JSFunctor interface.

See #280
2017-06-11 00:15:41 +03:00
Alexey Andreev
45ba247265 When Java class gets exported to JS, generate bridges for its
methods so that these bridges perform type conversion
between Java and JS
2017-06-09 00:02:28 +03:00
Alexey Andreev
d324847fe6 Fix flaky test (hopefully) 2017-06-07 14:36:44 +03:00
Alexey Andreev
ba7f07de4b Copy default methods from interfaces to implementing classes 2017-06-06 22:42:21 +03:00
Alexey Andreev
ad14176277 Fix JSO tests from previous commits 2017-05-31 22:52:34 +03:00
Alexey Andreev
933a5c3efc Code style fixes 2017-05-30 22:49:40 +03:00
marciodel
5ecfb3620c Support for default and static methods in Functors 2017-05-30 22:45:14 +03:00
Alexey Andreev
3791b806b9 Weaken rules for names of JSProperty methods
First, accept first character if it's a non-letter character.
Second, don't validate name of method when JSProperty specifies
name of the JS property explicitly.

See #277
2017-05-29 23:54:43 +03:00
Alexey Andreev
c0ed3d54d7 Fix base64 support
(cherry picked from commit 5da32e3a6583493a36c87bc02c8177a7740faaf7)

# Conflicts:
#	tests/src/test/java/org/teavm/classlib/java/lang/TestResourcesSupplier.java
2017-05-29 23:26:34 +03:00
Alexey Andreev
b1b98097ee Improve ResourceSupplier API
(cherry picked from commit 539a12227f79abdb4ce22aac2dbc647f1c09f083)

# Conflicts:
#	classlib/src/main/java/org/teavm/classlib/java/lang/ClassLoaderNativeGenerator.java
#	tests/src/test/java/org/teavm/classlib/java/lang/TestResourcesSupplier.java
2017-05-29 23:22:59 +03:00
Alexey Andreev
25b298b1d0 JS: fix ClassLoader.getResourceBundle for non-existent resources 2017-05-29 23:19:07 +03:00
Alexey Andreev
2d5f6a81c2 Improve peformance of Long.hashCode 2017-05-07 22:18:10 +03:00
Alexey Andreev
48d14570b2 Make Long/Float/Double/Integer compare/hashCode methods cross-platform 2017-05-07 22:06:44 +03:00
Alexey Andreev
e884bb35c9 Fix System.setErr/setOut methods 2017-05-07 21:32:35 +03:00
Alexey Andreev
293e82a3c0 In class inference add rules for known types of method parameters
and method return value
2017-04-27 00:14:14 +03:00
Alexey Andreev
3c4ec550c4 Fix test runner 2017-04-23 23:51:16 +03:00
Alexey Andreev
6ecfefe9c8 Testing travis setup 2017-04-22 20:08:30 +03:00
Alexey Andreev
6298e2c498 Testing travis setup 2017-04-22 18:57:06 +03:00
Alexey Andreev
60bcf97933 Use websocket client to run tests 2017-04-22 18:14:55 +03:00
Alexey Andreev
519cd71636 Change presentation of test suites in headless chrome runner 2017-04-22 11:32:19 +03:00
Alexey Andreev
80194f054e Fix flaky test 2017-04-22 00:47:47 +03:00
Alexey Andreev
8e67fe0168 Escape undefined unicode characters in string literal 2017-04-22 00:38:04 +03:00
Alexey Andreev
d5db7270be Move expected exception handling off test runner.
Implement it in launcher genertor instead
2017-04-22 00:26:43 +03:00
Alexey Andreev
e6606302cc Add test runner on headless chrome 2017-04-21 23:51:35 +03:00