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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions