package rpclib
Install
Dune Dependency
Authors
Maintainers
Sources
sha256=ce23eb756c028d9374bd19823296bddb7c237d3f055452d30d1cf7d15216e963
sha512=d4dfd7a9ee1b7996c24819ac1895925af0ad732f117c6e06cd28c215b14aa094dbd045e44d7f84c0eeb7ab807ed970d6879c29d07b02377fcb928325124ba7f6
CHANGES.md.html
9.0.0 (June 2022)
Breaking: change Cmdlinergen to use non-deprecated types (psafont #172)
8.1.2 (February 2022)
Add the
noargs
constructor for declaring interfaces that do not take any parameters. (tbrk #170)Allow Xmlrpc callers to override the base64 decoding function. (tbrk #171)
8.1.1 (November 2021)
Ignore error about using f-strings in python bindings (psafont)
Compatibility with rresult 0.7.0 (psafont)
8.1.0 (March 2021)
github: test with 4.12 (psafont)
ppx_deriving_rpc: make compatible with ppxlib.0.18.0 (NathanReb)
8.0.0 (October 2020)
Drop reliance on base in ppx_deriving_rpc
rpclib-async: cleanup opam file
rpclib (breaking) rename notif -> is_notification
7.2.0 (October 2020)
ppx_deriving_rpc: fix a transitive dep on base to enable support for recent ppxlib
7.1.0 (June 2020)
Test suite refactoring
Port to latest ppxlib
Add ~strict flag to xmlrpc generation
Support encoding/decoding of base64
port to dune 2
Add the possibility of having null as params in a requests for JSON-RPC
7.0.0 (December 2019)
Add basic support for JSON-RPC notifications
6.1.0 (December 2019)
opam: updated bounds on a more conservative basis
travis: tests more compilers
tests: disable useless-object-inheritance on pylint checks
pythongen: generate python2-3 compatible bindings
Add ISC license
Incremented the upper bound for async's version.
Added lower bound for js_of_ocaml in related .opam file.
Fixed compilation issue with js_of_ocaml 3.5.0 and 3.5.1.
opam: remove the 'build' directive on dune dependency
opam: remove unnecessary flag
port to dune
6.0.0 (November 2018)
Fix ppx_deriving_rpc for newer ppxlib
test_pythongen: ignore W504, it's breaking the internet and is pointless
Add more tests and documentation
ppx_deriving_rpc: Switch to ppxlib from ppx_deriving
Fix marshalling of optional named parameters
Add failing test of optional/unnamed args for rpcs
CA-291118: Register an exception printer for IDL errors
5.8.0 (June 2018)
rpclib:
New
Rpc.Types
variants for 3- and 4-tuplespythongen: fix generated exceptions
Remove broken
Rpc_client
ppx_deriving_rpc:
rpcty ppx: Add support for 3- and 4-tuples
5.7.0 (June 2018) -- rpclib only
Add optional
strict
parameter tojsonrpc.of_string
to ignore trailing junk from input. The old behaviour (strict=true
) is the default.
5.6.0 (June 2018) --
rpclib, rpclib-async, rpclib-ppx:
Remove duplication in .mlis, expose MarshalError, add docs
README
Document IDL generator
rpclib:
pythongen test: make pylint checks stricter
5.5.0 (June 2018) -- rpclib only
pythongen:
Correctly call superclass init in exceptions
Generate classes for errors in interface
Fix tuple typechecking
5.4.0 (June 2018)
ppx_deriving_rpc:
rpcty ppx: Fix warning 27 in generated field setter
rpclib:
pythongen:
Fix Python argparse CLI
Fix generated
_test class to pass typechecking Add tests using CLI
5.3.0 (May 2018)
ppx_deriving_rpc:
rpcty ppx: Avoid warning 23: "with clause is useless"
rpclib:
markdowngen:
document params with same types but different defs
escape special HTML and markdown chars
5.2.0 (May 2018) -- rpclib only
markdowngen: document nested variants and structs
rpc: remove rpclib-html from compat layer
5.1.0 (May 2018)
Lint generated Python code in unit test
Reorganize tests & convert to alcotest
markdowngen: show content of structs and variants in the documentation
drop support for ocaml 4.03.0
pythongen: generate pythonic code that passes linting
pythongen: introduce an optional helpers field to inject custom versions of helpers
pythongen: use a dictionary lookup for the dispatchers
pythongen: display method description for methods
5.0.0 (May 2018)
camlp4: delete as it is moved in ocaml-rpc-legacy
port to jbuilder, and splut the library into
ppx_deriving_rpc
rpc (compatibility meta-package)
rpclib-async
rpclib-html
rpclib-js
rpclib-lwt
rpclib
4.2.0 (May 2018)
idl: support unnamed parameters in Lwt and Async GenClient & GenServer
Lwt, Async GenClient: use correct RPC call wire name
Make sure fns are added with correct name in GenServer
Add client<->server interop test for IDL
4.1.0 (Apr 2018)
rpc_lwt: runtime check if all server as been bound to a function
rpc_async: runtime check if all server as been bound to a function
Avoid stack overflow due to List.map in Jsonrpc, Rpcmarshal, ppx
4.0.0 (Apr 2018)
idl.ml: Change marshalling of named optional arguments to exclude them from the argument record
pythongen.ml: Fix type checking for optional record fields
3.2.0 (Mar 2018)
idl.ml: make server check for completeness of the implementation
idl.mli: hide details of server impl
Add a space to store test data in an abstract type
Add the type name to the ppx-generated variant value
Improve the markdown documentation generator.
idl: enforce use of 'internal_error_of' in Error.Make
3.1.0 (Feb 2018)
ppx_deriving_rpcty: use native split_on_char on ocaml >= 4.04.0
ppx_deriving_rpcty: Fix 'Warning 27: unused variable x.' on deriving rpcty for structs
3.0.0 (Jan 2018)
lib: remove use of cppo after dropping support for ocaml 4.02.3
add support for async and core >= v0.9.0
2.3.0 (Jan 2018)
For tuple contains more than 2 elements, fix the element order when deriving rpcty
pythongen, rpc_genfake: improved failures for Abstract types
cmdlinergen: implement Abstract
add support for ocaml 4.06
Remove unnecessary warnings
Add failable tests for ocaml-4.06
opam: add upper bound to async
opam: remove [configure] from the build stanza
2.2.0 (Dec 2017)
Remove warnings by extending pattern matches in {cmdliner,markdown}gen
Redefined
to_a
with a safer interfaceAdd a way to explicitly mark a tuple list as a dict
Allow the use ocamldoc tags rather than [@doc ...]
Add an 'abstract' typ.
Deprecate xmlrpc from/to char producers
Deprecate jsonrpc from/to char producers
Port the jsonrpc module to yojson
2.1.0 (Sep 2017)
Add defaults for polymorphic variants (@jonludlam)
2.0.0 (Aug 2017)
Fix some cases of non-compliance with the JsonRpc v2.0 specs (@kc284)
Check the structure of error objects of JsonRpc v2.0 is spec compliant (@kc284)
Add new function to retrieve the version and id of JSON-RPC alongside the Rpc.call from the request body (@kc284)
1.9.53 (Jul 2017)
Delay evaluation of Cmdlinergen terms (API breaking change) (@jonludlam)
Accept marshalled ints when unmarshalling floats (@johnelse)
1.9.52 (Jun 2017)
Fix compilation on MacOS X (@djs55)
Add a ClientExnRpc functor that takes an RPC impl as argument (@jonludlam)
ppx_deriving_rpc: Fix marshalling of dictionaries in the rpcty code too (@jonludlam)
ppx_deriving_rpc: Allow unnamed parameters in functions to introduce compatibility with the old camlp4 idl (@jonludlam)
1.9.51 (May 2017)
Support Ocaml 4.03+ (@mseri)
Fixed javascript and htmlgen backends (@mseri)
1.9.50 (Mar 2017)
Add a ppx to replace 'with rpc'
Add a new mechanism for defining IDLs (inspired by ctypes), to replace the 'idl' syntax extension
1.6.0 (July 2016)
Add support for JSON-RPC v2
1.5.4 (June 2015)
Fix struct_extend handling of option types (with test)
Add opam file for development
Add travis
1.5.3 (Nov 2014)
Add a mechanism for performing upgrade
1.5.2 (June 2014)
Change license to ISC
1.5.1 (May 2014)
make js_of_ocaml dependency optional (@djs55)
1.5.0 (Oct 2013)
Abstract interface over Async and Lwt (@jonludlam)
Remove some debug messages (@djs55)
1.4.1 (May 2013)
Add support for using the browser's JSON parser (@jonludlam)
1.3.0 (Jan 2013)
Add support for Int32 (@jonludlam)
Make unmarshalling of variant types case insensitive (@jonludlam)
Make Xmlrpc and Jsonrpc interface look more alike (@jonludlam)
Support for recursive types in the IDL (@jonludlam)
Improve installation instructions (Daniel Weil)