Skip to content

Disable unsused features from flume dependency#653

Merged
h3nill merged 1 commit intobytebeamio:mainfrom
domenicquirl:flume-no-select
Jul 13, 2023
Merged

Disable unsused features from flume dependency#653
h3nill merged 1 commit intobytebeamio:mainfrom
domenicquirl:flume-no-select

Conversation

@domenicquirl
Copy link
Contributor

This PR modifies the dependency on flume to only enable its async feature instead of all features that are enabled by default. The motivation for this change is that neither rumqttc nor rumqttd need to select between (i.e., wait for any one of multiple) messages from multiple channels. However, the select feature of flume is enabled by default, together with its eventual-fairness feature that ensures that channels in a selector cannot make other ones starve. To do so, a source of randomness is required which is obtained through additional dependencies that this PR aims to avoid for both users and developers of rumqtt.

Type of change

Miscellaneous (related to maintanance)

Checklist:

  • Formatted with cargo fmt (only Cargo.tomls are changed)
  • Make an entry to CHANGELOG.md if its relevant of user of the library. If its not relevant mention why.

@domenicquirl
Copy link
Contributor Author

Is a CHANGELOG entry required for this change? The change should be transparent for any users, except if they were unknowingly relying on rumqtt enabling the features while also depending on flume without specifying them.

Based on the previous entries it looks to me like this wouldn't appear in the list, but I can include a mention if you prefer.

@h3nill
Copy link

h3nill commented Jul 13, 2023

no changelog entry not required for this

@h3nill h3nill merged commit f0cb060 into bytebeamio:main Jul 13, 2023
@h3nill
Copy link

h3nill commented Jul 13, 2023

Thank you @domenicquirl!

carlocorradini pushed a commit to carlocorradini/rumqtt that referenced this pull request Aug 3, 2023
Co-authored-by: Domenic Quirl <DomenicQuirl@protonmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants