Commit Graph

1949 Commits

Author SHA1 Message Date
Alexey Andreev
9e4e26ae18 Fix bug in metaprogramming API 2017-03-30 17:20:19 +03:00
Alexey Andreev
61a0fcfb9c Merge branch 'master' of https://github.com/konsoletyper/teavm 2017-03-27 22:30:07 +03:00
Alexey Andreev
4847731328 Fix SOE when calling Throwable.getCause()
Fix https://github.com/konsoletyper/teavm/issues/249
2017-03-27 22:27:59 +03:00
Alexey Andreev
a6447054bb Merge pull request #250 from shannah/suppress-sync-errors
Added annotation to suppress errors like * claimed to be synchronous,…
2017-03-27 22:14:02 +03:00
Steve Hannah
7491f1805a Added annotation to suppress errors like * claimed to be synchronous, but has invocations of synchronous methods. This is usesful in cases where the developer knows that the APIs are synchronous but might be mistakenly marked as async for some reason. This is a possible workaround for issues like https://github.com/konsoletyper/teavm/issues/248 2017-03-24 15:51:23 -07:00
Alexey Andreev
d49354bdac Fix another exception while rendering labels 2017-03-21 21:48:03 +03:00
Alexey Andreev
299485eb96 Fix bug in generation of block labels 2017-03-17 17:19:28 +03:00
Alexey Andreev
b28f5a6b71 Don't produce keywords for label names 2017-03-17 16:41:35 +03:00
Alexey Andreev
6c97f8afe3 Refactor code to avoid duplication 2017-03-17 13:57:37 +03:00
Alexey Andreev
891b906a8c Fix serialization of call graph. Fix minor bugs in build daemon 2017-03-17 13:57:37 +03:00
Alexey Andreev
1ae4a95128 Add TeaVM build daemon to IDEA 2017-03-17 13:57:37 +03:00
Alexey Andreev
56398f58f9 Make serializable some classes that are going to participate in remote build strategy 2017-03-17 13:57:37 +03:00
Alexey Andreev
6b31e13cbb Add abstraction of build strategy. Implement in-process build strategy. Further step is to implement build strategy that communicates with build daemon 2017-03-17 13:57:36 +03:00
Alexey Andreev
d654896833 Remove unnecessary arrays if possible after generating methods via metaprogramming API. Arrays are unnecessary if they are only indexed by constants and never escape method. 2017-02-26 20:04:00 +03:00
Alexey Andreev
c6d4265f8b Fix generation of JS labels 2017-02-26 20:02:45 +03:00
Alexey Andreev
6d3b329540 Remove unnecessary comments and eliminate duplicate code 2017-02-26 13:52:06 +03:00
Alexey Andreev
a48e3fbd61 Write debug information via buffered stream 2017-02-26 13:51:19 +03:00
Alexey Andreev
17113533fc Implement default annotation values and annotations of method parameters in IR binary serializer 2017-02-26 13:49:45 +03:00
Alexey Andreev
3821d29f1c Don't allow user to change minifier settings via IDEA facet UI 2017-02-26 07:36:07 +03:00
Alexey Andreev
3e3b25bddc Fix serialization of IR to binary format for incremental build 2017-02-26 07:07:02 +03:00
Alexey Andreev
1d0230b4c6 Fix bytecode class renamer. Remove unnecessary files 2017-02-26 00:08:17 +03:00
Alexey Andreev
af9a01628f Add support of Metaprogramming.getLocation to metaprogramming API 2017-02-26 00:07:40 +03:00
Alexey Andreev
929e77bf69 Postpone execution code after wait method, since it's executed in a native callback which can't be async. When the code contains async calls, compiler produces error. 2017-02-25 19:52:05 +03:00
Alexey Andreev
a94686ddf6 Fix nullness detection on exception variable 2017-02-25 19:52:05 +03:00
Davin McCall
6ef08ae709 Fix errors in hasAsyncMethods() which cause it to return an incorrect result.
Previously the method could only ever return false.
2017-02-25 19:06:56 +03:00
Davin McCall
95f07d80a7 Add a test for an issue which I believe is caused by failure to identify
an asynchronous method.

Unfortunately I am unable to actually produce a failing test; instead an
exception message is generated during test execution. This seems to be an
issue with the test runner mechanism.
2017-02-25 19:06:56 +03:00
Davin McCall
651532c203 Add test for asynchronous class initialisation from asynchronous constructor.
(cherry picked from commit 34961e4)
2017-02-22 23:10:07 +03:00
Alexey Andreev
891e3b8ea9 Don't generate call to <clinit> on each static method during AST rendering. Instead, extract from WASM transformation that adds InitClassInstruction to beginning of each method and reuse in in JS. This fixes some issues in async methods, without making AST renderer much more complicated. 2017-02-22 23:05:58 +03:00
Alexey Andreev
323911ffc9 Add kotlinc.xml to ignore list, since new Kotlin plugin generates this file 2017-02-22 23:03:19 +03:00
Alexey Andreev
e701cf90b0 Fix script that updates IDEA plugin repository. Update readme 2017-02-19 16:59:46 +03:00
Alexey Andreev
7d876668c5 Rename org.ow2.asm to org.teavm.asm in class loader during JPS build. Fix IDEA plugin deployment in travis 2017-02-18 23:50:31 +03:00
Alexey Andreev
b3f52409a7 Fix build 2017-02-18 20:35:04 +03:00
Alexey Andreev
0900f82585 Fix build 2017-02-18 20:26:02 +03:00
Alexey Andreev
036a805837 Add IDEA plugin build to travis config 2017-02-18 20:18:17 +03:00
Alexey Andreev
b4e88988f6 Build IDEA plugin via Maven 2017-02-18 16:57:52 +03:00
Alexey Andreev
4a5a502b62 Fix deployment to bintray 2017-02-16 22:55:30 +03:00
Alexey Andreev
1ea69b7d17 Trying to fix flaky test 2017-02-16 22:33:18 +03:00
Alexey Andreev
60f8633acb Build preview branches in Travis. Publish to bintray only from these branches 2017-02-16 22:25:14 +03:00
Alexey Andreev
5a8c3a9dae Replace build version suffix with 'dev' 2017-02-16 22:20:49 +03:00
Alexey Andreev
a3d13bc8c5 Skip Download(ing): prefix when calculating project version 2017-02-16 22:14:00 +03:00
Alexey Andreev
6817a7465d Pad build number with zeros. Log version number 2017-02-16 22:09:10 +03:00
Alexey Andreev
5958a6d04c Fix getting current version in travis build 2017-02-16 22:03:00 +03:00
Alexey Andreev
55453c9311 Set version to 0.5.0-SNAPSHOT. Add configuration to deploy to bintray. Update version number during Travis build. 2017-02-16 21:48:13 +03:00
Alexey Andreev
7b6013992c Embed metaprogramming implementation into uberjar for IDEA plugin 2017-02-15 22:49:22 +03:00
Alexey Andreev
d5dd608961 Fix ${project.version} in maven archetype. Add default value for optimizationLevel 2017-02-15 22:48:51 +03:00
Alexey Andreev
89f835540b Add unused variable elimination to standard optimization levels 2017-02-15 22:16:14 +03:00
Alexey Andreev
6c6e7c0d4d Fix build in travis. Seems they have old and buggy javac 2017-02-15 21:12:13 +03:00
Alexey Andreev
16c467f8e2 Merge pull request #244 from davmac314/cli-classaliases
Add a CLI option to set class aliases.
2017-02-15 21:08:13 +03:00
Alexey Andreev
c0a6b8dee8 Merge pull request #243 from davmac314/gaussian
Add implementation of Random.nextGaussian().
2017-02-15 21:06:07 +03:00
Davin McCall
d4b11e9817 Add a CLI option to set class aliases.
This adds the "--classalias" option which allows specifying a target
alias for a fully qualified class. The format is:

  --classalias fully.qualified.Name:TargetAlias
2017-02-14 00:06:59 +00:00