In a recent post Chris Meiklejohn (of Riak KV, Lasp-lang, Partisan, AntidoteDB fame) announced that I will be taking over the maintenance of Partisan off him. See his blog post here .
I am hard at work finishing on getting 5.0.0 release ready (currently working on my fork) and merging onto the official repo.
As part of that, I would love to hear from anybody currently using Partisan in their projects so that I can include a link in the upcoming README file.
Version 5.0.0 will bring some API changes so I want to make sure those who are currently using are aware and understand the changes, so any hint on how you are using it that might help me plan a transition and or prioritise documentation topics would be awesome.
Excellent news Alejandro! We are currently using Partisan for our digital twin technology.
We also forked Partisan and tried to keep it up with the new OTP releases. I’ll check out your repo to see if I can propose a contribution with our code.
Cool! I think you will see some breaks due to API changes. In general I am moving most APIs to the partisan module, which implements an API similar (if not identical) to the erlang and net_kernel modules e.g. we now have better monitoring of nodes and remote refs (when using full mesh topology through partisan_pluggable_peer_service_manager
The latest Partisan v5.0.0-beta.22 adds more support for OTP
This version completes the implementation of the following OTP behaviours and supporting modules.
They are all tested with the original Erlang/OTP Common Test suites adapted for Partisan.
All of them use partisan_monitor that implements node and distributed process monitoring (available for the full-mesh topology only for the time being).
Each module is a fork of the corresponding OTP module. At the moment we have support for the OTP24 versions only but adding support for 25 and 26 soon. The idea is that based on the OTP version you are running Partisan will dynamically compile the corresponding versions of those modules.
Monitoring APIs are exposed via the partisan module which tries to follow the function signatures and semantics of the erlang module.
I am working on extending rpc, erpc and pg support next.
Happy to report that this version is passing Eqwalizer and Dialyzer too .