Self-Hosting Changelog
Here you can find all the recent improvements and updates about the self-hosting images. The Docker images published to the GitHub registry using the same tags. For a high-level overview of improvements please refer to our product updates.
8.0.0
Major Changes
-
#6810
ae65069Thanks @n1ru4l! - Add mutation fields for managing schema contracts to the public api schema.Mutation.createContractMutation.disableContract
BREAKING CHANGE: This renames and changes the types for existing types within the private GraphQL schema.
-
#6722
aab6e7cThanks @n1ru4l! - Add mutation fields for managing users to the public api schema.Mutation.assignMemberRoleMutation.createMemberRoleMutation.deleteMemberRoleMutation.deleteOrganizationInvitationMutation.inviteToOrganizationByEmailMutation.updateMemberRole
BREAKING CHANGE: This renames and changes the types for existing types within the private GraphQL schema.
-
#6786
20bfc4cThanks @n1ru4l! - Add mutation fields for managing projects to the public api schema.Mutation.createProjectMutation.updateProjectSlugMutation.deleteProject
BREAKING CHANGE: This renames and changes the types for existing types within the private GraphQL schema.
-
#6795
3552957Thanks @n1ru4l! - Add fields for querying usage datato the public api schema.Target.schemaCoordinateStatsTarget.clientStatsTarget.operationsStats
BREAKING CHANGE: This renames and changes the types for existing types within the private GraphQL schema.
Minor Changes
- #6764
bbd5643Thanks @jdolle! - Track provided operation arguments/inputs and use them to determine conditional breaking changes; Fix null to non-null argument breaking change edge case”
Patch Changes
-
#6780
6c0b6f3Thanks @jdolle! - Add pg indexes to help with org delete -
#6814
7574cceThanks @jdolle! - Fix random infinite loop on schema checks page -
#6792
54acc25Thanks @jdolle! - Adjust contract to target foreign key reference to cascade delete -
#6793
81df783Thanks @jdolle! - Adjust date range selector ui
7.0.2
Patch Changes
8477e2bThanks @dotansimha! - Fix release notes
7.0.1
Patch Changes
- #6784
549ca54Thanks @dotansimha! - Minor bump to address release issues in v7.0.0
7.0.0
Major Changes
-
#6758
0cf1194Thanks @n1ru4l! - Add target management fields to the public GraphQL API schema.This includes the following fields and related types/fields:
Mutation.updateTargetConditionalBreakingChangeConfigurationMutation.updateTargetSlugMutation.updateTargetDangerousChangeClassificationMutation.createTargetMutation.deleteTargetMutation.createCdnAccessTokenMutation.deleteCdnAccessTokenTarget.conditionalBreakingChangeConfigurationTarget.failDiffOnDangerousChangeTarget.cdnAccessTokensOrganization.availableOrganizationAccessTokenPermissionGroups
BREAKING CHANGE This renames existing types and fields within the private GraphQL schema.
Minor Changes
-
#6771
4dcd45aThanks @jdolle! - Add meta and subgraph data to coordinate insights page; Fix SubgraphChip service link -
#6626
2056307Thanks @jdolle! - Add target breaking change setting to turn dangerous changes into breaking changes -
#6658
e6a970fThanks @n1ru4l! - Adjust GraphQL schema according to schema design policies. -
#6701
f2fe6c8Thanks @n1ru4l! - Print dangerous schema changes as own section in github changes. -
#6662
2b220a5Thanks @n1ru4l! - Support federation composition validation forIMPLEMENTED_BY_INACCESSIBLE. -
#6678
8fd9ad0Thanks @n1ru4l! - DeprecateCriticalityLevelscalar and fields referencing it in favor of theSeverityLevelTypescalar. ExposeSchemaChange.severityLevelandSchemaChange.severityReasonvia the public API endpoint. -
#6614
c1d9c05Thanks @n1ru4l! - Add new route/graphql-publicto theserverservice which contains the public GraphQL API (fields and types will follow). -
#6675
ed66171Thanks @kamilkisiela! - Updates the@theguild/federation-compositiontov0.18.1that includes the following changes:- Support progressive overrides (
@override(label: "<value>")) - Allow to use
@composeDirectiveon a built-in scalar (like@oneOf) - Performance improvements (lazy compute of errors), especially noticeable in large schemas (2s -> 600ms)
- Ensure nested key fields are marked as
@shareable - Stop collecting paths when a leaf field was reached (performance improvement)
- Avoid infinite loop when entity field returns itself
- Support progressive overrides (
-
#6665
cb41478Thanks @kamilkisiela! - Update@theguild/federation-compositiontov0.16.0.- Support Apollo Federation
v2.7, but without the progressive@override. - Support Apollo Federation
v2.8, but without the@contextand@fromContextdirectives. - Support Apollo Federation
v2.9, including@costand@listSizedirectives.
- Support Apollo Federation
-
#6683
ab774b7Thanks @jdolle! - Make url optional for subsequent federated schema publishes
Patch Changes
-
#6716
1767037Thanks @jdolle! - Improve slack alert error logs -
#6687
349b78fThanks @jdolle! - Improve resource ID tooltip behavior -
#6685
a107ad3Thanks @n1ru4l! - Fix failing schema contract composition. -
#6770
8e02a49Thanks @jdolle! - Adjust contract logic to allow removing mutation and subscription types -
#6602
df3e5a2Thanks @jdolle! - Added directions for publishing on no schema component -
#6759
132feb9Thanks @jdolle! - Reduce usage service readiness threshold; Disable nagles algorithm and increase keepAlive from 60s to 180s for KafkaJS -
#6713
4f9aeaeThanks @jdolle! - Do not store empty metadata in db -
#6718
fd9b160Thanks @jdolle! - upgrade ‘got’ package to fix TimeoutError case -
#6752
d0404dbThanks @jdolle! - Improve external composer UX: Handle network errors gracefully, do not use native composer when testing, and improve settings UI -
#6755
60981bdThanks @jdolle! - Correctly set usage service state to Ready after processing all of the fallback queue. -
#6632
9b2bec6Thanks @jdolle! - Capture Stripe.js load error to avoid raising an unhandled error -
#6706
4435820Thanks @n1ru4l! - Improve contract schema building for subgraphs using theextendkeyword.
6.0.0
Major Changes
-
#6556
7b9129cThanks @n1ru4l! - Add organization access tokens; a new way to issue access tokens for performing actions with the CLI and doing usage reporting.Breaking Change: The
usageservice now requires environment variables for Postgres (POSTGRES_SSL,POSTGRES_HOST,POSTGRES_PORT,POSTGRES_DB,POSTGRES_USER,POSTGRES_PASSWORD) and Redis (REDIS_HOST,REDIS_PORT,REDIS_PASSWORD,REDIS_TLS_ENABLED).For more information please refer to the organization access token documentation.
-
#6613
0fd4d96Thanks @n1ru4l! - Restructure the environment variables used for the Hive Cloud hosting. While this is techincally a breaking change it will not really affect people self-hosting Hive.Breaking: Remove unused environment variable options
HIVE_REPORTING,HIVE_REPORTING_ENDPOINTandHIVE_USAGE_DATA_RETENTION_PURGE_INTERVAL_MINUTESfrom theserverservice.These environment variables are obsolete since the Hive GraphQL schema is reported via the Hive CLI instead.
Breaking: Replace the environment variable option
HIVEwithHIVE_USAGE, rename environment variable optionHIVE_API_TOKENtoHIVE_USAGE_ACCESS_TOKENfor theserverservice. Require providing theHIVE_USAGE_ACCESS_TOKENenvironment variable ifHIVE_USAGEis set to1.
Patch Changes
-
#6594
06e7012Thanks @jdolle! - Fix insights range if selecting same start and end -
#6633
a5e00f2Thanks @n1ru4l! - Fix Federation composition error when having an inaccessible default value on an inaccessible field. -
#6609
1c44345Thanks @kamilkisiela! - Mark usage-ingestor as unhealthy when Kafka consumer crashed -
#6584
d1e6ab0Thanks @jdolle! - Add readonly resource ID to settings pages -
#6585
c0d9ca3Thanks @jdolle! - Restrict new service names to 64 characters, alphanumberic,_and-. -
#6607
18f82b4Thanks @kamilkisiela! - Ensure all materialized views have correct TTL
5.1.3
Patch Changes
-
#6553
f0fe03cThanks @kamilkisiela! - Standardize the design and content of all email templates for consistency. -
#6571
bf06e94Thanks @kamilkisiela! - Adds ability to all services to write a heap dump to a disk when SIGUSR1 signal is received -
#6593
ef1efbbThanks @jdolle! - Fix operation insights showing loading for missing operations -
#6582
bb2f2aaThanks @jdolle! - Adds optional url argument to schema checks -
#6586
e10de03Thanks @kamilkisiela! - Corrected an issue where fields from type extensions were not marked as unused when appropriate -
#6542
719e3e6Thanks @kamilkisiela! - Consolidates email templating logic into theemailsservice.
5.1.2
Patch Changes
-
#6518
a8a2da5Thanks @kamilkisiela! - Ensure response body is read before timeout to avoid abort errors in S3 client (CDN) -
#6536
6cdcef1Thanks @kamilkisiela! - Adds an index to coordinates_(daily,hourly,minutely) tables to speedup the get_top_operations_for_types ClickHoue query.Reading of type and fields usage statisticts should be noticeably faster now on big datasets.
5.1.1
Patch Changes
-
#6502
cef7fd8Thanks @kamilkisiela! - Update @theguild/federation-composition to 0.14.4- Fix a child data type field not being accessible via interfaceObject
- Respect inaccessible enum values while creating the public schema from the supergraph AST
5.1.0
Minor Changes
- #6449
0504530Thanks @n1ru4l! - Modify GraphQL fields used by CLI to accept an optional specified target that is used for identifying the affected target instead of resolving the target from the access token.
Patch Changes
-
#6472
4d3d6fcThanks @n1ru4l! - Improve the usage reporting endpoint error responses to include all the errors for invalid JSON bodies. -
#6455
6924a1aThanks @jasonkuhrt! - A minor defect in Laboratory has been fixed that previously caused the application to crash when local storage was in a particular state.
5.0.0
Major Changes
-
#6231
b7e4052Thanks @n1ru4l! - New permission system for organization member roles.The existing scopes assigned to organization members have been replaced with a permissions-based system, enabling more granular access control and role-based access control (RBAC) in Hive.
Breaking Changes
- Viewer Role Adjustments – Members with the default Viewer role can no longer create targets or projects.
- Restricted Role Management – Permissions for inviting, removing, and assigning roles have been revoked. An admin must manually reassign these permissions where needed.
- Expanded Role Assignment Capabilities – Members with permissions to manage invites, remove members, or modify roles can now grant additional permissions without restrictions. Caution is advised when assigning these rights, as they should be reserved for “Admin” roles.
These changes enhance security and provide greater flexibility in managing user permissions across organizations.
Minor Changes
-
#6378
f14daa8Thanks @jasonkuhrt! - You can now set HTTP headers in your Laboratory Preflight Script. Every time you run a request from Laboratory, your preflight headers, if any, will be merged into the request before it is sent.You achieve this by interacting with the
Headersinstance newly available atlab.request.headers. For example, this script would would add afooheader with the valuebarto every Laboratory request.lab.request.headers.set('foo', 'bar')A few notes about how headers are merged:
- Unlike static headers, preflight headers do not receive environment variable substitutions on their values.
- Preflight headers take precedence, overwriting any same-named headers already in the Laboratory request.
Documentation for this new feature is available at https://the-guild.dev/graphql/hive/docs/dashboard/laboratory/preflight-scripts#http-headers.
-
#6123
abfd1b1Thanks @Intellicode! - encode postgres variables and introduce optional password -
#6412
f352bbaThanks @Intellicode! - Added a new environment variablePROMETHEUS_METRICS_PORTto control the promethus port of the policy service. The default value is10254(no action needed).
Patch Changes
-
#6398
0e4be14Thanks @kamilkisiela! - Remove the db leftovers related to activities (no longer a thing) -
#6433
a902d8bThanks @kamilkisiela! - Improves validation for operation durations and error totals. Prevents processing of invalid usage report data. -
#6374
393ece7Thanks @kamilkisiela! - Adjust the Kafka message size estimation only when Kafka gives backMESSAGE_TOO_LARGEerror -
#6358
ab06518Thanks @jdolle! - Use sum instead of max of top request counts for breaking changes calculation
4.1.0
Minor Changes
-
#6400
d2a4387Thanks @kamilkisiela! - Display logs from the Preflight Script in Laboratory -
#6348
e754700Thanks @kamilkisiela! - Adds ability to select a default role for new OIDC users -
#6351
ba20748Thanks @dotansimha! - Added a new environment variableOPENTELEMETRY_TRACE_USAGE_REQUESTSforrate-limitandtokensservices.Self-hosters who wish to report telemetry information for
usageservice, can opt-in and setOPENTELEMETRY_TRACE_USAGE_REQUESTS=1to these services. This will skip sampling and will always trace requests originating from theusageservice. -
#6388
a8ff443Thanks @kamilkisiela! - Add multi-column sort to Insights > Operations table -
#6389
781b140Thanks @kamilkisiela! - Show Impact metric in the Operations list on the Insights page. Impact equals to the total time spent on this operation in the selected period in seconds. It helps assess which operations contribute the most to overall latency.Impact = Requests * avg/1000 -
#6393
84fd770Thanks @kamilkisiela! - Add type definitions of global.lab to Preflight Script editor -
#6351
ba20748Thanks @dotansimha! - Added OpenTelemetry traces to Usage service using a newOPENTELEMETRY_COLLECTOR_ENDPOINTenv var.This option is disabled by default for self-hosting, you can opt-in by setting
OPENTELEMETRY_COLLECTOR_ENDPOINT.
Patch Changes
-
#6386
d19229fThanks @kamilkisiela! - Remove the code leftovers related to activities (no longer a thing) -
#6380
40213fbThanks @kamilkisiela! - Update@theguild/federation-compositionto v0.14.3 -
#6399
607192eThanks @kamilkisiela! - Disable “select organization” dropdown for OIDC accounts
4.0.1
Patch Changes
c6a21ffThanks @dotansimha! - Bump version to test release flow
4.0.0
Major Changes
- #6259
1168564Thanks @kamilkisiela! - No longer support the legacy registry models. Announcement https://the-guild.dev/blog/graphql-hive-improvements-in-schema-registry
Minor Changes
-
#6340
3183f5aThanks @n1ru4l! - Remove the legacy member role assignment wizard. -
#6341
2fa3352Thanks @kamilkisiela! - Allow to close the last tab in Laboratory -
#6254
b58d2c5Thanks @jdolle! - Add option for checking breaking changes by a fixed request count
Patch Changes
-
#6332
6b9192cThanks @kamilkisiela! - Assigns custom roles to members without a role to complete https://the-guild.dev/graphql/hive/product-updates/2023-12-05-member-roles -
#6369
b40cabdThanks @kamilkisiela! - Fix the audit log export -
#6368
0c2e953Thanks @n1ru4l! - Fix connecting slack integration. -
#6365
bab2cf0Thanks @dotansimha! - Fix release and package flow for Docker images ofhive
3.0.0
Major Changes
-
#6066
e747e4cThanks @n1ru4l! - Drop user accounts and organization not linked to a SuperTokens account.This is mainly a cleanup for legacy accounts on Hive Cloud that were not migrated from Auth0 some years ago. It should not affect self-hosters.
Minor Changes
-
#6261
09c01d6Thanks @kamilkisiela! - Adds a response validation of the POST https://slack.com/api/oauth.v2.access request.This request is made when connecting Slack to Hive. This is to ensure that the response is a JSON object and that it contains the expected keys and provide informative error messages if it does not.
Patch Changes
-
#6265
cecd95bThanks @dotansimha! - Relaxuuidcheck for external IDs in audit log metadata. Fixes https://github.com/graphql-hive/console/issues/6264 -
#6262
d98e146Thanks @kamilkisiela! - Resolve the issue where the laboratory mocked endpoint consistently returns: “Please publish your first schema to Hive.” -
#6267
817fed3Thanks @dotansimha! - bugfix:scrollIntoViewis not a function in lab page (fixed https://github.com/graphql-hive/console/issues/6263) -
#6282
a7f9d50Thanks @kamilkisiela! - Fix editor state and operation handling in Laboratory.When opening a new tab or selecting a saved operation, the editor incorrectly populated the query, defaulting to the active query. This made it impossible to view the selected operation. Additionally, the submit button for saving an operation was always disabled, even when the form was in a valid state.
2.1.0
Minor Changes
-
#5564
e0eb3bdThanks @dimaMachina! - Add preflight scripts for laboratory.It is now possible to add a preflight script within the laboratory that executes before sending a GraphQL request. Learn more.
-
#5530
38c14e2Thanks @TuvalSimha! - Add organization audit log.Each organization now has an audit log of all user actions that can be exported by admins. Exported audit logs are stored on the pre-configured S3 storage.
In case you want to store exported audit logs on a separate S3 bucket, you can use the
S3_AUDIT_LOGprefixed environment variables for the configuration. -
#6234
eecd099Thanks @kamilkisiela! - Addslab.prompt(message, defaultValue)to Preflight Script API
Patch Changes
-
#6232
ff44b62Thanks @kamilkisiela! - Improvements to UI of Preflight Script (Laboratory) -
#6233
7b0c920Thanks @kamilkisiela! - Tiny UI fixes
2.0.1
Patch Changes
- #6158
3093c9fThanks @dotansimha! - Added missing index for postgres db field “schema_version_changes.schema_version_id”
2.0.0
Major Changes
-
#6142
25f1460Thanks @TuvalSimha! - Upgrade the PostgreSQL version for Docker Compose from version 14.13 to use 16.4.This change is published as major, as it requires attention based on your setup.
For self-hosters with a managed database, we recommend upgrading PostgreSQL based on your Cloud provider’s or IT’s recommendation.
For self-hosters running in Docker, you can read about upgrading PostgreSQL in a Docker container here.
The Hive data that was previously created with PostgreSQL v14 is compatible with v16.
Patch Changes
-
#6156
b6eb5d0Thanks @dotansimha! - Improvement for OTEL tracing and added missing attributes -
#6156
b6eb5d0Thanks @dotansimha! - Performance improvements for Postgres DB calls (specificallygetSchemasOfVersion, see https://github.com/graphql-hive/console/pull/6154)
1.2.4
Patch Changes
- #6138
349a67dThanks @kamilkisiela! - Prevent stripe.js from loading automatically
1.2.3
Patch Changes
-
#6115
0d7ce02Thanks @kamilkisiela! - Move information about target and organization to logger’s metadata in usage service -
#6121
6d78547Thanks @kamilkisiela! - Make optional properties optional or nullable in usage report v2 -
#6111
cffd08aThanks @kamilkisiela! - Fix a missing @join__field on a query field where @override is used, but not in all subgraphs.
1.2.2
Patch Changes
- #6065
9297f33Thanks @n1ru4l! - Allow organizations without a GitHub or Slack integration to add and manage integrations.
1.2.1
Patch Changes
-
#5945
03f08caThanks @n1ru4l! - Require “registry write” permissions for approving failed schema checks, schema versions, and the laboratory. -
#5989
a87a541Thanks @kamilkisiela! - Retry calls to Github API when creating check-runs -
#5989
a87a541Thanks @kamilkisiela! - Inform users about Github API issues when creating check runs
1.2.0
Minor Changes
Patch Changes
1.1.1
Patch Changes
- #5907
5adfb6cThanks @n1ru4l! - Remove option to remove the organization owner from the organization.
1.1.0
Minor Changes
-
#5884
8aec41aThanks @andriihrachov! - AddREDIS_TLS_ENABLEDenvironment variable for enabling and disabling Redis TLS foremails,schema,tokens,webhooksandserverservices. -
#5889
0eef5edThanks @n1ru4l! - Updatesupertokens-postgresqlto8.0.
1.0.2
Patch Changes
- #5872
580d349Thanks @kamilkisiela! - Bump @theguild/federation-composition to v0.14.1
1.0.1
Patch Changes
- #5858
11973c7Thanks @kamilkisiela! - fix: conditional breaking changes form #5852
1.0.0
This is the first officially versioned release of Hive.
While it has been available and in use for some time, this marks the introduction of formal versioning and a changelog to track future updates and improvements.