jfpoilpret/fast-arduino-lib

Simplify some FastArduino API/implementation

Closed this issue · 2 comments

The following FastArduino API introduced complexity in implementation or worst in API:

  • lifecycle: it is not clear whether this API is useful and actually used! It impacts overall complexity of futures and i2c
  • future: the API is complex and not optimized (usage of virtual methods)
  • i2c: both API and implementation are complex (but I2C is complex indeed, particularly when you want to handle it asynchronously); complexity was increased by usage of lifecycle (probably not necessary here) and future (difficult to do without)

We need to review each of these API and their implementation and either:

  • remove them (e.g. lifecycle)
  • simplify them (e.g. i2c)
  • optimize them (e.g. future)

This work will imply compatibility issues as API may disappear or change.

PR #102 optimizes futures and simplifies I2C.
Lefecycle will most probably disappear very soon.

PR #103 removes lifecycle API.