Skip to content

Commit 36effb1

Browse files
authored
Merge pull request #168 from grafbase/brabier/lkznnvqkynmk
update SDK to 0.21
2 parents c28c9be + ac5cea4 commit 36effb1

File tree

36 files changed

+211
-153
lines changed

36 files changed

+211
-153
lines changed

.github/workflows/pull-request.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,8 @@ jobs:
5555
strategy:
5656
matrix:
5757
version:
58-
- gateway: "0.46.0"
59-
cli: "0.101.0"
58+
- gateway: "0.47.1"
59+
cli: "0.102.1"
6060
env:
6161
RUSTFLAGS: -D warnings
6262
steps:

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
target
2+
.claude
23

34
# Devenv
45
.devenv*

Cargo.lock

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

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,7 @@ futures-util = "0.3.31"
6969
fxhash = "0.2.1"
7070
grafbase-database-definition = { version = "0.1.0", path = "crates/database-definition" }
7171
grafbase-postgres-introspection = { version = "0.1.0", path = "crates/postgres-introspection" }
72-
grafbase-sdk = "0.20"
72+
grafbase-sdk = "0.21.1"
7373
hashbrown = "0.15"
7474
http = "1.3"
7575
indexmap = "2.9.0"

cli/protoc-gen-grafbase-subgraph/src/main.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -105,10 +105,10 @@ fn is_valid_subgraph_name(name: &str) -> bool {
105105
let mut chars = name.chars();
106106

107107
// First character must be a letter
108-
if let Some(first) = chars.next() {
109-
if !first.is_ascii_alphabetic() {
110-
return false;
111-
}
108+
if let Some(first) = chars.next()
109+
&& !first.is_ascii_alphabetic()
110+
{
111+
return false;
112112
}
113113

114114
// Remaining characters must be letters, digits, or hyphens

cli/protoc-gen-grafbase-subgraph/src/schema/records.rs

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -268,17 +268,17 @@ impl ProtoMethod {
268268
}
269269

270270
// Priority 2: Method-level override for query
271-
if let Some(is_query) = self.is_query {
272-
if is_query {
273-
return GraphQLOperationType::Query;
274-
}
271+
if let Some(is_query) = self.is_query
272+
&& is_query
273+
{
274+
return GraphQLOperationType::Query;
275275
}
276276

277277
// Priority 2: Method-level override for mutation
278-
if let Some(is_mutation) = self.is_mutation {
279-
if is_mutation {
280-
return GraphQLOperationType::Mutation;
281-
}
278+
if let Some(is_mutation) = self.is_mutation
279+
&& is_mutation
280+
{
281+
return GraphQLOperationType::Mutation;
282282
}
283283

284284
// Priority 3: Service-level default

cli/protoc-gen-grafbase-subgraph/src/translate_schema.rs

Lines changed: 35 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -418,60 +418,57 @@ fn extract_message_graphql_directives_from_options(message: &DescriptorProto, tr
418418
use protobuf::Message;
419419
if let Ok(derive_field_proto) =
420420
crate::options_proto::options::DeriveField::parse_from_bytes(bytes)
421+
&& derive_field_proto.has_entity()
421422
{
422-
if derive_field_proto.has_entity() {
423-
translated_message.derive_fields.push(crate::schema::DeriveField {
424-
entity: derive_field_proto.entity().to_owned(),
425-
name: if derive_field_proto.has_name() {
426-
Some(derive_field_proto.name().to_owned())
427-
} else {
428-
None
429-
},
430-
is: if derive_field_proto.has_is() {
431-
match derive::extract_is(derive_field_proto.is()) {
432-
Ok(is) => Some(is),
433-
Err(err) => {
434-
eprintln!("Error reading derive_field.is at {}: {err}", message.name());
435-
None
436-
}
423+
translated_message.derive_fields.push(crate::schema::DeriveField {
424+
entity: derive_field_proto.entity().to_owned(),
425+
name: if derive_field_proto.has_name() {
426+
Some(derive_field_proto.name().to_owned())
427+
} else {
428+
None
429+
},
430+
is: if derive_field_proto.has_is() {
431+
match derive::extract_is(derive_field_proto.is()) {
432+
Ok(is) => Some(is),
433+
Err(err) => {
434+
eprintln!("Error reading derive_field.is at {}: {err}", message.name());
435+
None
437436
}
438-
} else {
439-
None
440-
},
441-
});
442-
}
437+
}
438+
} else {
439+
None
440+
},
441+
});
443442
}
444443
}
445444
}
446445
KEY => {
447446
if let protobuf::UnknownValueRef::LengthDelimited(bytes) = value {
448447
use protobuf::Message;
449-
if let Ok(key_proto) = crate::options_proto::options::Key::parse_from_bytes(bytes) {
450-
if key_proto.has_fields() {
451-
translated_message.keys.push(crate::schema::Key {
452-
fields: key_proto.fields().to_owned(),
453-
});
454-
}
448+
if let Ok(key_proto) = crate::options_proto::options::Key::parse_from_bytes(bytes)
449+
&& key_proto.has_fields()
450+
{
451+
translated_message.keys.push(crate::schema::Key {
452+
fields: key_proto.fields().to_owned(),
453+
});
455454
}
456455
}
457456
}
458457
JOIN_FIELD => {
459458
if let protobuf::UnknownValueRef::LengthDelimited(bytes) = value {
460459
use protobuf::Message;
461460
if let Ok(join_field_proto) = crate::options_proto::options::JoinField::parse_from_bytes(bytes)
461+
&& join_field_proto.has_name()
462+
&& join_field_proto.has_service()
463+
&& join_field_proto.has_method()
464+
&& join_field_proto.has_require()
462465
{
463-
if join_field_proto.has_name()
464-
&& join_field_proto.has_service()
465-
&& join_field_proto.has_method()
466-
&& join_field_proto.has_require()
467-
{
468-
translated_message.join_fields.push(crate::schema::JoinField {
469-
name: join_field_proto.name().to_owned(),
470-
service: join_field_proto.service().to_owned(),
471-
method: join_field_proto.method().to_owned(),
472-
require: join_field_proto.require().to_owned(),
473-
});
474-
}
466+
translated_message.join_fields.push(crate::schema::JoinField {
467+
name: join_field_proto.name().to_owned(),
468+
service: join_field_proto.service().to_owned(),
469+
method: join_field_proto.method().to_owned(),
470+
require: join_field_proto.require().to_owned(),
471+
});
475472
}
476473
}
477474
}

crates/postgres-introspection/src/render/tables.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -173,10 +173,10 @@ fn render_column<'a>(render: &mut Type<'a>, table: TableWalker<'a>, column: Tabl
173173
directive.push_argument(Argument::string("name", column.database_name()));
174174
directive.push_argument(Argument::constant("type", column.database_type().as_str()));
175175

176-
if let DatabaseType::Enum(r#enum) = column.database_type() {
177-
if r#enum.schema() != table.schema() {
178-
directive.push_argument(Argument::string("enumSchema", r#enum.schema()));
179-
}
176+
if let DatabaseType::Enum(r#enum) = column.database_type()
177+
&& r#enum.schema() != table.schema()
178+
{
179+
directive.push_argument(Argument::string("enumSchema", r#enum.schema()));
180180
}
181181

182182
directive

crates/sql-ast/src/renderer/postgres.rs

Lines changed: 15 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -160,12 +160,12 @@ impl Renderer {
160160
None => (),
161161
}
162162

163-
if let Some(returning) = insert.returning {
164-
if !returning.is_empty() {
165-
let values = returning.into_iter().map(|r| r.into()).collect();
166-
self.write(" RETURNING ");
167-
self.visit_columns(values);
168-
}
163+
if let Some(returning) = insert.returning
164+
&& !returning.is_empty()
165+
{
166+
let values = returning.into_iter().map(|r| r.into()).collect();
167+
self.write(" RETURNING ");
168+
self.visit_columns(values);
169169
};
170170
}
171171

@@ -738,12 +738,12 @@ impl Renderer {
738738
self.visit_conditions(conditions);
739739
}
740740

741-
if let Some(returning) = update.returning {
742-
if !returning.is_empty() {
743-
let values = returning.into_iter().map(|r| r.into()).collect();
744-
self.write(" RETURNING ");
745-
self.visit_columns(values);
746-
}
741+
if let Some(returning) = update.returning
742+
&& !returning.is_empty()
743+
{
744+
let values = returning.into_iter().map(|r| r.into()).collect();
745+
self.write(" RETURNING ");
746+
self.visit_columns(values);
747747
}
748748
}
749749

@@ -945,11 +945,9 @@ impl Renderer {
945945
}
946946
};
947947

948-
if include_alias {
949-
if let Some(alias) = table.alias {
950-
self.visit_alias(alias);
951-
};
952-
}
948+
if include_alias && let Some(alias) = table.alias {
949+
self.visit_alias(alias);
950+
};
953951
}
954952

955953
/// A database column identifier

extensions/authenticated/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "authenticated"
3-
version = "1.0.0"
3+
version = "1.1.0"
44
edition = "2024"
55
license = "Apache-2.0"
66
publish = false

0 commit comments

Comments
 (0)