Skip to content

docs: document known behavioral differences in go_test_suite .sync_ignore#964

Open
He-Pin wants to merge 2 commits into
databricks:masterfrom
He-Pin:docs/sync-ignore-behavioral-notes
Open

docs: document known behavioral differences in go_test_suite .sync_ignore#964
He-Pin wants to merge 2 commits into
databricks:masterfrom
He-Pin:docs/sync-ignore-behavioral-notes

Conversation

@He-Pin

@He-Pin He-Pin commented Jun 18, 2026

Copy link
Copy Markdown
Contributor

Motivation

The go_test_suite/.sync_ignore file was empty (header comments only), providing no documentation about which upstream go-jsonnet tests have known behavioral differences in sjsonnet.

Modification

Add documented entries for 6 tests across 2 categories:

  • Path-dependent (3): std.thisFile, std.thisFile2, stdlib_smoke_test — test harness working directory difference
  • Float rendering (3): builtin_escapeStringJson, builtin_manifestTomlEx, pow6 — sjsonnet/jrsonnet use shortest round-trip rendering

The parseYaml entry was intentionally excluded since the document marker handling was fixed to match go-jsonnet behavior (see PR #968).

Result

Each remaining ignored test has a comment explaining the behavioral difference and which implementations agree, making it clear which ignores are intentional vs. tracking real divergence.

No code changes; documentation only.

Test plan

He-Pin added 2 commits June 18, 2026 14:26
…nore

Motivation:
The .sync_ignore file was empty, providing no documentation about which
upstream go-jsonnet tests have known behavioral differences in sjsonnet.
This makes it harder for contributors to understand test coverage gaps.

Modification:
Add documented entries for 7 tests across 3 categories:
- Path-dependent: std.thisFile, std.thisFile2, stdlib_smoke_test
  (sjsonnet returns filename-only, go-jsonnet returns full relative path)
- Float rendering: builtin_escapeStringJson, builtin_manifestTomlEx, pow6
  (sjsonnet uses shortest round-trip, go-jsonnet uses more digits)
- Semantic: parseYaml
  (std.parseYaml("---") returns null vs [null] in go-jsonnet)

Result:
Each ignored test has a comment explaining the behavioral difference
and whether sjsonnet's behavior is correct or needs further review.
parseYaml now correctly wraps single-doc YAML with explicit --- in
array, matching go-jsonnet behavior. The semantic difference entry
is no longer needed.
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.

1 participant