Skip to content

Release 0.29.0

See GitHub Release.

Features

  • Adjust class graph result cache expiration time according to the service environment (0bf7cc90) by @junjinp
  • Adds ConnectionTypeStructureRule, ConnectionEdgeStructureRule, Connec…tionPageInfoRule, and ConnectionArgumentsNullabilityRule covering: @connection must have edges (@edge type) and non-null pageInfo; (d6d6df13) by @kristileka
  • Validation based on KSP. (1d8ece05) by @gokhan-ozgozen
  • Add include_node_definition flag to GenerateDefaultSchema (ac50ef02) by @viaduct-maintainers
  • Replace reflection-based POJO population with a wrapping pattern for Java GRTs, mirroring Kotlin's ObjectBase/InputLikeBase architecture. (7dc205b3) by @catacraciun
  • Instrument resolveSelectionSet results with InstrumentedEngineExecutionContext (ace367b7) by @vickeyyeh
  • Migrates connections feature app to contract (8def936e) by @kristileka
  • Add resolveSelectionSetAsync and extract executeSelectionSet helper (a09b9628) by @catacraciun
  • Migrate TenantAPIBootstrapper, TenantPackageFiltering, and PolicyCheck to contract tests (2cf4e97b) by @rstata
  • Migrate tutorial tests to contract tests (850ca6cb) by @rstata
  • Add RootCompositeField reflective type for factory functions (9a213c71) by @amity177
  • Add IValidator interface to tenant validation package (f31ae524) by @gokhan-ozgozen
  • Add NoCustomDirectivesRule to reject custom directive definitions in schemas (79915b6c) by @kristileka
  • Migrate simple feature-app tests to contract tests (8fea4f3e) by @rstata
  • Extract @TestSchema schemas from compiled bytecode via ASM (955810db) by @rstata
  • Publisher/consumer contract test codegen with Java GRT scalar fixes (482bf24e) by @rstata

Bug Fixes

  • Enforce exception attribution at executor SPI boundaries (c3334f47) by @fireboy1919
  • Implement valueToLiteral on DateTimeScalar to fix NPE when used as variable argument (40c99e5b) by @vickeyyeh
  • Prevent generated schemas from introducing circular directive dependencies (6570ca19) by @jbellenger
  • Fix instrumentation parity for getObjectValue()/getQueryValue() callers (c6b9aa34) by @vickeyyeh

Testing

  • Migrate BatchResolverErrorHandling to full contract test and add guiceModules() hook (7e1ca467) by @rstata
  • Migrate RootTypesSchemaClause to full contract test (23c90077) by @rstata
  • Migrate last two schema-holder feature-app tests to testFixtures (cf834f17) by @rstata
  • Create contract test base class hierarchy (1322d246) by @rstata
  • Migrate FeatureTestSchema to @TestSchema contract (03eead2e) by @rstata

Refactoring

  • Enforce exactly-one-parent constraint on @namespaceType using ViaductReverseSchema.inboundFields (69d9ef08) by @amity177
  • Gate sync value computation at ResolverDataFetcher, remove SyncFieldResolverDispatcher (b6ea487f) by @vickeyyeh
  • Introduce InternalEngineExecutionContext to decouple asImpl() from concrete class (60c06e5a) by @vickeyyeh
  • Move @TestSchema annotation and migrate ApiTestSchema (3b562625) by @rstata

Chores

  • Remove redundant schema objects jar repacking in schema bytecode generation (f9fe565c) by @njlynch

Build System

  • Harden CI workflows with permissions, concurrency and pinned action SHAs (6b1e9b9b) by @geovannefduarte
  • Add publish-branch.yml atomic workflow for snapshot and release publication (#316) by @geovannefduarte
  • Extract alert formatting into composite action and isolate Python tests (#315) by @geovannefduarte
  • Add ci-trigger, demoapps-nightly-check and nightly-build orchestration workflows (#319) by @geovannefduarte
  • Add push-demoapps and check-published-demoapps atomic workflows (#318) by @geovannefduarte
  • Promote getObjectValue() and getQueryValue() to stable API (17171720) by @vickeyyeh
  • Add demoapps-ci-check.yml atomic workflow for demoapp CI validation (#317) by @geovannefduarte
  • Add actions:read to ci-manual-trigger permissions (c394899b) by @geovannefduarte
  • Add missing actions:read permission to orchestrator workflows (cec4a94c) by @geovannefduarte