Skip to content

Commit 0ffc14f

Browse files
committed
Update README and documentation, bump dataframe version
Reorganized README, moving version compatibility table and adding more links in the documentation section. Updated documentation for `readSqlDatabases.md`, including a note about the database support limitations. Updated dataframe version in `libs.versions.toml` from `0.12.0` to `0.12.1`. Edited phrasing in `RELEASE_CHECK_LIST.md` and `overview.md`.
1 parent 0475a49 commit 0ffc14f

File tree

5 files changed

+41
-21
lines changed

5 files changed

+41
-21
lines changed

README.md

Lines changed: 27 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,21 @@ Kotlin Dataframe aims to reconcile Kotlin's static typing with the dynamic natur
2020

2121
Integrates with [Kotlin kernel for Jupyter](https://github.com/Kotlin/kotlin-jupyter). Inspired by [krangl](https://github.com/holgerbrandl/krangl), Kotlin Collections and [pandas](https://pandas.pydata.org/)
2222

23+
## Documentation
24+
2325
Explore [**documentation**](https://kotlin.github.io/dataframe/overview.html) for details.
2426

27+
You could find the following articles there:
28+
29+
* [Get started with Kotlin DataFrame](https://kotlin.github.io/dataframe/gettingstarted.html)
30+
* [Working with Data Schemas](https://kotlin.github.io/dataframe/schemas.html)
31+
* [Full list of all supported operations](https://kotlin.github.io/dataframe/operations.html)
32+
* [Reading from SQL databases](https://kotlin.github.io/dataframe/readsqldatabases.html)
33+
* [Reading/writing from/to different file formats like JSON, CSV, Apache Arrow](https://kotlin.github.io/dataframe/read.html)
34+
* [Joining a few dataframes](https://kotlin.github.io/dataframe/join.html)
35+
* [GroupBy operation](https://kotlin.github.io/dataframe/groupby.html)
36+
* [Rendering to HTML](https://kotlin.github.io/dataframe/tohtml.html#jupyter-notebooks)
37+
2538
## Setup
2639

2740
### Gradle for JVM
@@ -180,20 +193,6 @@ or specific version:
180193
* `ColumnGroup` — contains columns
181194
* `FrameColumn` — contains dataframes
182195

183-
184-
## Kotlin, Kotlin Jupyter, OpenAPI, Arrow and JDK versions
185-
186-
This table shows the mapping between main library component versions and minimum supported Java versions.
187-
188-
| Kotlin DataFrame Version | Minimum Java Version | Kotlin Version | Kotlin Jupyter Version | OpenAPI version | Apache Arrow version |
189-
|--------------------------|----------------------|----------------|------------------------|-----------------|----------------------|
190-
| 0.10.0 | 8 | 1.8.20 | 0.11.0-358 | 3.0.0 | 11.0.0 |
191-
| 0.10.1 | 8 | 1.8.20 | 0.11.0-358 | 3.0.0 | 11.0.0 |
192-
| 0.11.0 | 8 | 1.8.20 | 0.11.0-358 | 3.0.0 | 11.0.0 |
193-
| 0.11.1 | 8 | 1.8.20 | 0.11.0-358 | 3.0.0 | 11.0.0 |
194-
| 0.12.0 | 8 | 1.9.0 | 0.11.0-358 | 3.0.0 | 11.0.0 |
195-
| 0.12.1 | 8 | 1.9.0 | 0.11.0-358 | 3.0.0 | 11.0.0 |
196-
197196
## Usage example
198197

199198
**Create:**
@@ -272,6 +271,20 @@ clean
272271

273272
[Try it in **Datalore**](https://datalore.jetbrains.com/view/notebook/vq5j45KWkYiSQnACA2Ymij) and explore [**more examples here**](examples).
274273

274+
## Kotlin, Kotlin Jupyter, OpenAPI, Arrow and JDK versions
275+
276+
This table shows the mapping between main library component versions and minimum supported Java versions.
277+
278+
| Kotlin DataFrame Version | Minimum Java Version | Kotlin Version | Kotlin Jupyter Version | OpenAPI version | Apache Arrow version |
279+
|--------------------------|----------------------|----------------|------------------------|-----------------|----------------------|
280+
| 0.10.0 | 8 | 1.8.20 | 0.11.0-358 | 3.0.0 | 11.0.0 |
281+
| 0.10.1 | 8 | 1.8.20 | 0.11.0-358 | 3.0.0 | 11.0.0 |
282+
| 0.11.0 | 8 | 1.8.20 | 0.11.0-358 | 3.0.0 | 11.0.0 |
283+
| 0.11.1 | 8 | 1.8.20 | 0.11.0-358 | 3.0.0 | 11.0.0 |
284+
| 0.12.0 | 8 | 1.9.0 | 0.11.0-358 | 3.0.0 | 11.0.0 |
285+
| 0.12.1 | 8 | 1.9.0 | 0.11.0-358 | 3.0.0 | 11.0.0 |
286+
287+
275288
## Code of Conduct
276289

277290
This project and the corresponding community are governed by the [JetBrains Open Source and Community Code of Conduct](https://confluence.jetbrains.com/display/ALL/JetBrains+Open+Source+and+Community+Code+of+Conduct). Please make sure you read it.

RELEASE_CHECK_LIST.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,4 +33,4 @@
3333
- `Level.WARNING` messages are changed to `Level.ERROR`
3434
- `Level.ERROR` messages and their functions are removed.
3535
- Update regions in the file accordingly.
36-
20. Update Notebook examples, both in the project as well as on Datalore.
36+
20. Update Notebook examples, both in the project and on Datalore.

docs/StardustDocs/topics/overview.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,8 @@ The goal of data wrangling is to assure quality and useful data.
2020

2121
## Main Features and Concepts
2222

23-
* [**Hierarchical**](hierarchical.md) — the Kotlin DataFrame library provides an ability to read and present data from different sources including not only plain **CSV** but also **JSON**. That’s why it has been designed hierarchical and allows nesting of columns and cells.
23+
* [**Hierarchical**](hierarchical.md) — the Kotlin DataFrame library provides an ability to read and present data from different sources including not only plain **CSV** but also **JSON** or **[SQL databases](readSqlDatabases.md)**.
24+
That’s why it has been designed hierarchical and allows nesting of columns and cells.
2425

2526
* [**Interoperable**](collectionsInterop.md) — hierarchical data layout also opens a possibility of converting any objects
2627
structure in application memory to a data frame and vice versa.

docs/StardustDocs/topics/readSqlDatabases.md

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,12 @@ There are two main blocks of available functionality:
1414
* ```getSchemaForResultSet``` for rows reading through the given ResultSet
1515
* ```getSchemaForAllSqlTables``` for all non-system tables
1616

17+
**NOTE:** This is an experimental module and for now,
18+
we only support four databases: MariaDB, MySQL, PostgreSQL, and SQLite.
19+
20+
Additionally, support for JSON and date-time types is limited.
21+
Please take this into consideration when using these functions.
22+
1723

1824
## Getting started with reading from SQL database
1925

@@ -28,25 +34,25 @@ after that, you need to add a dependency for a JDBC driver for the used database
2834
For MariaDB:
2935

3036
```kotlin
31-
implementation("org.mariadb.jdbc:mariadb-java-client:3.1.4")
37+
implementation("org.mariadb.jdbc:mariadb-java-client:$version")
3238
```
3339

3440
For PostgreSQL:
3541

3642
```kotlin
37-
implementation("org.postgresql:postgresql:42.6.0")
43+
implementation("org.postgresql:postgresql:$version")
3844
```
3945

4046
For MySQL:
4147

4248
```kotlin
43-
implementation("mysql:mysql-connector-java:8.0.33")
49+
implementation("mysql:mysql-connector-java:$version")
4450
```
4551

4652
For SQLite:
4753

4854
```kotlin
49-
implementation("org.xerial:sqlite-jdbc:3.42.0.1")
55+
implementation("org.xerial:sqlite-jdbc:$version")
5056
```
5157

5258
In the second, be sure that you can establish a connection to the database.

gradle/libs.versions.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ dokka = "1.8.10"
77
libsPublisher = "0.0.60-dev-30"
88
# "Bootstrap" version of the dataframe, used in the build itself to generate @DataSchema APIs,
99
# dogfood Gradle / KSP plugins in tests and idea-examples modules
10-
dataframe = "0.12.0"
10+
dataframe = "0.12.1"
1111
korro = "0.1.5"
1212
kover = "0.6.0-Beta"
1313

0 commit comments

Comments
 (0)