* chore: replace go-merkledag walk with go-ipld-prime traversal for dag export
This is "safe" now because we can limit duplicate block loads like
go-merkledag does and won't get trapped taking a long time for complex
DAGs. We can do this while we're using an exhaustive selector (like
ExploreAll here) but will need an alternative strategy when we go for
arbitrary selectors.
* chore: bump examples to use v0.10.0
* feat: build examples against released packages instead of using replace directives to refer to the parent repo
* ci: run examples against the latest (unreleased) version of go-ipfs
Cannot reproduce the flakiness at the moment. The report suggests that connections are established on different transports. Adding logging to show what these transports are.
- Add a basic testground plan for bitswap
- Showcases how to emit regressions stats from a testplan
- Add CI plumbing to run testplans on push
As a result of this PR, also:
- Created the ipfs/go-ipfs-regressions repo, which defines stats structures for the output of testplans and the input to regression analysis and tests
When the config was wrapped in a continuation so that params could be
dynamically generated, this broke tag workflows since there was no
explicit tag filter anymore in config.yml. This attempts to fix that.
I may have gotten this wrong, since this is intrinsically hard to
test. We'll see next time we tag something.
* fix(cli): object add-link: do not allow blocks over BS limit
* refactor: allow-big-block
- renamed override flag to --allow-big-block
- separate tests for default and override behavior
Co-authored-by: Marcin Rataj <lidel@lidel.org>
* feat: report block count on `dag import`
* fix: clean-up dag import message format
* Only print stats when --stats flag is passed
This applies to both text and json output encoding.
- Stats data is now contained within a Stats datastructure
- Stats are printed after root so that first line of output is the same as previously, even when stats are output using --stats
* fix sharness test
* Add PayloadBytesCount to stats
* Attempt to stabilize flaky tests
* Rename PayloadBytesCount to BlockBytesCount
* Correctly calculate size or imported dag
* Use RawSize of original block for import bytes calc
* test: dag import without --stats
basic regression tests for the default output (text and json)
Co-authored-by: gammazero <gammazero@users.noreply.github.com>
Co-authored-by: Marcin Rataj <lidel@lidel.org>
(cherry picked from commit 0057199af4)
* Add a transcoder command to multibase
In order to more easily facilitate the conversion
between multibase formats, include a transcode command
to avoid `multibase decode | multibase encode`
* Example code needed go mod tidy
Co-authored-by: gammazero <gammazero@users.noreply.github.com>
(cherry picked from commit c89110920e)
* feat: added swarm peering command supporting add, ls and rm
Co-authored-by: Steven Allen <steven@stebalien.com>
(cherry picked from commit a651045c50)
When developing against ipfs/go-ipfs, we would like to be able to use
the 2xlarge resource class for faster build and test cycles, but many
external contributers will not have this resource class available to
them. There is no direct way to change the resource class, so this
uses dynamic config to generate a parameters JSON obj which is then
fed into the configuration when the workflow starts, based on the Git
URL of the build.
For repos other than ipfs/go-ipfs, this reverts back to the "medium"
resource class with a Make job parallelism of 3.
(cherry picked from commit b2c3959a4f)