DEV Community

Cover image for Integration Digest for January 2025
Stanislav Deviatov
Stanislav Deviatov

Posted on • Originally published at linkedin.com

Integration Digest for January 2025

Articles

🔍 2025 is the year of GraphQL error handling!

This article discusses upcoming changes in GraphQL error handling, effective January 2025. It highlights the requirement for GraphQL servers to adopt the application/graphql-response+json content type, replacing the traditional application/json type. This change aims to address ambiguities between GraphQL and non-GraphQL server responses.

🔍 Build API clients with Microsoft Kiota

This article introduces Microsoft Kiota, a tool designed to automate the development of API clients using OpenAPI definitions. It supports multiple programming languages and toolchains, generating standardized client code to simplify development. The tool also provides basic JSON payload handling and allows developers to select specific elements of an OpenAPI description for implementation.

🔍 OpenAPI is hard

This article explores the challenges of working with OpenAPI specifications and the complexities involved in building tools to manage them. It highlights the development of the OpenAPI Doctor, a system designed to handle intricate OpenAPI features such as reference navigation and visualization. The article explains that OpenAPI's complexity arises from its integration of multiple standards like YAML, JSON, and JSON Schema.

🔍 Optimizing Large Payloads for Sync/Async Communications

This article examines strategies for optimizing large payloads in synchronous and asynchronous communication within microservices architectures. It provides technical insights into methods like HTTP compression, pagination, and streaming in Spring Boot, as well as payload optimization techniques for Kafka and RabbitMQ, including chunking, compression, and external storage solutions.

🔍 Save edits to OpenAPI as an Overlay

This article explains how the OpenAPI Overlay Specification helps teams retain changes made to generated OpenAPI files. It demonstrates how overlays can store modifications to OpenAPI documents and outlines the process of creating and applying overlays using tools like Speakeasy CLI, enabling teams to manage enriched content alongside generated API documentation.

🔍 The MOIST Principle for GraphQL Schema Design

This article introduces the MOIST (Mitigate the Overuse of Illusory Shared Types) principle for GraphQL schema design. It advocates for using context-specific types instead of overusing shared types, explaining how this approach can improve API evolution and authorization while avoiding potential issues caused by excessive type sharing.

🔍 The best API conferences to attend in 2025

This article provides an overview of notable API conferences scheduled for 2025, including events like API World, KubeCon, and various apidays conferences held in locations such as Singapore and Paris.

🔍 The Top 10 Mistakes Developers Make When Writing APIs (And How to Fix Them)

This article highlights ten common mistakes developers make when building APIs, such as inadequate documentation, lack of versioning, and insufficient error handling. It offers practical solutions and best practices to help developers create more reliable and user-friendly APIs.

🔍 Wherefore HATEOAS

This article explores the concept of Hypermedia as the Engine of Application State (HATEOAS) in API design. It discusses how HATEOAS enables dynamic API capabilities through hypermedia links and facilitates client-server decoupling. The article also addresses challenges in implementing HATEOAS for general-purpose APIs and the complexities of client-side handling.

🔍 Working with AsyncAPI documents locally

This article reviews tools and methods for working with AsyncAPI documents in local environments. It compares approaches such as using plain IDEs with SchemaStore integration, IDE plugins/extensions for AsyncAPI, and the AsyncAPI CLI, highlighting their respective benefits for validation, preview, and document management.

Apache Kafka

🔍 Kafka Streams 101: Windows & Time

This article explains the concepts of time and windowing in Kafka Streams, covering types of time (Stream Time, Event Time, and Wall Time) and window types (Tumbling, Hopping, Session, and Sliding). It also discusses how late-arriving records are managed and provides guidance on implementing Time to Live (TTL) and handling out-of-order events.

🔍 How Does Kafka Log Compaction Work?

This article provides an overview of Kafka Log Compaction, a data retention mechanism that keeps the latest value for each message key while removing outdated values. It explains how the process works by scanning logs and preserving the most recent records, making it useful for maintaining current state data like database updates or configuration settings.

🔍 Why is Apache Kafka® Tiered Storage more like a dam than a fountain? Part 3: Kafka time and space

This article explores how Apache Kafka handles time and space, including event time, ingestion time, and processing time. It discusses Kafka's tiered storage architecture, which enables efficient storage of historical data on cloud platforms, allowing for longer retention periods and features like record replay and time travel.

🔍 Why is Apache Kafka® Tiered Storage more like a dam than a fountain? Part 4: Tiered Storage use cases

This article examines use cases for Kafka Tiered Storage, focusing on how it supports different consumer behaviors, such as real-time processing and record replay. It highlights how tiered storage enables longer data retention and facilitates scenarios like event sourcing and cluster migration.

Mulesoft

🔍 DataWeave Done Right: Best Practices for Reusability

This article outlines best practices for writing reusable code in DataWeave, MuleSoft's scripting language. It emphasizes techniques like using functions, modules, and dynamic flow references to improve code efficiency and maintainability, while providing practical examples and guidelines for implementation.

WSO2

🔍 Introducing Database Connections in Choreo

This article introduces Choreo's new database connections feature, which simplifies application-database integration by automating parameter management and offering environment-specific configurations. It highlights how this feature reduces manual effort and minimizes configuration errors while ensuring secure access control.

Releases

🚀 Gravitee 4.6

The Gravitee 4.6 release includes significant updates such as the Gravitee Kafka Gateway for managing Kafka infrastructure, enhanced secrets management, and OpenTelemetry support for improved observability. The release focuses on strengthening security, improving API governance, and bridging traditional APIs with modern event-driven systems.

🚀 Microcks 1.11

The Microcks 1.11.0 release introduces new features like enhanced validation for mocks, gRPC error management, and improvements to software supply chain security. It also includes automated release processes, SBOM generation, and package signing, addressing over 60 issues with contributions from 12 developers.

Top comments (0)