Skip to content

Convert cql-to-elm to Kotlin Multiplatform. Compile cql-to-elm to JVM and JavaScript. Beta version of the CQL Compiler for JavaScript.#1462

Merged
antvaset merged 153 commits intomasterfrom
feature-kotlin
Sep 24, 2025
Merged

Convert cql-to-elm to Kotlin Multiplatform. Compile cql-to-elm to JVM and JavaScript. Beta version of the CQL Compiler for JavaScript.#1462
antvaset merged 153 commits intomasterfrom
feature-kotlin

Conversation

@JPercival
Copy link
Copy Markdown
Contributor

@JPercival JPercival commented Dec 4, 2024

What's included:

  • The cql-to-elm project (CQL compiler) and its dependencies are converted to Kotlin Multiplatform.
  • The CQL compiler is compiled to JavaScript.
  • Tests and demo app for the above.
  • Existing tests remain in Java to make sure the compiler still works on existing platforms.

See also https://github.com/cqframework/clinical_quality_language/wiki/v3-to-v4-Migration.

JPercival and others added 30 commits September 16, 2024 15:31
* Try out jsRun

* Compile Kotlin to JS with type definitions. Export parseToTree method.
* WIP

* WIP

* WIP

* Working?

* Fix usage of Java 17 API

* Update checkstyle rules

* Fix static analysis

* Updates to src dirs

* Fixing up missing test sourceSet

* Try another way to specify the antlr directory

* Third different way

* Add some logging

* merge master

* Change toolchain resolution

* Fix tests

* More tweaks to animalsniffer

* Fix formatting

* Trying random stuff

* More random stuff

* Small improvements for Gradle build (#1418)

* Removing references to idea

* Fix duplicative generation

* Remove references to idea project generation

---------

Co-authored-by: Anton Vasetenkov <antvaset@gmail.com>
* small cleanup

* fix the jvm toolchain version

---------

Co-authored-by: Anton Vasetenkov <antvaset@gmail.com>
@sonarqubecloud
Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
1 Security Hotspot
1.3% Coverage on New Code (required ≥ 80%)
C Reliability Rating on New Code (required ≥ A)

See analysis details on SonarQube Cloud

Catch issues before they fail your Quality Gate with our IDE extension SonarQube for IDE

Copy link
Copy Markdown
Member

@cmoesel cmoesel left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not able to review the hundreds of files again, but based on the quality of code from past reviews, successful integration into the CQL Translation Service, and some initial success regression testing a set of our CQL libraries with this, and assuming this has undergone internal code review, I'm comfortable approving.

Amazing work, @JPercival and @antvaset. This is so very cool!

@antvaset antvaset merged commit 43fed87 into master Sep 24, 2025
7 of 9 checks passed
@JPercival JPercival deleted the feature-kotlin branch October 2, 2025 16:40
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.

4 participants