Skip to content

[AIR] Fixed typos, grammar and four copy-pasted grammar KDoc links - #2184

Merged
Jolanrensen merged 1 commit into
masterfrom
air/typo-fixes-2026-10-23
Oct 23, 2026
Merged

Jolanrensen merged 1 commit into
masterfrom
air/typo-fixes-2026-10-23

Conversation

@jetbrains-air

@jetbrains-air jetbrains-air Bot commented Oct 23, 2026

Copy link
Copy Markdown
Contributor

Small, self-contained typo / grammar / misleading-documentation fixes found by scanning the repository. 22 fixes across 14 files (37 lines); comments, KDoc and markdown prose only — no code or public signatures changed, so no apiDump update is needed.

Wrong KDoc links (copy-paste)

Four DSL grammar blocks link the operation's own name at something else. colGroups.kt and valueCols.kt — the files these were copied from — correctly self-link, so these four were the odd ones out.

File Was Now
frameCols.kt:59,62,65 [**`frameCols`**][ColumnsSelectionDsl.colGroups] …[ColumnsSelectionDsl.frameCols]
colsOfKind.kt:61,64,67 [**`colsOfKind`**][ColumnsSelectionDsl.colGroups] …[ColumnsSelectionDsl.colsOfKind]
gather.kt:79 [**`notNull`**][Gather.cast] (the cast row above it already links Gather.cast) …[Gather.notNull]
all.kt:135 [**`After`**][ColumnsSelectionDsl.allAfter] …[ColumnsSelectionDsl.allColsAfter]

The all.kt Before / After / From / UpTo fragments are shared by the .all(…) and .allCols(…) grammar rows; Before, From and UpTo all point at the allCols* variant, so After was the only one pointing at allAfter. allColsAfter, frameCols and colsOfKind are all members of their DSL interfaces, exactly like the allColsBefore / colGroups links that already resolve.

Broken markdown spans

  • gather.kt:254 — // Assuming `resultA` contains `Double` values and ` / // resultB` contains `List<Double>` values, had the backtick on the wrong side of the line break, so resultB was never a code span and the rest of the line rendered as code. Rewrapped as values / and `resultB` contains ….
  • insert.kt:43,177 (and the same two lines quoted verbatim in KDOC_GUIDELINES.md:333,339) — [at][InsertClause.at]- inserts a new column … was missing the space before the dash that the under and after bullets above it both have.

Python-style booleans in a Kotlin KDoc

typeConversions.kt, NullabilityOptions:

  • Infer — set [DataColumn.hasNulls] to true … On empty dataset use False. → to `true` … On an empty dataset, use `false`.
  • Widening — Change False to True if column should be not nullable … → Change `false` to `true` if the column …
  • Checking — Set … to expected value. Throw exception if column should be … → to the expected value. Throws an exception if the column should be …

Grammar

Wrong word / missing verb

  • insert.kt:37 — does not immediately insert the new column but instead specify a column to insert → specifies. move.kt:45, group.kt:31, rename.kt:39 and convert.kt:98 all write … but instead selects …, so this was the one sentence of the family left disagreeing with its subject.
  • typeConversions.kt:305 — @return if column should be marked nullable … opened a @return on a conditional if → @return whether the column should be marked nullable …, with the sentence rewrapped under 120 columns.
  • Geocoder.kt:26 — Experimental geo coding utility. → geocoding, matching the geocode package and the Geocoder name.

Suspended hyphens (a Dutch/German convention, not an English one — same class of fix as -types/decimal-, in #2161)

Missing articles

  • sliceRows.md:51,77,103,117,144,181 and head.md:5 — the seven one-line summaries of take/takeLast/takeWhile/drop/dropLast/dropWhile/head all read containing first n rows / except last n rows. Added the missing the and the missing sentence-final period (quickstart.md:537 already writes the first n rows).
  • read.kt:34, write.kt:33 (geo) — deprecated "crs" field is used/written for now → the deprecated "crs" field …; the write.kt note also ended its last sentence on a semicolon, now a period.
  • Integration.kt:371 — that should not be shown to user in Jupyter variables view → to the user in the Jupyter variables view.

Misleading / inconsistent

  • insert.kt:170 — InsertClause is described as a transitional step before specifying how to insert the selected columns, but insert takes exactly one column and the clause chooses its placement, not the columns (the next line of the same KDoc already says "with an inserted column") → before specifying where to insert the new column.
  • read.kt:25 (geo) — from the input file : had a stray space before the colon.
  • Integration.kt:262 — Our integration declares script and css definition. But … That's why we include them directly → script and CSS definitions. plus a comma splice fixed (in IFrames, that's why …); css was the only lowercase occurrence against CSS definitions elsewhere. Rewrapped to stay under 120 columns.

Verification

  • Re-ran the duplicate-word, misspelling-dictionary and low-frequency/edit-distance scanners after the change: every fixed item is gone from the tree and no new one appeared. The spelling-level scanners now return only false positives repo-wide (markdown bold markup such as **N**umber, and untill in the dead plugins/kotlin-dataframe legacy copy), so this round is prose- and link-level.
  • Re-ran the grammar-link scanner across every src/main Kotlin file: the only remaining name/target mismatches are the deliberate ones where a grammar row splits a function name across fragments (all+Before, name+Starts+With, drop+Last+While, …). allColsAfter, frameCols and colsOfKind were each read off their declarations, not inferred.
  • Resolved every *.md link and anchor in docs/StardustDocs/topics/** against the tree (file targets and generated heading slugs): no missing file, no missing anchor, before or after the change.
  • Confirmed every edited markdown line sits outside the korro <!---FUN--> / <!---IMPORT--> / <!---END--> blocks the CI bot regenerates, by intersecting the changed line numbers from the diff with each file's block ranges (0 hits).
  • The diff of all *.kt files contains only comment and KDoc lines. No line this PR adds to a Kotlin file exceeds the 120-column limit — three were rewrapped to stay inside it (typeConversions.kt ×2, Integration.kt); the long lines flagged in these files are pre-existing and untouched.
  • Pre-existing trailing whitespace on apiLevels.md:170 was left intact, so the markdown line break renders unchanged — git diff --check flags exactly that one line, and the removed and added sides both end in a space.
  • The generated-sources copies of the touched KoDEx modules (core, dataframe-geo) are intentionally left alone — the CI bot regenerates and auto-commits them. dataframe-jupyter and the root KDOC_GUIDELINES.md have no generated copy.
  • Not run locally: Gradle cannot resolve its plugins in this sandbox (no network to the Gradle Plugin Portal — org.gradle.toolchains.foojay-resolver-convention:1.0.0 fails even with --offline), so ktlint and the tests were not executed here. The manual comment-only and line-length checks above stand in for the ktlint rules that could apply to this diff.

Produced by Air Automations. Name: Bi-weekly Grammar Nazi / Run: https://air.jetbrains.cloud/org/05cf1a7f-6ab5-713b-abd3-29d0c8a05e2d/automations/a9009d9e-63e7-4730-801c-185f5785b6bd?run=c823a9eb-4516-43b1-b6d0-ae32e6cce51b

🤖 Generated with Claude Code

22 small, self-contained fixes: six copy-pasted grammar KDoc links
(frameCols, colsOfKind, gather.notNull, all.After), two broken markdown
spans, Python-style booleans in NullabilityOptions, and missing articles
in slice-row docs, the geo and jupyter comments and apiLevels.md.

Produced by Air Automations. Name: Bi-weekly Grammar Nazi / Run: https://air.jetbrains.cloud/org/05cf1a7f-6ab5-713b-abd3-29d0c8a05e2d/automations/a9009d9e-63e7-4730-801c-185f5785b6bd?run=c823a9eb-4516-43b1-b6d0-ae32e6cce51b

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
@Jolanrensen
Jolanrensen self-requested a review October 23, 2026 13:21

@jetbrains-air jetbrains-air Bot left a comment

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Lovely clean-up — everything checks out, no blocking findings, good to merge from my side.

Produced by Air Automations. Name: AI Review / Run: https://air.jetbrains.cloud/org/05cf1a7f-6ab5-713b-abd3-29d0c8a05e2d/automations/8daf2412-0b6c-4433-90c0-b40ab5aebcdb?run=6f84abe0-1cd5-455b-8a85-359637ac4dec

> or download it [here](https://kotlin.github.io/dataframe/resources/titanic.csv).

The Extension Properties API provides column names and -types at compile-time,
The Extension Properties API provides column names and types at compile-time,

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

okay you can remove the dash ffs...

@Jolanrensen
Jolanrensen merged commit c14d16b into master Oct 23, 2026
3 of 4 checks passed
@Jolanrensen
Jolanrensen deleted the air/typo-fixes-2026-10-23 branch October 23, 2026 13:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant