Skip to content

chore: relax a bunch of Sync requirements where unnecessary#33

Merged
ferristseng merged 2 commits intoferristseng:mainfrom
miraclx:relax-sync-requirement
Dec 5, 2024
Merged

chore: relax a bunch of Sync requirements where unnecessary#33
ferristseng merged 2 commits intoferristseng:mainfrom
miraclx:relax-sync-requirement

Conversation

@miraclx
Copy link
Copy Markdown
Contributor

@miraclx miraclx commented Dec 15, 2023

Linked: ferristseng/rust-ipfs-api#140

I noticed a weird trait restriction in https://github.com/ferristseng/rust-ipfs-api that made it so only streams implementing Sync are permitted to the upload API. Even though the download API doesn't abide by those same rules.

Effectively makes it so you can't pipe the output of, say.. cat into add. Because add expects more than cat can offer.

And this will be the case most of the time. I looked under the hood, and couldn't find any reasons why the stream itself needs to be Sync.

So this PR gets rid of all the Sync bounds where they are present.

I've also tested it downstream with the ipfs-api repo and in my own project as well, and it all checks out.

@ferristseng
Copy link
Copy Markdown
Owner

Thanks! This looks great.

@ferristseng ferristseng merged commit 8e825fa into ferristseng:main Dec 5, 2024
@miraclx miraclx deleted the relax-sync-requirement branch December 5, 2024 14:46
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