Skip to content
This repository has been archived by the owner on Feb 12, 2024. It is now read-only.

feat: backport libp2p noise as fallback for secio (#3074) #3211

Merged
merged 1 commit into from
Aug 11, 2020

Conversation

jacobheun
Copy link
Contributor

@jacobheun jacobheun commented Aug 5, 2020

This is a backport of libp2p-noise to IPFS 0.46.

I cut a branch of 0.46.x from the last commit for 0.46. The CI setup isn't currently set to run PRs that don't go into master. I'm not sure what the best approach is for lerna, but the release from the 0.46 branch should work.

Adds `libp2p-noise` encryption protocol as a fallback for `libp2p-secio`. This replicates what happened in [ipfs/go-ipfs/releases/v0.5.0](https://github.com/ipfs/go-ipfs/releases/tag/v0.5.0).

>SECIO Deprecation Notice
>SECIO should be considered to be well on the way to deprecation and will be
>completely disabled in either the next release (0.6.0, ~mid May) or the one
>following that (0.7.0, ~end of June). Before SECIO is disabled, support will be
>added for the NOISE transport for compatibility with other IPFS implementations.

From what I know, this is likely to happen for `0.7.0`.

We currently have interop tests for using noise in [libp2p/interop/test/connect](https://github.com/libp2p/interop/tree/master/test/connect). I think there are enough for now, but when we use noise as default in JS and GO, we will definitely want to make sure we have more verbose interop before we switch to default. AFAIK, with the current setup of `ipfsd-ctl` we cannot specify what libp2p modules to use.

Co-authored-by: Alex Potsides <alex@achingbrain.net>
@jacobheun jacobheun marked this pull request as ready for review August 7, 2020 17:41
@achingbrain
Copy link
Member

It should be ok, as long as we don't backport breaking changes as that would cause a version bump and an attempt to publish over an already published version, but you know, why would we do that.

@achingbrain achingbrain changed the base branch from 0.46.x to release/v0.46.x August 11, 2020 13:22
@achingbrain achingbrain merged commit 0a7ffd8 into release/v0.46.x Aug 11, 2020
@achingbrain achingbrain deleted the backport/noise branch August 11, 2020 13:24
@achingbrain
Copy link
Member

CI runs on release/* branches so there's a post-merge gate. Not perfect but we only accept patches to release branches so not terrible.

achingbrain added a commit that referenced this pull request Aug 12, 2020
Adds `libp2p-noise` encryption protocol as a fallback for `libp2p-secio`. This replicates what happened in [ipfs/go-ipfs/releases/v0.5.0](https://github.com/ipfs/go-ipfs/releases/tag/v0.5.0).

>SECIO Deprecation Notice
>SECIO should be considered to be well on the way to deprecation and will be
>completely disabled in either the next release (0.6.0, ~mid May) or the one
>following that (0.7.0, ~end of June). Before SECIO is disabled, support will be
>added for the NOISE transport for compatibility with other IPFS implementations.

From what I know, this is likely to happen for `0.7.0`.

We currently have interop tests for using noise in [libp2p/interop/test/connect](https://github.com/libp2p/interop/tree/master/test/connect). I think there are enough for now, but when we use noise as default in JS and GO, we will definitely want to make sure we have more verbose interop before we switch to default. AFAIK, with the current setup of `ipfsd-ctl` we cannot specify what libp2p modules to use.

Co-authored-by: Vasco Santos <vasco.santos@moxy.studio>
Co-authored-by: Alex Potsides <alex@achingbrain.net>
@achingbrain
Copy link
Member

This has been published as ipfs@0.46.1

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants