diff --git a/.github/workflows/arduino-lint.yml b/.github/workflows/arduino-lint.yml new file mode 100644 index 0000000..a85a4b5 --- /dev/null +++ b/.github/workflows/arduino-lint.yml @@ -0,0 +1,29 @@ +name: Check Arduino + +# See: https://docs.github.com/en/actions/reference/events-that-trigger-workflows +on: + push: + pull_request: + schedule: + # Run every Tuesday at 8 AM UTC to catch breakage caused by new rules added to Arduino Lint. + - cron: "0 8 * * TUE" + workflow_dispatch: + repository_dispatch: + +jobs: + lint: + runs-on: ubuntu-latest + permissions: + contents: read + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + + - name: Arduino Lint + uses: arduino/arduino-lint-action@v2 + with: + compliance: strict + library-manager: submit # remember to change to 'update' after the library is published on the libraries index + # Always use this setting for official repositories. Remove for 3rd party projects. + official: true \ No newline at end of file diff --git a/README.md b/README.md index a2cb504..c2446c6 100644 --- a/README.md +++ b/README.md @@ -1,2 +1,7 @@ -# RPClite -RPC lib for embedded based on MsgPack +# Arduino_RPClite + +A MessagePack RPC library for Arduino allows to create a client/server architecture using MessagePack as the serialization format. It follows the [MessagePack-RPC protocol specification](https://github.com/msgpack-rpc/msgpack-rpc/blob/master/spec.md). It is designed to be lightweight and easy to use, making it suitable for embedded systems and IoT applications. + +### Credits + +This library is based on the MsgPack library by @hideakitai. diff --git a/examples/rpc_lite_client/rpc_lite_client.ino b/examples/rpc_lite_client/rpc_lite_client.ino index 77b533e..9fc3628 100644 --- a/examples/rpc_lite_client/rpc_lite_client.ino +++ b/examples/rpc_lite_client/rpc_lite_client.ino @@ -1,4 +1,4 @@ -#include +#include SerialTransport transport(&Serial2); RPCClient client(transport); diff --git a/examples/rpc_lite_dummy/rpc_lite_dummy.ino b/examples/rpc_lite_dummy/rpc_lite_dummy.ino index c84421c..ab6cec8 100644 --- a/examples/rpc_lite_dummy/rpc_lite_dummy.ino +++ b/examples/rpc_lite_dummy/rpc_lite_dummy.ino @@ -1,4 +1,4 @@ -#include +#include DummyTransport transport; RPCServer server(transport); diff --git a/examples/rpc_lite_server/rpc_lite_server.ino b/examples/rpc_lite_server/rpc_lite_server.ino index a9f2fe0..e883369 100644 --- a/examples/rpc_lite_server/rpc_lite_server.ino +++ b/examples/rpc_lite_server/rpc_lite_server.ino @@ -1,4 +1,4 @@ -#include +#include #include HardwareSerial* uart = new HardwareSerial(0); diff --git a/examples/wrapper_example/wrapper_example.ino b/examples/wrapper_example/wrapper_example.ino index da2644f..e4c0a5d 100644 --- a/examples/wrapper_example/wrapper_example.ino +++ b/examples/wrapper_example/wrapper_example.ino @@ -1,4 +1,4 @@ -#include +#include int add(int x, int y) { return x + y; diff --git a/library.json b/library.json index 84c249d..b2a0cc7 100644 --- a/library.json +++ b/library.json @@ -1,10 +1,10 @@ { - "name": "RPClite", + "name": "Arduino_RPClite", "keywords": "rpclib,msgpack,serial", - "description": "RPClite for Arduino (based on hideakitai MsgPack)", + "description": "A MessagePack RPC library for Arduino", "repository": { "type": "git", - "url": "https://github.com/bcmi-labs/RPClite" + "url": "https://github.com/bcmi-labs/Arduino_RPClite" }, "authors": { "name": "Lucio Rossi", diff --git a/library.properties b/library.properties index fc5f258..28a61c9 100644 --- a/library.properties +++ b/library.properties @@ -1,10 +1,10 @@ -name=RPClite +name=Arduino_RPClite version=0.0.1 author=Lucio Rossi (eigen-value) maintainer=Lucio Rossi (eigen-value) -sentence=RPClite for Arduino (based on hideakitai MsgPack) -paragraph=RPClite for Arduino (based on hideakitai MsgPack) +sentence=A MessagePack RPC library for Arduino +paragraph=allows to create a client/server architecture using MessagePack as the serialization format. It follows the MessagePack-RPC protocol specification. It is designed to be lightweight and easy to use, making it suitable for embedded systems and IoT applications. category=Communication -url=https://github.com/bcmi-labs/RPClite +url=https://www.arduino.cc/ architectures=* depends=ArxContainer (>=0.6.0), ArxTypeTraits, DebugLog (>=0.8.1) diff --git a/src/RPClite.h b/src/Arduino_RPClite.h similarity index 73% rename from src/RPClite.h rename to src/Arduino_RPClite.h index 50ac824..9cf1d3e 100644 --- a/src/RPClite.h +++ b/src/Arduino_RPClite.h @@ -2,8 +2,8 @@ // Created by lucio on 4/8/25. // -#ifndef RPCLITE_H -#define RPCLITE_H +#ifndef ARDUINO_RPCLITE_H +#define ARDUINO_RPCLITE_H #include "Arduino.h" @@ -16,4 +16,4 @@ #include "DummyTransport.h" #include "SerialTransport.h" -#endif //RPCLITE_H +#endif //ARDUINO_RPCLITE_H