Skip to content

Conversation

@Totodore
Copy link
Owner

@Totodore Totodore commented Mar 1, 2025

Motivation

The socketioxide-core crate only use Sid and Str types from the engineioxide crate. Until now it wasn't a problem because engineioxide was a mandatory dependency for every dependent on socketioxide-core (socketioxide, adapter implementations). However as I'm currently thinking about making a socketioxide-redis-emitter (#459) it would be really nice to rely on socketioxide-core for some types (Packet, BroadcastOptions, Parser) but we should not pull all the rest of engineioxide when using this redis-emitter.

Solution

Isolate the Sid/Str types to an engineioxide-core crate and make socketioxide-core and engineioxide depend on it. This include a small breaking change as engineioxide now re-export Sid from the socket mod and not from the sid mod.

Side note

If one day we want to make an engineioxide-client and socketioxide-client this will also useful.

@Totodore Totodore added A-engineioxide Area related to engineioxide A-core Area related to socketioxide-core C-Refactoring Implies a refactoring labels Mar 1, 2025
@Totodore Totodore merged commit 1d00e7d into main Mar 1, 2025
30 checks passed
@Totodore Totodore deleted the feat-add-engineioxide-core branch March 1, 2025 20:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-core Area related to socketioxide-core A-engineioxide Area related to engineioxide C-Refactoring Implies a refactoring

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant