Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
42 changes: 21 additions & 21 deletions scripts/parity-surface-allow.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
"ArtifactError.Request",
"ArtifactError.Source"
],
"issue": 500,
"issue": 511,
"reason": "Go has one ArtifactError for the loader's refusals and the fetch layer's errors (§4: 'the fetch layer's and the loader's errors are one family'), so it also carries the fetch error's message, the platform, request and source it was answering, and the wrapped cause (Unwrap). §4 names only the refusal's fields."
},
{
Expand Down Expand Up @@ -70,7 +70,7 @@
"CodeSourceUnreachable",
"CodeCacheUnusable"
],
"issue": 500,
"issue": 511,
"reason": "The typed values of ArtifactError.Code, which §4's Go column names (`*ArtifactError` with `Code` CHTYPES_…): one constant per code in spec/fetch-v1/constants.json, re-exported from the fetch layer, with the code's CLI exit status and sentinel. Python keeps the same codes as CODE_* constants (its own entry); §4 gives no spelling for them."
},
{
Expand Down Expand Up @@ -100,7 +100,7 @@
"FetchOptions.IdleReadTimeout"
],
"reason": "Go-only: the fetch layer's connect and idle-read timeouts (spec/fetch-v1/constants.json `timeouts`), settable on Go's FetchOptions alone. Principle 2 says this convenience belongs in all four or in none; it is carried here as found, not changed, because removing a published field is a breaking change.",
"issue": 500
"issue": 511
},
{
"binding": "python",
Expand Down Expand Up @@ -149,7 +149,7 @@
"SourceUnreachableError.code",
"CacheUnusableError.code"
],
"issue": 500,
"issue": 511,
"reason": "The fetch codes of spec/fetch-v1/constants.json, and each artifact class's code: the attribute §4's Go column calls ArtifactError's `Code` (Go's own entry). §4's Python column names the classes only."
},
{
Expand Down Expand Up @@ -184,7 +184,7 @@
"SourceUnreachableError.retry_after"
],
"reason": "The fetch layer's retry hints on an unreachable source (fetch-v1.md §7, the retry table): whether a retry may help, and the server's Retry-After. §4 names the class, not its fields.",
"issue": 500
"issue": 511
},
{
"binding": "python",
Expand Down Expand Up @@ -214,7 +214,7 @@
"TrustedKey.public_key"
],
"reason": "Python's trusted keys are TrustedKey records (key id and raw public key) where Go's FetchOptions.TrustedKeys takes hex strings: a shape difference inside §6's 'trusted keys', carried as found. Changing either is a breaking change.",
"issue": 500
"issue": 511
},
{
"binding": "python",
Expand All @@ -235,7 +235,7 @@
"errors.misuse"
],
"reason": "Found by this gate: the binding's own constructors for InternalError and UsageError, listed in chtypes.errors.__all__ and so public through the submodule, though the package does not re-export them and the doc gives neither. Dropping them from __all__ is a public-API change for its own pull request; carried here until then.",
"issue": 499
"issue": 511
},
{
"binding": "rust",
Expand Down Expand Up @@ -287,7 +287,7 @@
"names": [
"Error.code"
],
"issue": 500,
"issue": 511,
"reason": "The fetch code of an artifact variant (spec/fetch-v1/constants.json): the Rust spelling of Go's ArtifactError.Code and Python's `.code` (their own entries). §4 gives no Rust spelling."
},
{
Expand Down Expand Up @@ -319,7 +319,7 @@
"names": [
"Refusal.detail"
],
"issue": 500,
"issue": 511,
"reason": "Rust's loader refusal carries a free-text detail beside §4's reason, path, want and got (noted in the 1.0 comparison, #435). It is Rust-only, carried as found: removing a published field is a breaking change."
},
{
Expand Down Expand Up @@ -358,39 +358,39 @@
"FetchOptions.platform"
],
"reason": "Rust-only: the platform to fetch for, where the other bindings fetch for the host. Principle 2 says this belongs in all four or in none; it is carried here as found, not changed, because removing a published field is a breaking change.",
"issue": 500
"issue": 511
},
{
"binding": "ts",
"kind": "spelling",
"doc": "Format.chName",
"as": "formatChName",
"reason": "§3's vocabularies are const objects in TypeScript (`Format.JSONEachRow` is a number, not an object), which cannot carry a member, so each fact is a free function named for its vocabulary (the 1.0 comparison, #435). Generated from the description by scripts/abi-v1/gen.py; a rename is a breaking change.",
"issue": 500
"issue": 511
},
{
"binding": "ts",
"kind": "spelling",
"doc": "Reason.lossy",
"as": "reasonLossy",
"reason": "§3's vocabularies are const objects in TypeScript (`Format.JSONEachRow` is a number, not an object), which cannot carry a member, so each fact is a free function named for its vocabulary (the 1.0 comparison, #435). Generated from the description by scripts/abi-v1/gen.py; a rename is a breaking change.",
"issue": 500
"issue": 511
},
{
"binding": "ts",
"kind": "spelling",
"doc": "Source.isStored",
"as": "sourceIsStored",
"reason": "§3's vocabularies are const objects in TypeScript (`Format.JSONEachRow` is a number, not an object), which cannot carry a member, so each fact is a free function named for its vocabulary (the 1.0 comparison, #435). Generated from the description by scripts/abi-v1/gen.py; a rename is a breaking change.",
"issue": 500
"issue": 511
},
{
"binding": "ts",
"kind": "spelling",
"doc": "Verdict.answered",
"as": "verdictAnswered",
"reason": "§3's vocabularies are const objects in TypeScript (`Format.JSONEachRow` is a number, not an object), which cannot carry a member, so each fact is a free function named for its vocabulary (the 1.0 comparison, #435). Generated from the description by scripts/abi-v1/gen.py; a rename is a breaking change.",
"issue": 500
"issue": 511
},
{
"binding": "ts",
Expand All @@ -402,7 +402,7 @@
"ArtifactError.got"
],
"reason": "TypeScript keeps a loader refusal's fields (§4: reason, path, want, got) on the classes a refusal raises, ArtifactIncompatibleError and LoaderCorruptError (both implement LoaderErrorFields; their own entry), not on the ArtifactError base the fetch layer's errors share, which carries the code. §4 names the carrier for Go (*ArtifactError) and Rust (Refusal) only; the gate reads Go's for TypeScript and Python, and Python's base does carry them.",
"issue": 500
"issue": 511
},
{
"binding": "ts",
Expand All @@ -424,7 +424,7 @@
"LoaderErrorFields.got"
],
"reason": "Where TypeScript keeps §4's refusal fields (see its `missing` entry for ArtifactError): LoaderCorruptError is the loader's corrupt refusal, a subclass of ArtifactCorruptError so that catching ArtifactCorruptError still catches both (§4's one family); TypeScript-only, noted in the 1.0 comparison (#435). LoaderErrorFields is the interface both refusal classes implement.",
"issue": 500
"issue": 511
},
{
"binding": "ts",
Expand All @@ -433,7 +433,7 @@
"ArtifactError.code",
"ArtifactError.exitStatus"
],
"issue": 500,
"issue": 511,
"reason": "The fetch code (spec/fetch-v1/constants.json) and its CLI exit status: TypeScript's spelling of Go's ArtifactError.Code and ErrorCode.ExitCode, Python's `.code` and Rust's Error.code (their own entries). §4 gives no TypeScript spelling."
},
{
Expand Down Expand Up @@ -474,7 +474,7 @@
"BatchOutcome.Unsupported"
],
"reason": "The description's batch_outcome vocabulary on its own, generated by scripts/abi-v1/gen.py and exported by TypeScript alone; §3 folds row_outcome and batch_outcome into one Outcome, which TypeScript also exports. TypeScript-only, carried as found: removing an export is a breaking change.",
"issue": 500
"issue": 511
},
{
"binding": "ts",
Expand All @@ -485,7 +485,7 @@
"DiscoverQueryParam.Table"
],
"reason": "The description's discover_query_param vocabulary (the discovery query's two parameters, which §5 names in prose), generated by scripts/abi-v1/gen.py and exported by TypeScript alone. TypeScript-only, carried as found: removing an export is a breaking change.",
"issue": 500
"issue": 511
},
{
"binding": "ts",
Expand All @@ -510,7 +510,7 @@
"SourceUnreachableError.retryAfterRefused"
],
"reason": "The fetch layer's retry hint on an unreachable source (fetch-v1.md §7, the retry table): the Retry-After the client refused to wait for. Python carries retryable and retry_after instead (its own entry): the two bindings differ here, carried as found.",
"issue": 500
"issue": 511
},
{
"binding": "ts",
Expand All @@ -519,7 +519,7 @@
"isChtypesError"
],
"reason": "True for any error the package throws on purpose. TypeScript's ArtifactError (the fetch layer's error class, re-exported) does not extend ChtypesError, so one guard covers the call errors and the artifact errors together; Python's ArtifactError is a ChtypesError, Go has no base and Rust has one Error enum, so none of them needs it. TypeScript-only, carried as found.",
"issue": 487
"issue": 511
}
]
}
Loading