Skip to content

Add XLSX features to documentation and sidebars#546

Open
YasanPunch wants to merge 5 commits into
wso2:mainfrom
YasanPunch:xlsx-docs
Open

Add XLSX features to documentation and sidebars#546
YasanPunch wants to merge 5 commits into
wso2:mainfrom
YasanPunch:xlsx-docs

Conversation

@YasanPunch

@YasanPunch YasanPunch commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

Purpose

  • Added 'XLSX' to the sidebars for both development and reference sections.
  • Created a new guide for Excel (XLSX) processing in the development section.
  • Introduced a reference page for the 'ballerina/xlsx' module detailing its usage and features.
  • Included various images to illustrate the XLSX processing workflows.
  • Updated the supported data formats documentation to include XLSX.

Summary by CodeRabbit

Documentation

  • Added a comprehensive XLSX transformation guide, covering one-shot sheet/table operations, multi-sheet Workbook workflows, and reading/writing via file paths or byte arrays.
  • Documented detailed parse/write options, including formula read behavior, headerless mappings, typed date/time bindings, and fail-safe row-level error handling.
  • Introduced XLSX module reference documentation, including core APIs, options, write modes, and error-handling semantics.
  • Updated “Supported Data Formats” and navigation sidebars to surface XLSX docs in both “Develop → Transform” and “Reference.”

- Added 'XLSX' to the sidebars for both development and reference sections.
- Created a new guide for Excel (XLSX) processing in the development section.
- Introduced a reference page for the 'ballerina/xlsx' module detailing its usage and features.
- Included various images to illustrate the XLSX processing workflows.
- Updated the supported data formats documentation to include XLSX.
@coderabbitai

coderabbitai Bot commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: df279c06-8022-4903-a840-66e5b5cd98ff

📥 Commits

Reviewing files that changed from the base of the PR and between 2d9ac06 and 5a5457e.

📒 Files selected for processing (1)
  • en/docs/develop/transform/xlsx.md
✅ Files skipped from review due to trivial changes (1)
  • en/docs/develop/transform/xlsx.md

📝 Walkthrough

Walkthrough

Adds documentation for the ballerina/xlsx module across a how-to guide and reference page, updates the supported data formats table with an XLSX entry and See-also link, and registers both pages in the Docusaurus sidebar.

Changes

XLSX Documentation

Layer / File(s) Summary
Sidebar and supported formats registration
en/sidebars.ts, en/docs/reference/data-formats/supported-data-formats.md
Registers develop/transform/xlsx and reference/data-formats/xlsx in the sidebar, adds an XLSX row to the formats table, and adds a See-also link to the XLSX guide.
XLSX reference page: API surface, options, annotations, errors
en/docs/reference/data-formats/xlsx.md
Documents the Simple API (parseSheet, writeSheet, parseTable, writeTable), Workbook/Sheet/Table API methods, ParseOptions/WriteOptions models, formula-mode and fail-safe behavior, the @xlsx:Name annotation, error type hierarchy, and index conventions, with end-to-end usage examples.
How-to guide: basic parsing, writing, tables, multiple sheets, date/time
en/docs/develop/transform/xlsx.md
Adds guide sections for page overview, record-based column mapping, reading typed records from sheets, file path and byte array input via Workbook API, sheet writing with preservation behavior, Excel Tables via one-shot and Workbook APIs, and time:Civil/time:Date/time:TimeOfDay binding.
How-to guide: read options, header selection, headerless, fail-safe, large workbooks, edge cases
en/docs/develop/transform/xlsx.md
Adds guide sections for read options (formula mode, header/data row indices, row limits, validation), headerless parsing with @xlsx:Name, fail-safe row skipping with console and file logging, large-workbook staging via temporary files, large integer and formula edge cases, and links to related CSV/JSON docs.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Poem

🐇 Hop hop, a spreadsheet unfolds,
Cells and rows in Ballerina scrolls,
parseSheet reads what Excel holds,
writeSheet writes the story told,
No formula pen — but data flows bold! 🌿

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Description check ⚠️ Warning The description provides a Purpose section explaining the changes made, but lacks most other required template sections such as Goals, Approach, User stories, Release note, Documentation, Training, Certification, Marketing, Tests, Security checks, Samples, Related PRs, Migrations, Test environment, and Learning. Expand the description to include the missing required template sections, particularly Goals, Approach, Release note, and Documentation sections which are critical for understanding the change's impact.
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title accurately describes the primary change—adding XLSX documentation and sidebar entries. It is concise, clear, and summarizes the main objective without unnecessary details.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@en/docs/develop/transform/xlsx.md`:
- Line 220: The heading "## Reading and writing Excel Tables" on line 220
violates Microsoft style guidelines for non-H1 headings which require sentence
case. Change the heading to use sentence case by converting "Tables" to
lowercase "tables", so it reads "## Reading and writing Excel tables". Keep
"Excel" capitalized as it is a proper noun, but apply lowercase to the common
noun "tables" to comply with sentence-case formatting rules.

In `@en/docs/reference/data-formats/xlsx.md`:
- Line 92: The H3 heading "Read and write Excel Tables" on line 92 uses title
case which violates Microsoft style guidelines for non-H1 headings. Update the
heading to use sentence case by changing "Tables" to lowercase, while keeping
"Excel" capitalized as a proper noun. The corrected heading should read "Read
and write Excel tables".
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 0797c59d-3f02-44b2-8785-1303213f4926

📥 Commits

Reviewing files that changed from the base of the PR and between 05f5ed5 and 3152273.

⛔ Files ignored due to path filters (12)
  • en/static/img/develop/transform/xlsx/xlsx-datetime-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-failsafe-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-files-bytes-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-header-row-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-headerless-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-projection-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-read-options-field.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-read-options-helper.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-reading-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-tables-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-workbook-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-writing-flow.png is excluded by !**/*.png
📒 Files selected for processing (4)
  • en/docs/develop/transform/xlsx.md
  • en/docs/reference/data-formats/supported-data-formats.md
  • en/docs/reference/data-formats/xlsx.md
  • en/sidebars.ts

Comment thread en/docs/develop/transform/xlsx.md Outdated
Comment thread en/docs/reference/data-formats/xlsx.md Outdated
@github-actions

github-actions Bot commented Jun 19, 2026

Copy link
Copy Markdown

Broken links, images & orphan pages

Passing — no broken links or images found.

Links/images come from one crawl of the production build (baseUrl-aware). Orphans are docs not referenced by sidebars.ts.

Summary

  • Broken links & images — total 0 · 🆕 introduced 0 · 📄 already on main 0
  • Orphan pages — total 8 · 🆕 introduced 0 · 📄 already on main 8

Broken links & images

Introduced by this PR

No new broken link(s)/image(s) introduced by this PR. ✅

Already on main — 0 total

None.

Orphan pages

Introduced by this PR

No new orphan page(s) introduced by this PR. ✅

Already on main — 8 total

Already present on the base branch (not caused by this PR):

Show 8
  • docs/deploy-operate/observe/datadog-integration
  • docs/deploy-operate/observe/elastic-stack-elk
  • docs/deploy-operate/observe/metrics-prometheus-grafana
  • docs/deploy-operate/observe/opensearch-integration
  • docs/deploy-operate/observe/recipe-elk-stack
  • docs/deploy-operate/observe/recipe-kubernetes-production
  • docs/deploy-operate/observe/recipe-local-development
  • docs/deploy-operate/observe/recipe-opensearch-setup

- Revised sections to enhance the explanation of reading and writing sheets, including details on atomic writes and sheet write modes.
- Updated the description of processing capabilities to better reflect the features available, such as handling multi-sheet workbooks and various read options.
- Added new images to illustrate workflows for reading, writing, and configuring options in XLSX processing.
- Clarified the usage of the Workbook API and its limitations in the visual designer.
- Changed section titles from "Excel Tables" to "Excel tables" for uniformity across documentation.
- Ensured consistent formatting and terminology in the reading and writing sections of the XLSX documentation.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

♻️ Duplicate comments (1)
en/docs/develop/transform/xlsx.md (1)

279-279: ⚠️ Potential issue | 🟡 Minor | ⚡ Quick win

Sentence case required in non-H1 heading.

Line 279 still contains the heading "## Reading and writing Excel Tables". Per Microsoft style guidelines and your coding guidelines, non-H1 headers must use sentence case. "Excel" is a proper noun and should stay capitalized, but "Tables" is a common noun and should be lowercase.

📝 Suggested fix
-## Reading and writing Excel Tables
+## Reading and writing Excel tables
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@en/docs/develop/transform/xlsx.md` at line 279, The heading "## Reading and
writing Excel Tables" uses title case but must be converted to sentence case per
style guidelines. Keep "Excel" capitalized as a proper noun, but convert
"Tables" to lowercase since it is a common noun in this context. Update the
heading to follow proper sentence case formatting.

Source: Coding guidelines

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Duplicate comments:
In `@en/docs/develop/transform/xlsx.md`:
- Line 279: The heading "## Reading and writing Excel Tables" uses title case
but must be converted to sentence case per style guidelines. Keep "Excel"
capitalized as a proper noun, but convert "Tables" to lowercase since it is a
common noun in this context. Update the heading to follow proper sentence case
formatting.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: 1ea49df5-9194-4ddd-835b-144e39ce700f

📥 Commits

Reviewing files that changed from the base of the PR and between 3152273 and 590b8ac.

⛔ Files ignored due to path filters (12)
  • en/static/img/develop/transform/xlsx/xlsx-datetime-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-failsafe-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-files-bytes-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-header-row-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-headerless-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-projection-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-read-options-field.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-read-options-helper.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-reading-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-tables-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-workbook-flow.png is excluded by !**/*.png
  • en/static/img/develop/transform/xlsx/xlsx-writing-flow.png is excluded by !**/*.png
📒 Files selected for processing (1)
  • en/docs/develop/transform/xlsx.md

Comment thread en/docs/develop/transform/xlsx.md Outdated
- Changed the section title from "Excel (XLSX) Processing" to "XLSX Processing" to align with terminology used throughout the documentation.
Comment thread en/docs/develop/transform/xlsx.md Outdated

@niveathika niveathika left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

LGTM. Lets wait until the search index for xlxs is fixed.

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.

3 participants