Skip to content

Releases: marle3003/mokapi

v0.40.0

21 Apr 19:02
021cf11

Choose a tag to compare

✨ Improvements

Dashboard Enhancements

The Web UI dashboard has been improved to provide a clearer and more intuitive experience:

  • Summaries now take precedence over descriptions in the HTTP service view for better readability.
  • Improved Markdown rendering in HTTP tables.
  • Enhanced display of header controls in the source view component.
  • Reduced bundle size for better performance.

JavaScript HTTP Requests

JavaScript HTTP request methods now support an insecure option:

  • Allows requests to skip TLS verification when needed.
  • Useful for testing environments with self-signed certificates.

LDAP Enhancements

LDAP support has been extended and improved:

  • Added support for Active Directory extended DN requests (<GUID=...>).
  • Matching strategies are now inferred automatically if no EQUALITY rule is defined in the schema.
  • Improved schema flexibility:
    • Parentheses are no longer mandatory for MUST and MAY.
    • Multiline comments in LDIF files are now supported.

MCP Server

Mokapi is now available in the Context7 MCP server.

🐛 Fixes

Web UI

  • Fixed incorrect browser navigation history behavior when going back.
  • Fixed an issue where the example & validation dialog did not display the editor correctly.

Configuration & HTTP Handling

  • Improved handling of configuration files without file extensions.
  • Correctly uses the HTTP response Content-Type when no file extension is present.

JSON & Data Processing

  • Fixed resolving JSON references after patching that could cause a nil pointer panic.
  • Fixed date generation edge cases around New Year's Eve.
  • Prevented YAML parser from incorrectly parsing LDIF files.

AsyncAPI / OpenAPI

  • Fixed conversion from AsyncAPI 2.0 to 3.0.
  • Improved conversion of Swagger/OpenAPI responses and parameters.

JavaScript Runtime

  • Fixed a concurrent map access issue in shared values.

LDAP

  • Fixed handling of ScopeWholeSubtree in search operations.

🧹 Chores

  • General improvements to Web UI bundle size and performance.

v0.39.0

21 Mar 13:58
e8e1b5d

Choose a tag to compare

🐛 Bug Fixes & Improvements

Schema Handling

  • Improved resolving of JSON references for more reliable schema processing
  • Fixed issues when parsing recursive schemas to prevent errors and ensure stability

Patching

  • Enhanced patching behavior for referenced objects, improving consistency when modifying configurations

Configuration

  • Fixed conversion from Swagger to OpenAPI when no basePath is specified
  • Added support for reading configuration files without a file extension (e.g. URLs)

v0.38.0

11 Mar 06:35
0ebf81c

Choose a tag to compare

✨ Improvements

HTTP

  • Added support for HTTP/2

🐛 Fixes

CLI

  • Fixed an issue where the PROVIDERS_NPM_GLOBAL_FOLDER environment variable was not handled correctly.

OpenAPI

  • Fixed an issue where dynamic scopes could leak between schemas (e.g., across different endpoints), causing incorrect resolution of $dynamicRef.

JSON Schema

  • Improved $ref and $dynamicRef resolution to correctly handle recursive references and dynamic scope evaluation.

v0.37.1

02 Mar 07:47
b523048

Choose a tag to compare

🐛 Fixes

NPM Package

  • Fixed path to executable file in Windows packages

v0.37.0

01 Mar 20:51
83f3287

Choose a tag to compare

✨ Improvements

NPM Package

  • The go-mokapi npm package now uses platform-specific binary packages instead of shipping all binaries in a single package.
  • Platform binaries are installed automatically via optionalDependencies, so only the binary matching your OS and CPU is downloaded.
  • Supported platforms include:
    • macOS: darwin-x64, darwin-arm64
    • Linux: linux-x64, linux-arm64
    • Windows: win32-x64, win32-arm64

v0.36.0

01 Mar 07:49
575d535

Choose a tag to compare

✨ Improvements

Health Check Endpoint

Mokapi now exposes a health check endpoint that can be used for uptime monitoring and orchestration systems such as Kubernetes.

  • Default endpoint: GET /health
  • Default port: 8080

⚠️ If you are using port 8080 for mocked APIs or custom routing, review the health check configuration to avoid port or path conflicts.

🐛 Fixes

Search Index Storage

  • Mokapi now uses the operating system’s temporary directory for the search index when no indexPath is configured.
  • This prevents failures on systems where a writable index directory was not explicitly set.

Git Repository Pull

  • Fixed an issue where pulling repositories failed due to shallow cloning (depth=1).
  • Mokapi now correctly pulls repositories regardless of depth configuration.

v0.35.0

25 Feb 21:13
202b203

Choose a tag to compare

✨ Improvements

JavaScript API

  • Added support for providing a function to dynamically decide whether a handler should be tracked.
  • HTTP request parameters now fall back to their default values when not explicitly provided.

Web UI

  • Enhanced the display of HTTP event request parameters for better readability and inspection.

Search

  • Optimized startup and initialization of the search index.
  • New configuration options
    • indexPath: Store the search index on the file system.
    • inMemory: Control whether the search index is kept entirely in memory.

🐛 Fixes

JavaScript API

  • Fixed an issue where Object.assign could not be used reliably inside HTTP event handlers.

Swagger / OpenAPI

  • Added support for missing parameter attributes during conversion:
    • default
    • maxLength
    • minLength
    • enum
    • multipleOf

v0.34.2

18 Feb 22:16
b8d9291

Choose a tag to compare

🐛 Fixes

  • Fix shared value updates in JavaScript event handlers
  • Allow response.data to be set to null
  • Decode encoded email subjects and addresses in the dashboard

v0.34.1

16 Feb 22:03
cf0e5a3

Choose a tag to compare

🐛 Fixes

JavaScript

  • HttpResponse.rebuild()
    • Ensures the Content-Type header is set in the response when rebuild() is called.

v0.34.0

15 Feb 21:17
062df9e

Choose a tag to compare

✨ Improvements

JavaScript Runtime

  • Event handler priorities
    • Introduced a priority field in EventArgs
    • Allows handlers to run before or after others
    • Enables advanced patterns like request forwarding + response recording
  • HttpResponse.rebuild()
    • Rebuilds the entire HTTP response based on a new status code and content type
    • Generates fresh response data and headers from the OpenAPI spec
    • Makes it easier to handle error scenarios without breaking schema validity
  • File system module
    • New JavaScript module for reading and writing files
    • Enables recording & replay workflows, snapshots, and custom persistence
  • Random message generation
    • Generator now supports producing random values for message fields

Configuration

  • Include / Exclude directory filters
    • Added support for include and exclude patterns when loading files
    • Improves control over large configuration directories

Web UI

  • Line markers in config view
    • Easier navigation with permanent link to a specific line or range of lines of code
  • Dynamic page titles
    • Dashboard pages now set meaningful titles per route

🐛 Fixes

JavaScript

  • Console logging now matches browser behavior
    • Improved handling of format specifiers (%s, %d, etc.)
    • Supports extra parameters like in real browser consoles

HTTP & Parsing

  • Correct parsing of ISO 8601 durations
    • Fixes incorrect duration handling in schema validation
  • Improved application/x-www-form-urlencoded parsing
    • Handles properties not explicitly defined in schemas
    • Properly supports nested object properties

Web UI

  • Decode encoded email subjects and addresses
    • Properly decodes MIME-encoded headers (e.g. UTF-8 subjects)

CLI & Runtime

  • CLI shortcuts added again
    • -v for --version
    • -h for --help
  • Graceful shutdown on SIGINT / SIGTERM
    • Servers now shut down cleanly on interrupt and termination signals