Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Clarify the behavior of the default output validator and the semantics of the default output validator flags #348

Open
evouga opened this issue Oct 10, 2024 · 0 comments

Comments

@evouga
Copy link
Collaborator

evouga commented Oct 10, 2024

The behavior of the default output validator is not well specified.

  1. What output encoding does it require? UTF-8 without BOM? How is the output tokenized? How is the "type" of the token (floating-point vs. string, I guess? Maybe integer too, see below?) determined?

  2. Are integers compared as strings? (With leading zeros, hexadecimal encoding, etc. being judged as incorrect) or is there some special handling for "integer-type" tokens?

  3. case_sensitive: notoriously underspecified. How exactly is case-insensitive comparison performed? I assume that this flag only applies to tokens of "string type" and not floating-point?

  4. space_change_sensitive: The default behavior is mentioned in a parenthetical remark (the default is that any sequence of 1 or more whitespace characters are equivalent) but this is incomplete since it does not mention leading or trailing whitespace (which I understand the current default validator ignores by default). Moreover indicates that changes in the amount of whitespace should be rejected is imprecise: do changes in the type of whitespace (newlines to spaces e.g.) cause submissions to be rejected? What is a whitespace anyway? The 25 whitespace Unicode code points?

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

No branches or pull requests

1 participant