Skip to content

Latest commit

 

History

History
251 lines (155 loc) · 8.07 KB

ChangeLog.md

File metadata and controls

251 lines (155 loc) · 8.07 KB

ChangeLog

0.10.4 (2024-02-04)

Fix

Required parameters of type boolean false can be supplied now. Since yason:parse-json-booleans-as-symbols is set, only yason:false maps into json false.

0.10.3 (2023-11-21)

Fix

Add necessary helpers for simple example in Readme.

0.10.2 (2023-11-17)

Fixes

Fixed loading error occured in some cases when jsonrpc/transport/http was not found.

0.10.1 (2023-10-17)

Additions

  • Support object and boolean type for required parameters.
  • Add regression tests for generated DESCRIBE-OBJECT method.

0.10.0 (2023-10-17)

Changes

Generic-function openrpc-server/interface:make-info now accepts only one argument - object of class openrpc-server/api:api.

0.9.3 (2023-10-16)

Fixes

A function generate-method-descriptions has been added. This function uses the mop for generating the method descriptions at run-time. Previously this happend at compile-time. The generate-method-descriptions is called from the generated specialized describe-object method. Now the output of describe-object should be correct again and show all generated, excluding the describe-object method itself.

0.9.2 (2023-10-15)

Fixes

  • Generate additional method with integer class specializer (till now it was only double-float) for required parameter of type number.
  • Allow required parameter of type array without an items slot. The result will not be transformed.

0.9.1 (2023-09-24)

Fixes

Fix support for multiple parameter types, (particularly for required parameters):

"params": [
  {
    "name": "name",
    "schema":
    {
      "type": ["string", "null"],
      "maxLength": 255
    },
    "required": true,
    "summary": "User name."
  }
]

0.9.0 (2023-08-19)

Backward Incompatible Fixes

Fixed how oneOf type is processed when there are only two subtypes like that:

"oneOf": [
  {
    "type": "null"
  },
  {
    "type": "object",
    "properties": {
      "project_name": {
        "type": "object",
        "properties": {},
        "required": [],
        "x-cl-class": "T",
        "x-cl-package": "COMMON-LISP"
      },

Previously in this case openrpc-client generated code which returned a hash-table. Now it will return a common-lisp object or NIL.

0.8.0 (2023-08-16)

Backward Incompatible Fixes

Nested dataclasses now handled propertly in the client. Previously, nested objects were parsed as hash-maps.

0.7.1 (2023-08-11)

Fixes

Fixed location for autogenerated generic function and added docstrings taken from OpenRPC spec.

0.7.0 (2023-08-09)

Backward Incompatible Changes

Fixes

0.6.0 (2023-06-09)

Additions

  • Float, Double float and Ratio types are supported. They are represented as a "number" type in JSON schema.

0.5.0 (2023-05-27)

Changes

Additions

  • Added a way to modify Clack middlewares applied to the app. This way you can add your own middlewares or routes to your application. See details in the openrpc-server/clack:app-middlewares generic-function documentation.
  • Added openrpc-server/clack:debug-on and openrpc-server/clack:debug-off functions. They turn on support for X-Debug-On HTTP header. Use this header to turn on interative debugger only for choosen requests.
  • Added generic-function openrpc-server/interface:slots-to-exclude which allows to list some slots to be hidden from all data-structures. For example, you might want to exclude password-hashes or some other sensitive information.
  • Added support for (MEMBER :foo :bar ...) datatype. Such objects are represented as string with enum values in JSON schema.

Fixes

  • Fixes type of the next-page key in the response of paginated methods.

0.4.0 (2022-11-07)

  • Fixed usage of default API when api is not specified to define-rpc-method macro.
  • Fixed most imports.

0.3.0 (2022-10-30)

  • Method and its params now support such metadata as :summary :description and :deprecated.
  • Schemas for CL classes can have :description if documentation id defined for class or its slots.
  • Macro openrpc-client:generate-client now exports methods, classes and their slot readers by default.
  • All methods, their arguments and object keys now use underscore instead of dash to make them more convenient to use from other languages.

0.2.0 (2022-10-25)

  • Support client generation from a file on a filesystem.

0.1.0 (2022-10-13)

  • Initial version.

[generated by 40ANTS-DOC]