Skip to content

Initial work on the new JavaScript port#4677

Draft
shai-almog wants to merge 24 commits intomasterfrom
javascript-port-initial-work
Draft

Initial work on the new JavaScript port#4677
shai-almog wants to merge 24 commits intomasterfrom
javascript-port-initial-work

Conversation

@shai-almog
Copy link
Copy Markdown
Collaborator

No description provided.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 31, 2026

✅ Continuous Quality Report

Test & Coverage

Static Analysis

Generated automatically by the PR CI workflow.

@shai-almog
Copy link
Copy Markdown
Collaborator Author

shai-almog commented Mar 31, 2026

Compared 34 screenshots: 34 matched.

Native Android coverage

  • 📊 Line coverage: 7.74% (3958/51114 lines covered) [HTML preview] (artifact android-coverage-report, jacocoAndroidReport/html/index.html)
    • Other counters: instruction 6.10% (19583/321140), branch 2.88% (899/31163), complexity 3.63% (1084/29826), method 6.40% (891/13913), class 10.51% (194/1846)
    • Lowest covered classes
      • kotlin.collections.kotlin.collections.ArraysKt___ArraysKt – 0.00% (0/6327 lines covered)
      • kotlin.collections.unsigned.kotlin.collections.unsigned.UArraysKt___UArraysKt – 0.00% (0/2384 lines covered)
      • org.jacoco.agent.rt.internal_b6258fc.asm.org.jacoco.agent.rt.internal_b6258fc.asm.ClassReader – 0.00% (0/1519 lines covered)
      • kotlin.collections.kotlin.collections.CollectionsKt___CollectionsKt – 0.00% (0/1148 lines covered)
      • org.jacoco.agent.rt.internal_b6258fc.asm.org.jacoco.agent.rt.internal_b6258fc.asm.MethodWriter – 0.00% (0/923 lines covered)
      • kotlin.sequences.kotlin.sequences.SequencesKt___SequencesKt – 0.00% (0/712 lines covered)
      • kotlin.text.kotlin.text.StringsKt___StringsKt – 0.00% (0/623 lines covered)
      • org.jacoco.agent.rt.internal_b6258fc.asm.org.jacoco.agent.rt.internal_b6258fc.asm.Frame – 0.00% (0/564 lines covered)
      • kotlin.collections.kotlin.collections.ArraysKt___ArraysJvmKt – 0.00% (0/495 lines covered)
      • kotlinx.coroutines.kotlinx.coroutines.JobSupport – 0.00% (0/423 lines covered)

✅ Native Android screenshot tests passed.

Native Android coverage

  • 📊 Line coverage: 7.74% (3958/51114 lines covered) [HTML preview] (artifact android-coverage-report, jacocoAndroidReport/html/index.html)
    • Other counters: instruction 6.10% (19583/321140), branch 2.88% (899/31163), complexity 3.63% (1084/29826), method 6.40% (891/13913), class 10.51% (194/1846)
    • Lowest covered classes
      • kotlin.collections.kotlin.collections.ArraysKt___ArraysKt – 0.00% (0/6327 lines covered)
      • kotlin.collections.unsigned.kotlin.collections.unsigned.UArraysKt___UArraysKt – 0.00% (0/2384 lines covered)
      • org.jacoco.agent.rt.internal_b6258fc.asm.org.jacoco.agent.rt.internal_b6258fc.asm.ClassReader – 0.00% (0/1519 lines covered)
      • kotlin.collections.kotlin.collections.CollectionsKt___CollectionsKt – 0.00% (0/1148 lines covered)
      • org.jacoco.agent.rt.internal_b6258fc.asm.org.jacoco.agent.rt.internal_b6258fc.asm.MethodWriter – 0.00% (0/923 lines covered)
      • kotlin.sequences.kotlin.sequences.SequencesKt___SequencesKt – 0.00% (0/712 lines covered)
      • kotlin.text.kotlin.text.StringsKt___StringsKt – 0.00% (0/623 lines covered)
      • org.jacoco.agent.rt.internal_b6258fc.asm.org.jacoco.agent.rt.internal_b6258fc.asm.Frame – 0.00% (0/564 lines covered)
      • kotlin.collections.kotlin.collections.ArraysKt___ArraysJvmKt – 0.00% (0/495 lines covered)
      • kotlinx.coroutines.kotlinx.coroutines.JobSupport – 0.00% (0/423 lines covered)

@shai-almog shai-almog force-pushed the javascript-port-initial-work branch from bfdfa3c to 771920d Compare March 31, 2026 04:08
@shai-almog
Copy link
Copy Markdown
Collaborator Author

shai-almog commented Mar 31, 2026

Compared 34 screenshots: 34 matched.
✅ Native iOS screenshot tests passed.

Benchmark Results

  • VM Translation Time: 0 seconds
  • Compilation Time: 179 seconds

Detailed Performance Metrics

Metric Duration
Simulator Boot 2000 ms
Simulator Boot (Run) 2000 ms
App Install 2000 ms
App Launch 5000 ms
Test Execution 151000 ms

@shai-almog shai-almog force-pushed the javascript-port-initial-work branch from 771920d to 7b7456c Compare March 31, 2026 14:20
@github-actions
Copy link
Copy Markdown

github-actions bot commented Mar 31, 2026

✅ ByteCodeTranslator Quality Report

Test & Coverage

  • Tests: 436 total, 0 failed, 2 skipped

Benchmark Results

  • Execution Time: 10086 ms

  • Hotspots (Top 20 sampled methods):

    • 30.37% java.util.ArrayList.indexOf (543 samples)
    • 21.70% java.lang.String.indexOf (388 samples)
    • 19.07% com.codename1.tools.translator.Parser.isMethodUsed (341 samples)
    • 4.19% java.lang.Object.hashCode (75 samples)
    • 2.80% java.lang.System.identityHashCode (50 samples)
    • 1.29% com.codename1.tools.translator.ByteCodeClass.markDependent (23 samples)
    • 1.12% com.codename1.tools.translator.ByteCodeClass.calcUsedByNative (20 samples)
    • 1.12% com.codename1.tools.translator.Parser.cullMethods (20 samples)
    • 1.01% java.lang.StringBuilder.append (18 samples)
    • 0.95% com.codename1.tools.translator.BytecodeMethod.optimize (17 samples)
    • 0.89% com.codename1.tools.translator.BytecodeMethod.isMethodUsedByNative (16 samples)
    • 0.84% com.codename1.tools.translator.BytecodeMethod.addToConstantPool (15 samples)
    • 0.73% com.codename1.tools.translator.Parser.generateClassAndMethodIndexHeader (13 samples)
    • 0.67% java.lang.StringCoding.encode (12 samples)
    • 0.62% com.codename1.tools.translator.ByteCodeClass.isDefaultInterfaceMethod (11 samples)
    • 0.56% com.codename1.tools.translator.BytecodeMethod.appendCMethodPrefix (10 samples)
    • 0.50% java.io.UnixFileSystem.getBooleanAttributes0 (9 samples)
    • 0.50% com.codename1.tools.translator.Parser.getClassByName (9 samples)
    • 0.45% com.codename1.tools.translator.Parser.writeOutput (8 samples)
    • 0.45% sun.nio.fs.UnixNativeDispatcher.open0 (8 samples)
  • ⚠️ Coverage report not generated.

Static Analysis

  • ✅ SpotBugs: no findings (report was not generated by the build).
  • ⚠️ PMD report not generated.
  • ⚠️ Checkstyle report not generated.

Generated automatically by the PR CI workflow.

@github-actions
Copy link
Copy Markdown

github-actions bot commented Apr 2, 2026

Cloudflare Preview

@shai-almog shai-almog force-pushed the javascript-port-initial-work branch 12 times, most recently from 00a257b to 3701252 Compare April 3, 2026 12:17
@shai-almog shai-almog force-pushed the javascript-port-initial-work branch from 3701252 to 8f402dc Compare April 3, 2026 16:52
@shai-almog shai-almog force-pushed the javascript-port-initial-work branch from d869903 to 7296f83 Compare April 4, 2026 07:37
@shai-almog shai-almog force-pushed the javascript-port-initial-work branch from 7296f83 to 392975a Compare April 4, 2026 08:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant