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

chore: split core, http api server and cli out from ipfs module #3288

Merged
merged 44 commits into from
Sep 28, 2020

Conversation

achingbrain
Copy link
Member

@achingbrain achingbrain commented Sep 15, 2020

Decomposes the main ipfs module into separate core, http api server and
cli modules which encapsulate the different parts of ipfs.

This allows us to:

  1. Omit modules/code/dependencies if they aren't going to be used
  2. Reduces the amount of tests being run in series

A next step might be to further decompose core into API modules to allow us to do things like, release builds without deprecated APIs (e.g. ipfs.object) or maybe make some things options (e.g. mfs or ipns), but this is a reasonable first step.

The average time of a CI job has gone from just under 20 minutes to just over 10 minutes. Outliers here are electron tests (which should be fixed by #3251) and webworker tests which will need further investigation.

Fixes #2678
Fixes #2877

Decomposes the main ipfs module into separate core, http api server and
cli modules which encapsulate the different parts of ipfs.

This allows us to:

1. Omit modules/code/depencies if they aren't going to be used
2. Reduces the amount of tests being run in series

I'm hoping this will get us to sub-15 minute builds.

Fixes #2678
Fixes #2877
@achingbrain achingbrain marked this pull request as ready for review September 25, 2020 15:00
@achingbrain achingbrain merged commit 796d7ef into master Sep 28, 2020
@achingbrain achingbrain deleted the chore/split-cli-and-http-from-core branch September 28, 2020 15:44
SgtPooki referenced this pull request in ipfs/js-kubo-rpc-client Aug 18, 2022
Decomposes the main ipfs module into separate core, http api server and
cli modules which encapsulate the different parts of ipfs.

This allows us to:

1. Omit modules/code/dependencies if they aren't going to be used
2. Reduces the amount of tests being run in series

The average time of a CI job has gone from just under 20 minutes to just
over 10 minutes.  Outliers here are electron tests (which should be fixed
by #3251) and webworker tests which will need further investigation.

Fixes #2678
Fixes #2877
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
2 participants