Skip to content

Improve installation docs and handle localized column names - #150

Merged
felixlohmeier merged 5 commits into
mainfrom
claude/confident-cori-7ua0vm
Oct 4, 2026
Merged

felixlohmeier merged 5 commits into
mainfrom
claude/confident-cori-7ua0vm

Conversation

@felixlohmeier

Copy link
Copy Markdown
Member

Summary

This PR improves the installation documentation with platform-specific instructions and fixes test failures caused by OpenRefine's localization of default column names (e.g., "Spalte 1" on German systems instead of "Column 1").

Key Changes

  • README.md: Restructured installation instructions with separate sections for Linux and macOS, including:

    • Step-by-step commands for installing dependencies and downloading OpenRefine
    • Clarified that orcli should be placed in the OpenRefine program directory
    • Added optional steps for creating symlinks and installing shell completions
    • Updated macOS instructions to use the Linux OpenRefine release (since the .dmg lacks the required refine script)
    • Added zsh completion setup for macOS users
    • Updated requirements to specify Java 11 or later for OpenRefine
    • Added troubleshooting note about OpenRefine's language-dependent column naming
  • Test files (import-csv-headerLines.sh, import-csv-ignoreCharacter.sh, import-txt-headerLines.sh, import-txt-linesPerRow.sh, import-txt.sh):

    • Added normalization of localized default column names in TSV export output using sed to convert language-specific column names (e.g., "Spalte 1", "Colonne 1") to English "Column N" format
    • This ensures tests pass consistently regardless of the OpenRefine server's system language

Implementation Details

The test fixes use a portable sed pattern (sed $'1s/[^\t ]* \\([0-9][0-9]*\\)/Column \\1/g') that:

  • Operates only on the header row (first line)
  • Matches any non-tab/space characters followed by a space and digits
  • Replaces them with the English "Column" prefix
  • Avoids GNU-only sed options to maintain macOS compatibility

https://claude.ai/code/session_018cVmGKtERaZJ91gCAA8Jj2

claude added 5 commits October 4, 2026 20:41
OpenRefine names columns without header by the JVM's default locale
(e.g. "Spalte 1" on a German macOS), which made tests fail and run
scripts depend on the system language.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018cVmGKtERaZJ91gCAA8Jj2
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018cVmGKtERaZJ91gCAA8Jj2
Symlink to /usr/local/bin (in the default PATH on Linux and macOS) and
add zsh tab completion via bashcompinit for macOS.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018cVmGKtERaZJ91gCAA8Jj2
Revert starting OpenRefine with -Duser.language=en in run and test,
because the language also matters for features like reconciliation.
Tests with default column names (e.g. "Spalte 1" on a German macOS)
now normalize the header row of the output to "Column 1".

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018cVmGKtERaZJ91gCAA8Jj2
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018cVmGKtERaZJ91gCAA8Jj2
@felixlohmeier
felixlohmeier merged commit c3c5bfb into main Oct 4, 2026
11 checks passed
@felixlohmeier
felixlohmeier deleted the claude/confident-cori-7ua0vm branch October 4, 2026 21:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants