Ivan Hetman
4b6c4bd3d3
classlib: fix issues in EnumSet and EnumMap ( #834 )
2023-10-26 09:04:26 +03:00
Alexey Andreev
02b3c92912
JS: use native string to represent internals of java.lang.String
2023-10-21 19:30:16 +02:00
Ivan Hetman
9242aeb750
classlib: Arrays corner cases fixes ( #825 )
2023-10-16 20:40:50 +03:00
Ivan Hetman
658ef711ab
classlib: additional stream collectors ( #822 )
2023-10-16 14:09:56 +02:00
Ivan Hetman
1900852cd8
classlib: fix for positioned addAll in sequential lists ( #824 )
2023-10-16 13:41:15 +02:00
Alexey Andreev
5bc398415d
classlib: implement Atomic*FieldUpdater classes
...
Fix #750
2023-10-15 19:51:44 +02:00
Ivan Hetman
82cd9d9cdf
classlib: fix various issues in TreeMap ( #813 )
2023-10-13 22:01:40 +03:00
Ivan Hetman
6faecc91d2
classlib: more overrides for TreeMap keySet ( #818 )
2023-10-13 20:57:32 +03:00
Ludovic Dubost
4a81615749
class: fix LinkedList.offer method adding item incorrectly at the beginning
...
Fix #772
2023-10-13 19:52:47 +02:00
Alexey Andreev
772dd9eded
JS: fix returning JSO objects from Async methods
...
Fix #805
2023-10-12 21:13:09 +02:00
Ivan Hetman
bcc2c0ff35
classlib: implement last part of JEP-431 ( #810 )
...
TreeMap, TreeSet
2023-10-09 22:26:42 +03:00
Alexey Andreev
05454380d9
classlib: fix issue in TreeMap iterator remove method
2023-10-09 20:35:54 +02:00
Alexey Andreev
3971563cd8
Don't keep default test settings in gradle.properties
2023-10-08 20:20:10 +02:00
Alexey Andreev
f6a16c1b94
Suppress failing WASI tests, enable running WASI tests by default
2023-10-08 19:23:34 +02:00
Ivan Hetman
d47fea0b55
classlib: implement third part of JEP-431 ( #771 )
...
SequencedSet -> LinkedHashSet, SequencedMap -> LinkedHashMap
2023-10-08 18:05:11 +03:00
Ivan Hetman
2d91f539c7
classlib: fix corner case for Character.forDigit ( #769 )
2023-10-08 12:48:59 +03:00
Alexey Andreev
3d65d38375
Massive refactoring around Wasm support
...
1. Get rid of old exception handling IR transformer in favor of generation of EH code inside BE
2. Get rid of no-setjmp/longjmp support in C BE
3. Fix various bugs in WebAssembly BE
4. Suppress remaining failing tests for Wasm
5. Enable running Wasm tests by default
2023-10-08 10:36:03 +02:00
Alexey Andreev
0c0fb1a02b
Fix running C tests
2023-10-06 10:55:08 +02:00
Ivan Hetman
fe1a169d9b
classlib: fix delete and replace for AbstractStringBuilder ( #783 )
2023-10-05 13:27:15 +02:00
Alexey Andreev
7ff56d7a94
wasm: suppress some failing tests
2023-10-02 14:18:25 +02:00
Alexey Andreev
1c56036171
Suppress tests that are failing on C backend
2023-10-02 08:30:52 +02:00
Alexey Andreev
d850780d94
Update test annotations
2023-10-01 21:37:23 +02:00
Alexey Andreev
47973face1
Simplify test runner, remove parallel run, remove HtmlUnit runner, fix Wasm tests
2023-09-29 21:11:23 +02:00
ihromant
56ff3fbdd8
classlib: fix Math min/max functions
2023-09-28 17:02:18 +02:00
Ivan Hetman
5dec78b590
classlib: support SwitchBootstraps ( #764 )
...
Java 21 supports switch pattern matching (as well as few earlier Java version as an experimental feature). Javac produces code with INVOKEDYNAMIC that relies on bootstrap methods from `java.lang.runtime.SwitchBootstraps`. This commit is intended to support for new Java language feature
2023-09-28 15:04:07 +02:00
Ivan Hetman
0ef08a01e7
classlib: inheritDeque from SequencedCollection, fix ArrayDeque ( #765 )
...
Second part of JEP-431
2023-09-28 14:35:41 +02:00
Alexey Andreev
eed44998f0
jso: trying to improve optimization of JSWrapper
2023-09-27 13:50:30 +02:00
Alexey Andreev
b7cf7b593c
wasm: when building tests, resolve absolute paths to source files in DWARF
2023-09-26 23:02:16 +02:00
Alexey Andreev
46790d11db
Satisfy checkstyle after recent PR
2023-09-25 20:25:49 +02:00
Ivan Hetman
603d7f1f88
classlib: distinguish between +0 and -0 in double stringifier, improve copySign implementation
2023-09-25 15:56:43 +02:00
Alexey Andreev
e383b94e1b
classlib: fix implementations of SequencedCollection methods in ArrayList
2023-09-25 15:23:18 +02:00
Ivan Hetman
55426b25cf
classlib: add SequencedCollection interface, inherited List from it ( #759 )
...
(initial part of JEP-431)
2023-09-25 14:50:00 +02:00
Alexey Andreev
57ca715195
Bump test JDK version to 21
2023-09-25 11:38:36 +02:00
Alexey Andreev
fa2e003dd6
classlib: fix crash in WeakReference constructor
...
It occurred when ReferenceQueue.remove method was never used
Fix #756
2023-09-24 13:47:15 +02:00
Jonathan Coates
e02f91b0fd
classlib: add Java 9's Arrays.equals and Arrays.mismatch ( #755 )
2023-09-23 13:01:26 +03:00
Ivan Hetman
7589eb23fc
classlib: remove deprecated constructors of primitive wrappers ( #754 )
2023-09-21 16:05:18 +02:00
Alexey Andreev
94e34188c3
Satisfy checkstyle after last merged PR
2023-09-21 16:04:43 +02:00
Ivan Hetman
887528531f
classlib: fix for hashcode implementation in various classes, add other minor fixes/improvements ( #752 )
2023-09-21 15:30:41 +02:00
Ivan Hetman
e13746a650
classlib: fix reverse bytes methods in primitive wrappers ( #753 )
2023-09-21 13:58:03 +02:00
Alexey Andreev
ba7dcd13b5
Update gradle scripts for latest gradle version
...
1. Use lazy property assignment
2. Remove usages of deprecated buildDir property
2023-09-21 09:52:29 +02:00
Alexey Andreev
010bb721f2
Fix build
2023-09-20 22:58:32 +02:00
Ivan Hetman
8277671376
classlib: make difference between raw and normal floating points to int conversion
2023-09-20 23:51:55 +03:00
Alexey Andreev
3b6b31ff8f
Implement more precise comparison logic
2023-09-20 21:30:56 +02:00
Alexey Andreev
866fdb8af8
Update tests after testing with Java 21
2023-09-20 20:26:34 +02:00
Ivan Hetman
154bf7abd9
classlib: more fixes to Math.nextUp/nextDown ( #746 )
2023-09-19 13:21:32 +02:00
Alexey Andreev
617ce67871
classlib: follow-up for math fixes
2023-09-19 11:34:51 +02:00
Alexey Andreev
409292159e
C: fix running tests
2023-09-19 11:34:50 +02:00
Ivan Hetman
93d1a5e492
classlib: float/double equals fixes ( #741 )
2023-09-19 11:34:29 +02:00
Ivan Hetman
0997a65596
classlib: math fixes ( #742 )
2023-09-19 09:52:10 +02:00
Ivan Hetman
4a081db1c3
classlib: update RandomGenerator implementation ( #743 )
2023-09-19 09:39:57 +02:00
Alexey Andreev
e2ee9f1dbb
classlib: improve precision of float/double parsing and formatting
2023-09-13 19:40:00 +02:00
Alexey Andreev
83ace9bf3e
classlib: fix ByteBuffer.putLong implementation
...
Fix #737
2023-09-05 09:26:22 +02:00
Alexey Andreev
d655f01d14
Fix issue in build script for tests module
2023-08-28 14:11:01 +02:00
Alexey Andreev
f64a715418
Ignore failing test
2023-08-22 20:00:13 +02:00
Alexey Andreev
dec1bf02e2
Ignore failing test
2023-08-22 19:16:41 +02:00
Alexey Andreev
d7cae4af55
Fix running tests in wasm
2023-08-22 17:02:33 +02:00
Alexey Andreev
9ecb3ad817
classlib: support ReferenceQueue.remove
2023-08-21 20:13:06 +02:00
Alexey Andreev
a3f0ec52d4
classlib: support putFloat/getFloat/putDouble/getDouble in ByteBuffer
2023-08-17 11:59:48 +02:00
Alexey Andreev
22864c88f2
js: support WeakReference
2023-08-10 20:47:01 +02:00
Alexey Andreev
cd38447057
classlib: make Reader class implement Readable interface
2023-08-10 19:24:49 +02:00
Alexey Andreev
b9f5e9be1c
JS: optimize case when JS method returns java.lang.Object and then treated as JS object
2023-08-04 20:40:57 +02:00
Alexey Andreev
334e2829b3
JS: supports module imports in JSBody
2023-08-03 15:42:15 +02:00
Alexey Andreev
a1ed797d73
JS: allow passing Object to JS methods
2023-07-31 20:42:09 +02:00
Alexey Andreev
03cd5907eb
Fix minor typo in test
2023-07-31 10:10:21 +02:00
Alexey Andreev
c4c6b029e3
JS: add support for exporting Java methods as JS properties
2023-07-30 20:48:43 +02:00
Alexey Andreev
948244cbf4
JS: marshall JS object to Java in a wrapper
2023-07-29 18:54:23 +02:00
Alexey Andreev
b11ad994fd
classlib: support more methods in InputStream
2023-07-19 19:22:17 +02:00
Ivan Hetman
61ef007672
classlib: add Stream dropWhile and takeWhile
2023-07-05 19:44:10 +02:00
Ivan Hetman
ac2e5d6fa0
classlib: added Stream iterate method ( #721 )
2023-07-05 19:40:08 +02:00
Alexey Andreev
eed42e33b0
classlib: implement ConcurrentHashMap
2023-07-05 19:38:37 +02:00
Ivan Hetman
8e676ff16c
classlib: add mapMulti to Stream ( #720 )
2023-07-03 20:35:36 +03:00
Ivan Hetman
23a6393267
classlib: collectors partitioning by ( #716 )
2023-06-21 15:35:37 +02:00
Kirill Prazdnikov
81124a084b
classlib: fix ByteBuffer,CharBuffer,*Buffer IOOB exception throw with zero length arrays in arguments
...
fix #713
2023-06-21 15:30:30 +02:00
Jasper Siepkes
efe15e323b
classlib: add not method to Predicate interface ( #709 )
...
With this addition the Predicate interface is 100% complete for Java 17.
2023-06-07 12:57:22 +02:00
Alexey Andreev
cb67595f5b
Fix checkstyle errors
2023-06-07 10:51:47 +02:00
Ivan Hetman
8b9d39dbb8
classlib: additional collectors for streams
2023-06-07 10:18:37 +02:00
Jasper Siepkes
a409763f76
classlib: add the copyOf method to List, Set and Map interfaces ( #708 )
...
The copyOf static method was added in Java 10 to the List, Set and Map interfaces. Since no additions were made since Java 10 this commit brings the List, Set and Map interfaces to 100% completion for the latest LTS (Java 17) at the time of writing.
2023-06-07 10:13:20 +02:00
Ivan Hetman
d209a5f02e
classlib: add Collectors.reducing ( #704 )
2023-06-06 11:08:15 +02:00
Jasper Siepkes
7104edb592
classlib: add stripLeading and stripTrailing methods to String class ( #707 )
...
The stripLeading and stripTrailing methods were added in Java 11 to the String class.
Based on the implementation of the existing strip method in TeaVM this commit adds the stripLeading() and stripTrailing() methods (and tests) to the String class in the class library.
2023-06-06 10:09:25 +02:00
Ivan Hetman
ac8cb377c3
classlib: improve and fix Integer/Long long bit operations
2023-05-16 11:08:05 +02:00
Alexey Andreev
73d2379185
classlib: add Integer/Long parse subsequence
2023-05-16 10:37:38 +02:00
Alexey Andreev
81f78fab01
classlib: add String.strip
2023-05-16 10:12:36 +02:00
Ivan Hetman
697ad73762
classlib: add Collectors grouping by
2023-05-16 09:57:13 +02:00
Alexey Andreev
c39efdc6d7
classlib: fix issue with integer unsigned right shift
2023-05-16 09:56:24 +02:00
Alexey Andreev
9f349385ec
classlib: fix issue in BitSet.set
2023-04-26 16:25:25 +02:00
Ivan Hetman
25890adcf8
Add record class name to toString implementation ( #691 )
2023-04-21 12:57:51 +02:00
Ivan Hetman
fcb750675c
Fix NPE in record.equals(null) ( #688 )
2023-04-11 09:30:21 +02:00
Alexey Andreev
246498763d
classlib: fix more bugs in int-to-string conversion
2023-04-03 17:18:59 +02:00
Ivan Hetman
a1074918cf
classlib: fix issues related to ArrayList, Arrays and Comparator
2023-04-03 10:07:28 +02:00
Alexey Andreev
c5572bc573
classlib: fix stringifying min integer and min long. Refactor tests
2023-04-03 09:39:31 +02:00
Ivan Hetman
ffe3f34731
classlib: add BitSet stream API ( #674 )
2023-03-15 11:09:49 +01:00
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
8800e7153b
Don't use Gradle toolchains to specify Java version
2023-02-01 18:41:17 +01: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
70e37dfed9
Wasi: fix bugs in IO implementation
2022-11-12 21:52:29 +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
485f8ac902
Wasi: fix file system issues, add support for Math.pow
2022-11-10 17:08:58 +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
5dad6d7654
Update surefire configuration for parallel execution
2021-10-14 11:32: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
81bfe3f6e2
Improve pom.xml configuration
2021-03-18 11:16:41 +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