Skip to content

Add gawk-compatible CSV mode (--csv) #455

@bertysentry

Description

@bertysentry

Requirements

The current gawk compatibility harness records --csv as unsupported and skips the corresponding gawk fixtures.

Current coverage gap:

  • src/it/java/io/jawk/GawkMaketestsParser.java treats --csv as an unsupported flag today.
  • src/it/resources/gawk/skips.properties currently skips csv1, csv2, csv3, and csvodd with the reason gawk's --csv mode is not implemented by Jawk.
  • The vendored gawk manifest contains the relevant rules in src/it/resources/gawk/Maketests.

We should add a gawk-compatible CSV mode to Jawk's CLI and runtime so these tests can run instead of being skipped.

Acceptance criteria:

  • Jawk accepts --csv on the CLI.
  • Record splitting and field parsing are compatible enough with gawk's CSV mode for the vendored csv1, csv2, csv3, and csvodd fixtures.
  • The compatibility suite can unskip those cases and compare their real outputs.
  • The behavior is covered by tests using AwkTestSupport and/or the existing gawk IT harness.

Suggestions

Implement CSV support with a dedicated CsvInputSource class that implements InputSource.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions