Skip to content

Commit 0b732dd

Browse files
Merge branch 'main' into miklos/fix-sentry-controlplane-autoinstrument
2 parents 480362a + ff356c2 commit 0b732dd

File tree

66 files changed

+12771
-8373
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

66 files changed

+12771
-8373
lines changed

cli/CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,12 @@ Binaries are attached to the github release otherwise all images can be found [h
44
All notable changes to this project will be documented in this file.
55
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
66

7+
# [0.94.0](https://github.com/wundergraph/cosmo/compare/wgc@0.93.6...wgc@0.94.0) (2025-10-10)
8+
9+
### Features
10+
11+
* disallow reviewing proposals not created by Cosmo ([#2218](https://github.com/wundergraph/cosmo/issues/2218)) ([d4aee49](https://github.com/wundergraph/cosmo/commit/d4aee4905c1a3f1d409c3892621a0d2a1ce8d147)) (@wilsonrivera)
12+
713
## [0.93.6](https://github.com/wundergraph/cosmo/compare/wgc@0.93.5...wgc@0.93.6) (2025-10-06)
814

915
**Note:** Version bump only for package wgc

cli/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "wgc",
3-
"version": "0.93.6",
3+
"version": "0.94.0",
44
"description": "The official CLI tool to manage the GraphQL Federation Platform Cosmo",
55
"type": "module",
66
"main": "dist/src/index.js",

cli/src/commands/proposal/commands/create.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { Command, program } from 'commander';
22
import ora from 'ora';
33
import pc from 'picocolors';
4-
import { ProposalNamingConvention } from '@wundergraph/cosmo-connect/dist/platform/v1/platform_pb';
4+
import { ProposalNamingConvention, ProposalOrigin } from '@wundergraph/cosmo-connect/dist/platform/v1/platform_pb';
55
import { getBaseHeaders } from '../../../core/config.js';
66
import { BaseCommandOptions } from '../../../core/types/types.js';
77
import { handleProposalResult } from '../../../handle-proposal-result.js';
@@ -80,6 +80,7 @@ export default (opts: BaseCommandOptions) => {
8080
name,
8181
subgraphs,
8282
namingConvention: ProposalNamingConvention.NORMAL,
83+
origin: ProposalOrigin.INTERNAL,
8384
},
8485
{
8586
headers: getBaseHeaders(),

composition-go/index.global.js

Lines changed: 148 additions & 148 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

composition/CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,12 @@ Binaries are attached to the github release otherwise all images can be found [h
44
All notable changes to this project will be documented in this file.
55
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
66

7+
## [0.46.3](https://github.com/wundergraph/cosmo/compare/@wundergraph/composition@0.46.2...@wundergraph/composition@0.46.3) (2025-10-10)
8+
9+
### Bug Fixes
10+
11+
* propagate [@openfed](https://github.com/openfed)__requireFetchReasons on Interfaces ([#2256](https://github.com/wundergraph/cosmo/issues/2256)) ([2a31f95](https://github.com/wundergraph/cosmo/commit/2a31f95f2c184bab5f9b02fef27ba2961c9f9e8c)) (@Aenimus)
12+
713
## [0.46.2](https://github.com/wundergraph/cosmo/compare/@wundergraph/composition@0.46.1...@wundergraph/composition@0.46.2) (2025-10-03)
814

915
**Note:** Version bump only for package @wundergraph/composition

composition/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@wundergraph/composition",
3-
"version": "0.46.2",
3+
"version": "0.46.3",
44
"author": {
55
"name": "WunderGraph Maintainers",
66
"email": "info@wundergraph.com"

composition/src/ast/utils.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -289,3 +289,7 @@ export type ObjectTypeNode = ObjectTypeDefinitionNode | ObjectTypeExtensionNode;
289289
export type ScalarTypeNode = ScalarTypeDefinitionNode | ScalarTypeExtensionNode;
290290
export type SchemaNode = SchemaDefinitionNode | SchemaExtensionNode;
291291
export type UnionTypeNode = UnionTypeDefinitionNode | UnionTypeExtensionNode;
292+
293+
export type InterfaceNodeKind = Kind.INTERFACE_TYPE_DEFINITION | Kind.INTERFACE_TYPE_EXTENSION;
294+
export type ObjectNodeKind = Kind.OBJECT_TYPE_DEFINITION | Kind.OBJECT_TYPE_EXTENSION;
295+
export type CompositeOutputNodeKind = InterfaceNodeKind | ObjectNodeKind;

composition/src/schema-building/types.ts

Lines changed: 78 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ import {
2525
import { FieldSetConditionData } from '../router-configuration/types';
2626
import { KeyFieldSetData } from '../v1/normalization/types';
2727
import { InputNodeKind, OutputNodeKind } from '../utils/types';
28-
import { FieldName, SubgraphName } from '../types/types';
28+
import { DirectiveName, FieldName, SubgraphName, TypeName } from '../types/types';
2929

3030
export type ArgumentData = {
3131
name: string;
@@ -39,7 +39,7 @@ export type ConfigureDescriptionData = {
3939
};
4040

4141
export type DirectiveDefinitionData = {
42-
argumentTypeNodeByArgumentName: Map<string, ArgumentData>;
42+
argumentTypeNodeByName: Map<string, ArgumentData>;
4343
isRepeatable: boolean;
4444
locations: Set<string>;
4545
name: string;
@@ -57,30 +57,30 @@ export enum ExtensionType {
5757

5858
export type EnumDefinitionData = {
5959
appearances: number;
60-
configureDescriptionDataBySubgraphName: Map<string, ConfigureDescriptionData>;
61-
directivesByDirectiveName: Map<string, Array<ConstDirectiveNode>>;
62-
enumValueDataByValueName: Map<string, EnumValueData>;
60+
configureDescriptionDataBySubgraphName: Map<SubgraphName, ConfigureDescriptionData>;
61+
directivesByDirectiveName: Map<DirectiveName, Array<ConstDirectiveNode>>;
62+
enumValueDataByName: Map<string, EnumValueData>;
6363
extensionType: ExtensionType;
6464
isInaccessible: boolean;
6565
kind: Kind.ENUM_TYPE_DEFINITION;
6666
name: string;
6767
node: MutableEnumNode;
6868
persistedDirectivesData: PersistedDirectivesData;
69-
subgraphNames: Set<string>;
69+
subgraphNames: Set<SubgraphName>;
7070
description?: StringValueNode;
7171
};
7272

7373
export type EnumValueData = {
7474
appearances: number;
75-
configureDescriptionDataBySubgraphName: Map<string, ConfigureDescriptionData>;
76-
directivesByDirectiveName: Map<string, Array<ConstDirectiveNode>>;
75+
configureDescriptionDataBySubgraphName: Map<SubgraphName, ConfigureDescriptionData>;
76+
directivesByDirectiveName: Map<DirectiveName, Array<ConstDirectiveNode>>;
7777
federatedCoords: string;
7878
kind: Kind.ENUM_VALUE_DEFINITION;
7979
name: string;
8080
node: MutableEnumValueNode;
81-
parentTypeName: string;
81+
parentTypeName: TypeName;
8282
persistedDirectivesData: PersistedDirectivesData;
83-
subgraphNames: Set<string>;
83+
subgraphNames: Set<SubgraphName>;
8484
description?: StringValueNode;
8585
};
8686

@@ -96,145 +96,146 @@ export type ExternalFieldData = {
9696

9797
export type FieldData = {
9898
argumentDataByName: Map<string, InputValueData>;
99-
configureDescriptionDataBySubgraphName: Map<string, ConfigureDescriptionData>;
100-
directivesByDirectiveName: Map<string, Array<ConstDirectiveNode>>;
101-
externalFieldDataBySubgraphName: Map<string, ExternalFieldData>;
99+
configureDescriptionDataBySubgraphName: Map<SubgraphName, ConfigureDescriptionData>;
100+
directivesByDirectiveName: Map<DirectiveName, Array<ConstDirectiveNode>>;
101+
externalFieldDataBySubgraphName: Map<SubgraphName, ExternalFieldData>;
102102
federatedCoords: string;
103-
inheritedDirectiveNames: Set<string>;
103+
inheritedDirectiveNames: Set<DirectiveName>;
104104
isInaccessible: boolean;
105105
isShareableBySubgraphName: Map<SubgraphName, boolean>;
106106
kind: Kind.FIELD_DEFINITION;
107-
name: string;
107+
name: FieldName;
108108
namedTypeKind: OutputNodeKind | Kind.NULL;
109-
namedTypeName: string;
109+
namedTypeName: TypeName;
110110
node: MutableFieldNode;
111111
nullLevelsBySubgraphName: Map<SubgraphName, Set<number>>;
112-
originalParentTypeName: string;
112+
originalParentTypeName: TypeName;
113113
persistedDirectivesData: PersistedDirectivesData;
114-
renamedParentTypeName: string;
114+
renamedParentTypeName: TypeName;
115115
subgraphNames: Set<SubgraphName>;
116116
type: MutableTypeNode;
117117
description?: StringValueNode;
118118
};
119119

120120
export type InputObjectDefinitionData = {
121-
configureDescriptionDataBySubgraphName: Map<string, ConfigureDescriptionData>;
122-
directivesByDirectiveName: Map<string, Array<ConstDirectiveNode>>;
121+
configureDescriptionDataBySubgraphName: Map<SubgraphName, ConfigureDescriptionData>;
122+
directivesByDirectiveName: Map<DirectiveName, Array<ConstDirectiveNode>>;
123123
extensionType: ExtensionType;
124-
inputValueDataByName: Map<string, InputValueData>;
124+
inputValueDataByName: Map<FieldName, InputValueData>;
125125
isInaccessible: boolean;
126126
kind: Kind.INPUT_OBJECT_TYPE_DEFINITION;
127-
name: string;
127+
name: TypeName;
128128
node: MutableInputObjectNode;
129129
persistedDirectivesData: PersistedDirectivesData;
130-
subgraphNames: Set<string>;
130+
subgraphNames: Set<SubgraphName>;
131131
description?: StringValueNode;
132132
};
133133

134134
export type InputValueData = {
135-
configureDescriptionDataBySubgraphName: Map<string, ConfigureDescriptionData>;
136-
directivesByDirectiveName: Map<string, Array<ConstDirectiveNode>>;
135+
configureDescriptionDataBySubgraphName: Map<SubgraphName, ConfigureDescriptionData>;
136+
directivesByDirectiveName: Map<DirectiveName, Array<ConstDirectiveNode>>;
137137
federatedCoords: string;
138138
includeDefaultValue: boolean;
139139
isArgument: boolean;
140140
kind: Kind.ARGUMENT | Kind.INPUT_VALUE_DEFINITION;
141-
name: string;
141+
name: FieldName;
142142
namedTypeKind: InputNodeKind | Kind.NULL;
143-
namedTypeName: string;
143+
namedTypeName: TypeName;
144144
node: MutableInputValueNode;
145145
originalCoords: string;
146-
originalParentTypeName: string;
146+
originalParentTypeName: TypeName;
147147
persistedDirectivesData: PersistedDirectivesData;
148-
renamedParentTypeName: string;
149-
requiredSubgraphNames: Set<string>;
150-
subgraphNames: Set<string>;
148+
renamedParentTypeName: TypeName;
149+
requiredSubgraphNames: Set<SubgraphName>;
150+
subgraphNames: Set<SubgraphName>;
151151
type: MutableTypeNode;
152152
defaultValue?: ConstValueNode;
153153
description?: StringValueNode;
154-
fieldName?: string;
154+
fieldName?: FieldName;
155155
};
156156

157157
export type InterfaceDefinitionData = {
158-
configureDescriptionDataBySubgraphName: Map<string, ConfigureDescriptionData>;
159-
directivesByDirectiveName: Map<string, Array<ConstDirectiveNode>>;
158+
configureDescriptionDataBySubgraphName: Map<SubgraphName, ConfigureDescriptionData>;
159+
directivesByDirectiveName: Map<DirectiveName, Array<ConstDirectiveNode>>;
160160
extensionType: ExtensionType;
161-
fieldDataByName: Map<string, FieldData>;
162-
implementedInterfaceTypeNames: Set<string>;
161+
fieldDataByName: Map<FieldName, FieldData>;
162+
implementedInterfaceTypeNames: Set<TypeName>;
163163
isEntity: boolean;
164164
isInaccessible: boolean;
165165
kind: Kind.INTERFACE_TYPE_DEFINITION;
166-
name: string;
166+
name: TypeName;
167167
node: MutableInterfaceNode;
168168
persistedDirectivesData: PersistedDirectivesData;
169-
subgraphNames: Set<string>;
169+
requireFetchReasonsFieldNames: Set<FieldName>;
170+
subgraphNames: Set<SubgraphName>;
170171
description?: StringValueNode;
171172
};
172173

173174
export type ObjectDefinitionData = {
174-
configureDescriptionDataBySubgraphName: Map<string, ConfigureDescriptionData>;
175-
directivesByDirectiveName: Map<string, Array<ConstDirectiveNode>>;
175+
configureDescriptionDataBySubgraphName: Map<SubgraphName, ConfigureDescriptionData>;
176+
directivesByDirectiveName: Map<DirectiveName, Array<ConstDirectiveNode>>;
176177
extensionType: ExtensionType;
177178
fieldDataByName: Map<FieldName, FieldData>;
178-
implementedInterfaceTypeNames: Set<string>;
179+
implementedInterfaceTypeNames: Set<TypeName>;
179180
isEntity: boolean;
180181
isInaccessible: boolean;
181182
isRootType: boolean;
182183
kind: Kind.OBJECT_TYPE_DEFINITION;
183-
name: string;
184+
name: TypeName;
184185
node: MutableObjectNode;
185186
persistedDirectivesData: PersistedDirectivesData;
186-
renamedTypeName: string;
187+
renamedTypeName: TypeName;
187188
requireFetchReasonsFieldNames: Set<FieldName>;
188-
subgraphNames: Set<string>;
189+
subgraphNames: Set<SubgraphName>;
189190
description?: StringValueNode;
190191
};
191192

192193
export type PersistedDirectiveDefinitionData = {
193-
argumentDataByArgumentName: Map<string, InputValueData>;
194+
argumentDataByName: Map<string, InputValueData>;
194195
executableLocations: Set<string>;
195-
name: string;
196+
name: DirectiveName;
196197
repeatable: boolean;
197-
subgraphNames: Set<string>;
198+
subgraphNames: Set<SubgraphName>;
198199
description?: StringValueNode;
199200
};
200201

201202
export type PersistedDirectivesData = {
202203
deprecatedReason: string;
203-
directivesByDirectiveName: Map<string, Array<ConstDirectiveNode>>;
204+
directivesByDirectiveName: Map<DirectiveName, Array<ConstDirectiveNode>>;
204205
isDeprecated: boolean;
205206
tagDirectiveByName: Map<string, ConstDirectiveNode>;
206207
};
207208

208209
export type ScalarDefinitionData = {
209-
configureDescriptionDataBySubgraphName: Map<string, ConfigureDescriptionData>;
210-
directivesByDirectiveName: Map<string, Array<ConstDirectiveNode>>;
210+
configureDescriptionDataBySubgraphName: Map<SubgraphName, ConfigureDescriptionData>;
211+
directivesByDirectiveName: Map<DirectiveName, Array<ConstDirectiveNode>>;
211212
extensionType: ExtensionType;
212213
kind: Kind.SCALAR_TYPE_DEFINITION;
213-
name: string;
214+
name: TypeName;
214215
node: MutableScalarNode;
215216
persistedDirectivesData: PersistedDirectivesData;
216-
subgraphNames: Set<string>;
217+
subgraphNames: Set<SubgraphName>;
217218
description?: StringValueNode;
218219
};
219220

220221
export type SchemaData = {
221-
directivesByDirectiveName: Map<string, Array<ConstDirectiveNode>>;
222+
directivesByDirectiveName: Map<DirectiveName, Array<ConstDirectiveNode>>;
222223
kind: Kind.SCHEMA_DEFINITION;
223224
name: string;
224225
operationTypes: Map<OperationTypeNode, OperationTypeDefinitionNode>;
225226
description?: StringValueNode;
226227
};
227228

228229
export type UnionDefinitionData = {
229-
configureDescriptionDataBySubgraphName: Map<string, ConfigureDescriptionData>;
230-
directivesByDirectiveName: Map<string, Array<ConstDirectiveNode>>;
230+
configureDescriptionDataBySubgraphName: Map<SubgraphName, ConfigureDescriptionData>;
231+
directivesByDirectiveName: Map<DirectiveName, Array<ConstDirectiveNode>>;
231232
extensionType: ExtensionType;
232233
kind: Kind.UNION_TYPE_DEFINITION;
233-
name: string;
234-
memberByMemberTypeName: Map<string, NamedTypeNode>;
234+
name: TypeName;
235+
memberByMemberTypeName: Map<TypeName, NamedTypeNode>;
235236
node: MutableUnionNode;
236237
persistedDirectivesData: PersistedDirectivesData;
237-
subgraphNames: Set<string>;
238+
subgraphNames: Set<SubgraphName>;
238239
description?: StringValueNode;
239240
};
240241

@@ -268,28 +269,28 @@ export type EntityData = {
268269
// If propagated in documentNodeByKeyFieldSet, at least one subgraph defines a resolvable key with this field set.
269270
documentNodeByKeyFieldSet: Map<string, DocumentNode>;
270271
keyFieldSets: Set<string>;
271-
keyFieldSetDatasBySubgraphName: Map<string, Map<string, KeyFieldSetData>>;
272-
subgraphNames: Set<string>;
273-
typeName: string;
272+
keyFieldSetDatasBySubgraphName: Map<SubgraphName, Map<string, KeyFieldSetData>>;
273+
subgraphNames: Set<SubgraphName>;
274+
typeName: TypeName;
274275
};
275276

276277
export type SimpleFieldData = {
277-
name: string;
278-
namedTypeName: string;
278+
name: FieldName;
279+
namedTypeName: TypeName;
279280
};
280281

281282
export type EntityInterfaceSubgraphData = {
282-
concreteTypeNames: Set<string>;
283+
concreteTypeNames: Set<TypeName>;
283284
fieldDatas: Array<SimpleFieldData>;
284-
interfaceFieldNames: Set<string>;
285-
interfaceObjectFieldNames: Set<string>;
285+
interfaceFieldNames: Set<FieldName>;
286+
interfaceObjectFieldNames: Set<FieldName>;
286287
isInterfaceObject: boolean;
287288
resolvable: boolean;
288-
typeName: string;
289+
typeName: TypeName;
289290
};
290291

291292
export type FieldAuthorizationData = {
292-
fieldName: string;
293+
fieldName: FieldName;
293294
inheritedData: InheritedAuthorizationData;
294295
originalData: OriginalAuthorizationData;
295296
};
@@ -306,11 +307,11 @@ export type OriginalAuthorizationData = {
306307
};
307308

308309
export type AuthorizationData = {
309-
fieldAuthDataByFieldName: Map<string, FieldAuthorizationData>;
310+
fieldAuthDataByFieldName: Map<FieldName, FieldAuthorizationData>;
310311
requiredScopes: Array<Set<string>>;
311312
requiredScopesByOR: Array<Set<string>>;
312313
requiresAuthentication: boolean;
313-
typeName: string;
314+
typeName: TypeName;
314315
};
315316

316317
export type ConditionalFieldData = {
@@ -319,11 +320,11 @@ export type ConditionalFieldData = {
319320
};
320321

321322
export type EntityInterfaceFederationData = {
322-
concreteTypeNames: Set<string>;
323-
fieldDatasBySubgraphName: Map<string, Array<SimpleFieldData>>;
324-
interfaceFieldNames: Set<string>;
325-
interfaceObjectFieldNames: Set<string>;
326-
interfaceObjectSubgraphs: Set<string>;
327-
subgraphDataByTypeName: Map<string, EntityInterfaceSubgraphData>;
328-
typeName: string;
323+
concreteTypeNames: Set<TypeName>;
324+
fieldDatasBySubgraphName: Map<SubgraphName, Array<SimpleFieldData>>;
325+
interfaceFieldNames: Set<FieldName>;
326+
interfaceObjectFieldNames: Set<FieldName>;
327+
interfaceObjectSubgraphNames: Set<SubgraphName>;
328+
subgraphDataByTypeName: Map<TypeName, EntityInterfaceSubgraphData>;
329+
typeName: TypeName;
329330
};

0 commit comments

Comments
 (0)