Skip to content

Releases: marle3003/mokapi

v0.30.0

02 Dec 18:46
9fcedb3

Choose a tag to compare

🚀 Mokapi Release Notes

Kafka Improvements

  • Added XML support in Kafka for message payloads.
  • Added support for idempotent Kafka producers
  • Added Kafka record producer details to the dashboard
  • Improved Kafka client to support multiple content-types.
  • Fixed ApiVersion response handling when the Kafka client uses a newer version than the server.

AsyncAPI

  • Fixed support for referenced schemas inside components, improving compatibility with complex AsyncAPI files.

JavaScript Enhancements

  • Improved JavaScript handling for HTTP responses and shared values:
    • Response header names are now case-insensitive.
    • Better usability for response data in JS event handlers.
    • More robust shared value handling.
    • Refined HTTP response header processing.
  • Fixed response header and data processing when modified through JavaScript.
  • Improved lock mechanism for JavaScript execution.
  • Fixed JS files not being executed when loaded from Git provider.
  • Added API title to the HTTP event request parameter.
  • Improved URL object available in HTTP event request parameters.

Dashboard

  • Enhanced action log output, providing clearer visibility into actions and events.

v0.29.0

09 Nov 17:56
344681c

Choose a tag to compare

This release includes major improvements for Kafka protocol handling, enhanced dashboard usability, and better HTTP module features.

Kafka Protocol Improvements

  • Flexible versions:
    • Fixed flexible response handling for multiple APIs (FindCoordinator, JoinGroup, SyncGroup, ListGroup, Heartbeat, CreateTopics).
    • Improved compatibility with clients (e.g., Java) that expect responses in strict order — Mokapi now guarantees correct ordering according to the Kafka protocol specification.
    • Fixed reading of ReadCompactBytes in flexible versions.
  • Offset & Group Management:
    • Added new supported versions for OffsetCommit and OffsetFetch.
    • Fixed OffsetFetch protocol error.
    • Added missing ProtocolType in JoinGroup requests.
    • Fixed FindCoordinator when channels are assigned to the server.

JSON Schema & OpenAPI Fixes

  • Improved request body handling when Content-Length is set but no body is sent.
  • Fixed applying references with sibling attributes in JSON Schema.
  • Fixed null validation errors overriding other errors for nullable types ([object, null]).
  • Fixed conversion of nullable OpenAPI schemas where nullable: true without an explicit type incorrectly produced type: "null".

JavaScript HTTP Module

  • Added timeout option to JavaScript HTTP requests (supports numeric or duration string, e.g. "5m").

Dashboard

  • Added client IP address to HTTP request view.
  • Added filtering feature to the HTTP requests list.
  • Improved responsiveness and alignment in the HTTP requests table.
  • Improved display of HTTP parameters in the request view.

Configuration

  • Fixed issue preventing self-patching configurations.

v0.28.0

22 Oct 20:52
1a8fc54

Choose a tag to compare

🚀 Changes

  • Improved dashboard data updates for smoother UI experience.
  • Enhanced display of HTTP request parameters in the dashboard for better readability.

🐞 Bugfixes

  • Fixed IMAP SELECT and EXAMINE response handling.
  • Added read-only flag support for IMAP commands.
  • Corrected IMAP LOGIN command handling: previously, AuthenticatedState was not properly set in handleLogin.
  • Fixed IMAP CAPABILITY handling in authenticated state.
  • Prevented HTTP header parameters from being added to the event log twice.
  • Fixed concurrent map access in the shared store to prevent race conditions.

v0.27.2

19 Oct 19:30
f2fb2cb

Choose a tag to compare

🐞 Bugfixes

  • Faker module mapping: Fixed the mapping between Go and JavaScript structs in the mokapi/faker module when extending the data generator, ensuring consistent field access and type handling.

  • OpenAPI null reference: Resolved a null reference error that occurred when an OpenAPI operation had no responses defined.

  • Web UI parameters: Fixed incorrect handling of OpenAPI parameters in the Web UI, improving request rendering and parameter visualization.

v0.27.1

13 Oct 21:33
768f671

Choose a tag to compare

🐞 Bugfixes

  • fix data generator for (string) format: time

v0.27.0

11 Oct 17:02
07ce20a

Choose a tag to compare

🚀 Mokapi Release Notes

OpenAPI

  • Added support for OpenAPI 3.2, including:
    • QUERY and custom HTTP methods
    • Querystring parameters
  • Improved OpenAPI path table view in the dashboard
  • Fixed issue removing trailing slashes in server URLs
  • Added OpenAPI tags and filtering in the Web UI

Data Generator & JavaScript faker module

  • Added support for:
    • contains, minContains, and maxContains
    • additionalProperties
    • dependentRequired and dependentSchemas
    • patternProperties with predictable results
    • XML-based JSON Schema definitions
    • Credit card number generation
    • Introduced new CLI parameter: --data-gen-optionalProperties
    • Added consideration of schema $id and JSON pointer paths for more accurate data generation

JavaScript & Event Handling

  • Improved JavaScript event handler tracking when called console.log
  • Added JavaScript shared memory feature for storing and updating values across scripts

Improvements

  • Improved handling when schema type is missing
  • Enhanced generation for:
    • Arrays with prefixItems
    • Objects when required fields are missing in properties
    • Numeric types with default min/max values
    • Complex compositions (anyOf, allOf, oneOf) with objects
  • Adjusted probability for skipping optional properties from 0.7 → 0.85, now configurable via OptionalPropertiesProbability
  • Improved results when using schema IDs and $id references

Fixes

  • Object generation missing required fields
  • Pattern property parsing
  • JSON Schema parser for anyOf, allOf, oneOf, and objects with patternProperties
  • JSON pointer encoded characters (/ and ~)
  • Name generation consistency

Configuration & CLI

  • Fixed config watcher to correctly handle explicit reads while implicit parsing continues
  • Added --data-gen-optionalProperties CLI flag for better control of data generation behavior

Kafka

  • Changed Kafka segment creation to lazy initialization for improved performance

v0.25.4

16 Sep 21:00
9735c88

Choose a tag to compare

🚀 Changes

  • Improved config loading process

v0.25.3

15 Sep 20:06
2a0ebe6

Choose a tag to compare

🚀 Changes

  • Added support for light mode in the dashboard.

🐞 Bugfixes

  • Resolved a race condition where config listeners could run before the config was fully parsed.
  • Resolved a missing JSON support issue for Kafka bindings.
  • Fixed handling of confluent.key.schema.validation in Kafka settings.
  • Fixed page buffer handling in the Kafka protocol.

v0.25.2

27 Aug 07:03
2f68197

Choose a tag to compare

🚀 Changes

  • Improved log messages for HTTP/HTTPS servers, making it easier to diagnose configuration and connection issues.

🐞 Bugfixes

  • Resolved an issue with path parameters when routes had a trailing slash.
  • Fixed file reference handling so listeners are now triggered when reading a file from a reference before the main file.
  • Fixed a deadlock race condition in the ConfigWatcher.
  • Fixed logs and dashboard display when an HTTP request does not match any API.