Repository navigation
Minor Changes
-
#8679
bd8f0f2
Thanks @jonathanawesome! - Record which targets a breaking
change was used in. Schema checks and publishes with conditional breaking changes now store
per-target request counts for each breaking change and for each of its top affected operations,
exposed asaffectedTargetsonSchemaChangeUsageStatisticsand
SchemaChangeUsageStatisticsAffectedOperationin the public GraphQL API. -
#8734
a6eaf2e
Thanks @n1ru4l! - Support uploading preprocessed app deployment
documents. This omits the need of workers and does not make worker availability the bottleneck of
the app deployment upload process. -
#8736
367c53b
Thanks @n1ru4l! - Support routing server-side OAuth requests through
the request broker so OAuth providers do not see the IP addresses of Hive cluster nodes. This
applies to GitHub, Google, Okta, and organization OIDC token and user-information requests.Self-hosters who need to hide their cluster IP addresses must configure the
serverservice with:REQUEST_BROKER=1REQUEST_BROKER_ENDPOINT=<broker URL>REQUEST_BROKER_SIGNATURE=<shared broker signature>
-
#8679
bd8f0f2
Thanks @jonathanawesome! - ExposeSchemaChange.pathand
SchemaCheckConditionalBreakingChangeMetadata.settingson the public GraphQL API, so the targets
and schema coordinate behind a breaking change's usage can be read without parsing the change
message.
Patch Changes
-
#8708
d3bfbf4
Thanks @jdolle! - Upload persisted documents of an app deployment to
the primary and mirror object storage concurrently instead of one after the other. Slow object
storage writes madehive app:createuploads fail withUnexpected error.or time out in the
CLI. -
#8679
bd8f0f2
Thanks @jonathanawesome! - Check access before resolving
BreakingChangeMetadataTarget.target; load a schema check's changes inTarget.schemaCheckswhen
onlyhasSchemaChanges,hasUnapprovedBreakingChangesorcliApprovalMetadatais selected;
exposebreakingChangeFormula,requestCountand the excluded app deployments on a check's
conditional breaking change settings; and stop storing usage statistics for changes found safe by
the nullability check. -
#8717
4512feb
Thanks @dotansimha! - Upgradegotto v16 to fix ClickHouse
requests failing withwrite ECANCELED(Canceled because of SSL destruction) instead of being
retried.Since Node.js v24.20.0, a connection that closes while a request body is still being sent reports
the error togotin a way thatgotv14 turned into an immediate failure, skipping the retry
logic of the ClickHouse clients.gotv16.1.0 also retries requests with aFormDatabody, which the ClickHouse client uses for
audit log inserts and some operations queries. -
#8714
0a100e4
Thanks @jonathanawesome! - Fix the schema check page
freezing on checks with thousands of schema changes. Safe changes are now grouped by kind, and
breaking changes and each group are paginated 50 at a time, so the 5 types a check added are no
longer buried among thousands of description edits. A check's schemas are only loaded when a
schema tab is opened, so the check itself loads without them. -
#8726
e085b8e
Thanks @jdolle! - Use one request id per API request. The id is the
incomingx-request-idheader, or a generated UUID when none was sent, and it is now the same
value on the API's own log lines, therequest.idtrace attribute, thex-request-idresponse
header, and the requests forwarded to the schema, policy and commerce services. Logs and traces of
those services can therefore be correlated with the API request that triggered them even when no
proxy supplied an id. Every response from a Hive service now carries that id in thex-request-id
header, including error responses produced before a request handler runs. Background proposal
compositions run by the workflows service now carry the id of the API request that scheduled them.
The schema, policy, commerce and usage services log a warning when a request arrives without an
x-request-idheader: their callers (other Hive services, and the Hive client libraries reporting
usage) always send one, so a missing id means a caller is not propagating it. -
#8709
28023c3
Thanks @jdolle! - When a persisted-document upload of an app
deployment is aborted by the client, times out on the server, or one of its storage writes fails,
every remaining object storage and ClickHouse request of that batch is cancelled, including
pending retries. Previously the worker kept uploading the whole batch after the request was
already over. -
#8730
b3cb83a
Thanks @jdolle! - Trace persisted document ingestion inside the
GraphQL API's worker threads. The worker's spans (schema build, document validation, the
ClickHouse insert, every S3 object write with its status and retry count, and how long a batch
waited for a worker) now join the request's trace, every log line a batch produces in the worker
carries the request id, and spans still buffered when a worker exits or the API shuts down are
flushed first. -
#8714
0a100e4
Thanks @jonathanawesome! - PagedSchemaChangeConnection
results (a schema check'sbreakingSchemaChanges,safeSchemaChanges,schemaChangesand the
changesof a safe-change group, on the check and on its contract checks) now report their
position:edges.cursorencodes the change's offset,hasNextPageandhasPreviousPagesay
whether more follow or precede the page,startCursoris empty on the first page andendCursor
empty on the last, andtotalandtotalCountcount the whole list rather than the page. -
#8679
bd8f0f2
Thanks @jonathanawesome! - ListingTarget.schemaChecks
with onlyhasSchemaChangesorhasUnapprovedBreakingChangesselected no longer loads each
check's change lists; both flags are computed in the database. -
#8679
bd8f0f2
Thanks @jonathanawesome! - FixTarget.schemaChecks
returning no changes when they are selected through theSchemaCheckinterface or through
schemaChanges, which made the public API list every check without its changes. -
#8696
27b04ab
Thanks @Abhist17! - Fix links in emails sent with
EMAIL_PROVIDER=sendmaillosing a dot (for example…prod.proddsl.example…arriving as
…prod.proddslexample…). The body is now base64-encoded, so no line can start with a "." that the
receiving server would strip.Closes #7702
-
#8712
6c7ab24
Thanks @jonathanawesome! - Fix the schema check and history
pages freezing on the Public Schema and Supergraph diffs of large schemas. Both schemas are now
sorted before they are compared, so definitions that only moved (for example when types move
between subgraphs) no longer show as changes, and a diff too large to compute shows a notice
instead of locking the page. The unchanged Public Schema view of a check now shows the public
schema instead of the service SDL. -
#8721
52eb8f1
Thanks @jonathanawesome! - Stop calling breaking changes
"safe based on usage data" when Hive doesn't record usage for what they change, such as a removed
type, a removed union member or a new required argument. They now say that usage isn't tracked for
them, and the version history summary counts them as not checked against usage instead of safe.
Changes with nothing more to show no longer open to "No details available".