A CQL Language server compatible with the Language Server Protocol.
Building this project requires Java 9+ and Maven 3.5+. The resulting jar is compatible with Java 8+.
Build the project with:
mvn packageThe language server itself is designed to be used by IDE plugins, such as the CQL Support for VS Code package.
Bugs and feature requests can be filed with Github Issues.
The implementers are active on the official FHIR Zulip chat for CQL.
Inquires for commercial support can be directed to [email protected].
Clinical Quality Language - Tooling in support of the CQL specification, including the CQL verifier/translator and engine used in this project.
Clinical Reasoning - Provides for complete evaluation of CQL logic, as well as implementations of operations defined by the FHIR Clinical Reasoning module and related FHIR IGs.
VSCode Plugin - Makes use of this CQL Language Server to provide CQL language capabilities for the VSCode environment.
All new development takes place on <feature> branches off master. Once feature development on the branch is complete, the feature branch is submitted to master as a PR. The PR is reviewed by maintainers and regression testing by the CI build occurs.
Changes to the master branch must be done through an approved PR. Delete branches after merging to keep the repository clean.
Merges to master trigger a deployment to the Maven Snapshots repositories.
Once ready for a release, the master branch is updated with the correct version number and is tagged. Releases SHALL NOT have a SNAPSHOT version, nor any SNAPSHOT dependencies. Releases must be deployed manually.
To release a new version of the language server:
- Update master to be a release version (and all the reviews, bug fixes, etc. that that requires)
- Example version:
3.8.0
- Example version:
- Passed CI Build = ready for release
- Use the following command to release from your local build (releases are not automatic)
mvn deploy -DskipTests=true -Dmaven.test.skip=true -T 4 -B -P release
- Create a Github Release (specify a tag of
vX.X.X(e.g.v3.8.0) pointing at master to be created on release)- Choose the "Auto-generate release notes" option
- Provide any additional detail/cleanup on the release notes
- Update master version to the next snapshot version
X.X.X-SNAPSHOT(e.g.3.9.0-SNAPSHOT) - Close all issues included in the release
Copyright 2019+ Smile Digital Health
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.