Skip to content

Commit 0b4355d

Browse files
Merge pull request #1339 from Kotlin/data_schemas_docs
Data schemas docs
2 parents 4d4a73f + fff408b commit 0b4355d

18 files changed

+410
-260
lines changed

docs/StardustDocs/d.tree

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -32,20 +32,19 @@
3232
<toc-element topic="hierarchical.md"/>
3333
<toc-element topic="nanAndNa.md"/>
3434
<toc-element topic="numberUnification.md"/>
35-
<toc-element topic="schemas.md">
35+
</toc-element>
36+
<toc-element topic="extensionPropertiesApi.md"/>
37+
<toc-element topic="schemas.md">
38+
<toc-element topic="DataSchemaGenerationMethods.md"/>
39+
<toc-element topic="schemasInheritance.md"/>
40+
<toc-element topic="Data-Schemas-In-Kotlin-Notebook.md"/>
41+
<toc-element topic="schemasImportOpenApiJupyter.md"/>
42+
<toc-element topic="Gradle-Plugin.md">
3643
<toc-element topic="schemasGradle.md"/>
37-
<toc-element topic="schemasJupyter.md"/>
38-
<toc-element topic="schemasInheritance.md"/>
39-
<toc-element topic="schemasCustom.md"/>
40-
<toc-element topic="schemasExternalJupyter.md"/>
4144
<toc-element topic="schemasImportSqlGradle.md"/>
4245
<toc-element topic="schemasImportOpenApiGradle.md"/>
43-
<toc-element topic="schemasImportOpenApiJupyter.md"/>
44-
<toc-element topic="DataSchemaGenerationGradle.md"/>
4546
</toc-element>
4647
</toc-element>
47-
<toc-element topic="extensionPropertiesApi.md"/>
48-
<toc-element topic="DataSchemaGenerationMethods.md"/>
4948
<toc-element topic="Compiler-Plugin.md">
5049
<toc-element topic="staticInterpretation.md"/>
5150
<toc-element topic="dataSchema.md"/>
@@ -194,4 +193,5 @@
194193
<toc-element topic="_shadow_resources.md" hidden="true"/>
195194
<toc-element topic="Support.md"/>
196195
<toc-element topic="FAQ.md"/>
196+
<toc-element topic="Migration-From-Plugins.md"/>
197197
</instance-profile>

docs/StardustDocs/topics/FAQ.md

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -174,15 +174,18 @@ and examples with beautiful [Kandy](https://kotlin.github.io/kandy) geo visualiz
174174

175175
> The current Gradle plugin is **under consideration for deprecation** and may be officially marked as deprecated
176176
> in future releases.
177-
> The KSP plugin doesn't work for now.
177+
>
178+
> The KSP plugin is **not compatible with [KSP2](https://github.com/google/ksp?tab=readme-ov-file#ksp2-is-here)**
179+
> and may **not work properly with Kotlin 2.1 or newer**.
178180
>
179181
> At the moment, **[data schema generation is handled via dedicated methods](DataSchemaGenerationMethods.md)** instead
180-
> of relying on the plugins.
182+
> of relying on the plugins.
183+
> See [](Migration-From-Plugins.md).
181184
{style="warning"}
182185

183186
All these plugins relate to working with [dataframe schemas](schemas.md), but they serve different purposes:
184187

185-
- **[Gradle Plugin](DataSchemaGenerationGradle.md)** and **[KSP Plugin](https://github.com/Kotlin/dataframe/tree/master/plugins/symbol-processor)**
188+
- **[Gradle Plugin](Gradle-Plugin.md)** and **[KSP Plugin](https://github.com/Kotlin/dataframe/tree/master/plugins/symbol-processor)**
186189
are used to **generate data schemas** from external sources as part of the Gradle build process.
187190

188191
- **Gradle Plugin**: You declare the data source in your `build.gradle.kts` file
@@ -193,12 +196,13 @@ All these plugins relate to working with [dataframe schemas](schemas.md), but th
193196

194197
See [Data Schemas in Gradle Projects](https://kotlin.github.io/dataframe/schemasgradle.html) for more.
195198

196-
- **[Compiler Plugin](Compiler-Plugin.md)**
197-
provides **on-the-fly generation** of [extension properties](extensionPropertiesApi.md)
198-
based on an existing schema **during compilation**.
199-
However, when reading data from files or external sources (like SQL),
200-
the schema cannot be inferred automatically — you need to
201-
specify it manually or use the Gradle or KSP plugin to generate it.
199+
- **[Compiler Plugin](Compiler-Plugin.md)** provides **on-the-fly generation** of
200+
[extension properties](extensionPropertiesApi.md)
201+
based on an existing schema **during compilation**, and updates the [`DataFrame`](DataFrame.md)
202+
schema seamlessly after operations.
203+
However, when reading data from files or external sources (like SQL),
204+
the initial `DataFrame` schema cannot be inferred automatically —
205+
you need to specify it manually or generate it using the [`generate..()` methods](DataSchemaGenerationMethods.md).
202206

203207
## How do I contribute or report an issue?
204208

docs/StardustDocs/topics/concepts/schemas.md

Lines changed: 0 additions & 46 deletions
This file was deleted.

docs/StardustDocs/topics/concepts/schemasCustom.md

Lines changed: 0 additions & 80 deletions
This file was deleted.

docs/StardustDocs/topics/concepts/schemasExternalJupyter.md

Lines changed: 0 additions & 50 deletions
This file was deleted.

docs/StardustDocs/topics/concepts/schemasJupyter.md

Lines changed: 0 additions & 58 deletions
This file was deleted.

docs/StardustDocs/topics/gettingStarted/Modules.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -517,7 +517,7 @@ The Gradle plugin allows generating [data schemas](schemas.md) from samples of d
517517
(of supported formats) like JSON, CSV, Excel files, or URLs, as well as from data fetched from SQL databases
518518
using Gradle.
519519

520-
See the [Gradle Plugin Reference](DataSchemaGenerationGradle.md) for installation
520+
See the [Gradle Plugin Reference](Gradle-Plugin.md) for installation
521521
and usage instructions in Gradle projects.
522522

523523
> By default, the Gradle plugin also applies the [KSP plugin](#ksp-plugin).

docs/StardustDocs/topics/readSqlFromCustomDatabase.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ fun createAndPopulateTable(con: Connection) {
129129

130130
**Define the Table Schema**
131131

132-
Use the `@DataSchema` annotation to define a [**custom data schema**](schemasCustom.md) for the `orders` table.
132+
Use the `@DataSchema` annotation to define a [**custom data schema**](schemas.md) for the `orders` table.
133133

134134
```kotlin
135135
@DataSchema

0 commit comments

Comments
 (0)