Skip to content

Dependency maintenance: consume Serializable 0.10.1, Timing 2.2.3 and Threads 3.1.3 #19

Description

@LK-Simon

Summary

Refresh Event's dependency baselines after the Serializable 0.10.1 cascade.

Scope

  • Prepare ESPressio Event 5.8.1.
  • Update required Timing from 2.2.2 to 2.2.3 and Threads from 3.1.2 to 3.1.3.
  • Update optional Serializable baseline from 0.10.0 to 0.10.1.
  • Normalize current self-version documentation to 5.8.1 and remove stale 5.7.1/latest-stable and 5.8.0-development wording.
  • Update CHANGELOG, dependency chart, examples/tests/workflows, and package metadata as applicable.
  • Validate against released upstreams in cascade order.

Circular-dependency audit

Two reciprocal optional relationships are now confirmed:

  1. Event ↔ ESP-Now

    • ESP-Now optionally consumes Event for ESPNowEventTransport.
    • Event currently consumes ESP-Now for ESPNowTransportEventBridge.
  2. Event ↔ Sockets

    • Sockets optionally consumes Event for its UDP/TCP/TLS/WebSocket/MQTT Event transports.
    • Event currently consumes Sockets for SocketWorkerEventBridge and SocketSecuritySessionEventBridge.

Although these dependencies are opt-in rather than mandatory, they are still architectural cycles and should not be strengthened.

Preferred long-term resolution

Keep ESPressio Event upstream and transport-neutral. Integration code that is specific to a concrete downstream transport should live downstream with that transport's Event integration, or in a dedicated integration package.

Accordingly:

  • move ESPNowTransportEventBridge to ESP-Now's optional Event integration (or a dedicated Event/ESP-Now integration package);
  • move SocketWorkerEventBridge and SocketSecuritySessionEventBridge to Sockets' optional Event integration (or a dedicated Event/Sockets integration package).

Event should retain generic Event/Observer bridge primitives and bridges for upstream libraries that do not themselves consume Event (for example Timing, Threads, Command, and Security).

This maintenance release documents the desired direction but does not perform a breaking bridge relocation.

Release order

Serializable 0.10.1 -> Units 0.2.2 -> Timing 2.2.3 -> Threads 3.1.3 -> Event 5.8.1.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions