Kotlin / Kotlin/dataframe

Add KDocs for `reorder` APIs

Open Beginner friendly
#1,978 0 comments 0 reactions 0 assignees View on GitHub
KDocs
Dominant language
Kotlin
Stars
1.1k
Forks
83
Avg merge
4d 12h
Merged PRs (30d)
30

Description

## Add KDocs for `reorder` APIs

`core/src/main/kotlin/org/jetbrains/kotlinx/dataframe/api/reorder.kt` contains public `reorder` APIs without KDocs.

The site page already documents the main behavior and should be used as the source of truth:
https://kotlin.github.io/dataframe/reorder.html

### Scope

Add concise KDocs for:

- `DataFrame.reorder { ... }`
- `DataFrame.reorder(vararg columns: String)`
- `Reorder.by { ... }`
- `Reorder.byDesc { ... }`
- `Reorder.byName(desc)`
- `DataFrame.reorderColumnsBy(...)`
- `DataFrame.reorderColumnsByName(...)`
- `Reorder.cast()`

Deprecated access-api overloads do not need new KDocs.

### KDocs should explain

- `reorder` returns a dataframe with selected columns reordered.
- Selected columns are reordered among their original positions; non-selected columns keep their positions.
- If selected columns belong to different column groups, they are reordered within their groups, preserving grouping.
- If exactly one `ColumnGroup` is selected, reordering is applied to its nested columns.
- `by` sorts selected columns by a column expression.
- `byDesc` applies descending order.
- `byName(desc)` sorts by column name.
- `reorderColumnsBy` reorders all columns, optionally recursively with `atAnyDepth`.
- `reorderColumnsByName` is a shortcut for name-based reordering.

### Acceptance criteria

- Public non-deprecated `reorder` APIs have concise KDocs.
- KDocs are consistent with the existing site page.
- Deprecated access-api overloads are skipped.
- KDocs cover subset behavior, column-group behavior, `desc`, and `atAnyDepth`.

Contributor guide

Open the contributing guide

Research direction

Start in core/src/main/kotlin/org/jetbrains/kotlinx/dataframe/api/reorder.kt and compare the public non-deprecated APIs with the reorder.html site page. Check each listed overload for coverage of subset and column-group behavior, desc, and atAnyDepth, while skipping deprecated access-api overloads. Done means concise KDocs are present and consistent with the site page.

Written by the indexing model from the issue text.

Assessment

Tech stack
kotlin
Domain
documentation
Issue type
Documentation
Difficulty
2/5
Estimated time
Half a day
Activity status
Quiet
Clarity
Clearly specified
Newbie friendliness
88/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.