Commit 5496ff6
feat: add
## New Features
### `elide adopt maven` Command
- Add Maven pom.xml to Elide build.pkl conversion tool
- Implement PomParser for XML parsing and dependency extraction
- Implement PklGenerator for generating build.pkl output
- Support dependency conversion with scope and exclusions
- Support property interpolation and parent POM resolution
## GraalVM Native Image Build Fixes
Successfully resolved native compilation issues with GraalVM 25.0.1:
### Problem
Previous builds failed after 2h+ due to BouncyCastle elliptic curve
compilation timeout (768.8s for `SecT113R1Point.add(ECPoint)`, exceeding
300s per-method limit).
### Solution Evolution
1. **Attempt**: Double per-method timeout
- **Failed**: `-H:MaximumCompilationTimePerMethod` doesn't exist in GraalVM 25
2. **Attempt**: Mark BouncyCastle for runtime init
- **Failed**: Heap initialization conflict - Micronaut's SSL provider
creates BouncyCastle objects at build time
3. **SUCCESS**: Mark SSL/PKI consumers for runtime init
- Defer `io.micronaut.http.ssl.SelfSignedCertificateProvider` to runtime
- Defer `io.netty.pkitesting` to runtime
- Avoids BouncyCastle compilation timeout without heap conflicts
### Build Configuration Optimizations
- Set 64GB max heap memory (`-J-Xmx64g`)
- Use dynamic parallelism (50% of available processors = 4 threads)
- Increase watchdog timeout to 60s (`-H:DeadlockWatchdogInterval=60`)
- Reduce ForkJoinPool parallelism to 4
### Build Results
- **Status**: BUILD SUCCESSFUL in 1h 41m 21s
- **Binary size**: 898MB
- **Peak memory**: 26.98GB
- **Verified**: `elide --version` and `elide adopt --help` working correctly
## Other Changes
- Update Gradle wrapper to 9.0.0-rc-2
- Remove lockfiles for more flexible dependency resolution
- Update runtime submodule
🤖 Generated with [Claude Code](https://claude.com/claude-code)
Co-Authored-By: Claude <[email protected]>elide adopt maven command and fix GraalVM native build1 parent 82a3f0c commit 5496ff6
File tree
49 files changed
+5825
-205
lines changed- gradle/wrapper
- packages
- cli
- src/main/kotlin/elide/tool/cli
- cmd/adopt
- .dev/dependencies
- m2/org/graalvm
- polyglot/polyglot/24.2.0
- sdk
- collections/24.2.0
- graal-sdk/24.2.0
- nativeimage/24.2.0
- word/24.2.0
- npm
- exec/src/main/kotlin/elide/exec
- graalvm-js/src/main/resources/META-INF/native-image/dev.elide/elide-graalvm-js
- tools
- elide-build
Some content is hidden
Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
49 files changed
+5825
-205
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
| 3 | + | |
3 | 4 | | |
4 | 5 | | |
5 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
79 | 79 | | |
80 | 80 | | |
81 | 81 | | |
82 | | - | |
| 82 | + | |
83 | 83 | | |
84 | 84 | | |
85 | 85 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | | - | |
| 3 | + | |
4 | 4 | | |
5 | 5 | | |
6 | 6 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
772 | 772 | | |
773 | 773 | | |
774 | 774 | | |
775 | | - | |
776 | | - | |
777 | | - | |
778 | | - | |
779 | | - | |
780 | | - | |
781 | | - | |
782 | | - | |
783 | 775 | | |
784 | 776 | | |
785 | 777 | | |
| |||
4318 | 4310 | | |
4319 | 4311 | | |
4320 | 4312 | | |
4321 | | - | |
4322 | | - | |
4323 | | - | |
4324 | | - | |
4325 | | - | |
4326 | 4313 | | |
4327 | 4314 | | |
4328 | 4315 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
954 | 954 | | |
955 | 955 | | |
956 | 956 | | |
957 | | - | |
958 | | - | |
959 | 957 | | |
960 | 958 | | |
961 | 959 | | |
| |||
1374 | 1372 | | |
1375 | 1373 | | |
1376 | 1374 | | |
| 1375 | + | |
| 1376 | + | |
| 1377 | + | |
| 1378 | + | |
| 1379 | + | |
| 1380 | + | |
| 1381 | + | |
| 1382 | + | |
| 1383 | + | |
| 1384 | + | |
| 1385 | + | |
| 1386 | + | |
| 1387 | + | |
| 1388 | + | |
| 1389 | + | |
| 1390 | + | |
1377 | 1391 | | |
1378 | 1392 | | |
1379 | 1393 | | |
1380 | 1394 | | |
| 1395 | + | |
| 1396 | + | |
| 1397 | + | |
| 1398 | + | |
| 1399 | + | |
| 1400 | + | |
| 1401 | + | |
| 1402 | + | |
| 1403 | + | |
| 1404 | + | |
| 1405 | + | |
| 1406 | + | |
| 1407 | + | |
| 1408 | + | |
| 1409 | + | |
1381 | 1410 | | |
1382 | 1411 | | |
1383 | 1412 | | |
| |||
1461 | 1490 | | |
1462 | 1491 | | |
1463 | 1492 | | |
1464 | | - | |
| 1493 | + | |
1465 | 1494 | | |
1466 | 1495 | | |
1467 | 1496 | | |
| |||
1809 | 1838 | | |
1810 | 1839 | | |
1811 | 1840 | | |
1812 | | - | |
| 1841 | + | |
| 1842 | + | |
| 1843 | + | |
| 1844 | + | |
| 1845 | + | |
1813 | 1846 | | |
1814 | 1847 | | |
1815 | 1848 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
43 | 43 | | |
44 | 44 | | |
45 | 45 | | |
| 46 | + | |
46 | 47 | | |
47 | 48 | | |
48 | 49 | | |
| |||
114 | 115 | | |
115 | 116 | | |
116 | 117 | | |
| 118 | + | |
117 | 119 | | |
118 | 120 | | |
119 | 121 | | |
| |||
Lines changed: 4 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
Lines changed: 1 addition & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
Lines changed: 41 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
0 commit comments