partiql-lang-kotlin
partiql-lang-kotlin copied to clipboard
PartiQL libraries and tools in Kotlin.
PartiQL Lang Kotlin
This is a Kotlin implementation of the PartiQL specification. PartiQL is based on SQL-92 and has added support for working with schemaless hierarchical data. PartiQL’s extensions to SQL are easy to understand, treat nested data as first class citizens and compose seamlessly with each other and SQL.
This repository contains an embeddable reference interpreter, test framework, and tests for PartiQL in Kotlin.
The easiest way to get started with PartiQL is to clone this repository locally, build, then run the REPL.
Status
Users of PartiQL should consider PartiQL to be in "preview" status. It has been leveraged within a number of Amazon internal systems and AWS products for over a year. The behavior of the language itself is mostly stable, however, the public API of the interpreter is slated to undergo significant improvements in the near term. (See the GitHub issues list for details.)
Using In Your Project
This project is published to Maven Central.
Group ID | Artifact ID | Recommended Version |
---|---|---|
org.partiql |
partiql-lang-kotlin |
0.7.0 |
For Maven builds, add the following to your pom.xml
:
<dependency>
<groupId>org.partiql</groupId>
<artifactId>partiql-lang-kotlin</artifactId>
<version>${version}</version>
</dependency>
For Gradle 5+, add the following to your build.gradle
:
repositories {
mavenCentral()
}
dependencies {
implementation "org.partiql:partiql-lang-kotlin:${version}"
}
Be sure to replace ${version}
with the desired version.
Building
To build this project, clone this repository and from its root directory execute:
./gradlew build
This will build the reference interpreter and test framework, then run all unit and integration tests.
Building the Documentation
Instructions on how to build PartiQL's documentation
Directory Structure
-
docs/user
documentation for developers embedding the interpreter in an application. -
docs/dev
documentation for developers of the interpreter library. -
lang
contains the source code of the library containing the interpreter. -
lang/jmh
contains the JMH benchmarks for PartiQL. -
cli
contains the source code of the command-line interface and interactive prompt. (CLI/REPL)
Running JMH Benchmarks
To run JMH benchmarks located in lang/jmh
, build the entire project first and then run
the following command:
./gradlew jmh
Examples
See the examples project in this repository for examples covering use of the PartiQL interpreter in your project.
Contributing
See CONTRIBUTING
License
The works contained within this repository are licensed under the Apache 2.0 License.
See the LICENSE file.