Commit Graph

56 Commits

Author SHA1 Message Date
Prithvi Shahi da62ebc979
chore: rm rust-libp2p v0.49 and v0.50, update v0.52 (#253) 2023-08-11 12:17:07 -07:00
Prithvi Shahi 55e43bd610
chore: update go-libp2p releases and rm v0.25 & v0.26 (#252) 2023-08-11 10:33:33 -07:00
Prithvi Shahi b0b8ad8a62
chore: add js-libp2p v0.46.x, rm v0.44, rm v0.45 browser tests (#251) 2023-08-09 20:04:43 -07:00
Marco Munizaga 8834ac1555
Add go-libp2p v0.29.0 (#234) 2023-07-19 09:37:06 -07:00
Marco Munizaga 1ebb8b505c
multidim-interop: Prune older versions (#233)
* Remove older versions

* Remove older chromium versions
2023-07-14 14:01:52 -07:00
Marco Munizaga 4bd0f9992f
Revert "Install playwright in the base image so it is cached (#226)" (#231)
* Revert "Install playwright in the base image so it is cached (#226)"

This reverts commit d21d042ddd.

* Add comment
2023-07-14 11:48:08 -07:00
Marco Munizaga cbca2c06de
multidim-interop: Update rust-libp2p .gitignore with chromium-image.json (#232)
* .gitignore chromium-image.json

* Assert that git tree is clean
2023-07-14 10:00:35 -07:00
Marco Munizaga fff587f66f
More resilient stdout parsing of dialer stdout (#224)
* More resilient stdout parsing of dialer stdout

* Add another test case

* Handle JS cases where timings aren't the only thing on stdout
2023-07-13 12:14:43 -07:00
Marco Munizaga 81e78aed34
multidim-interop: Add name ignore option (#225)
* Add name ignore option

* Update multidim-interop/testplans.ts

Co-authored-by: Thomas Eizinger <thomas@eizinger.io>

---------

Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
2023-07-10 16:49:46 -07:00
Marco Munizaga d21d042ddd
Install playwright in the base image so it is cached (#226) 2023-07-07 21:15:16 -07:00
Max Inden ce83afc1b0
feat(interop): add rust-libp2p chromium WASM WebTransport (#217)
Introduced in rust-libp2p with https://github.com/libp2p/rust-libp2p/pull/4015.
2023-07-07 14:37:57 +02:00
Max Inden 465065cff8
fix(interop): use standaloneTransports as string instead of param (#219)
* fix(interop): use standaloneTransports as string instead of param

When generating the test specification (docker-compose file) we enumerate all
transport permutations. While some of our transports need to be upgraded (e.g.
TCP and WS) some don't (e.g. QUIC or WebRTC). To differentiate the two we
execute two SQL queries (`queryResults` and `standaloneTransportsQueryResults`),
each with either a `AND _ NOT IN` or `AND _ IN`.

The previous implementation would use `node-sqlite3` query parameters (see
https://github.com/TryGhost/node-sqlite3/wiki/API#runsql--param---callback) to
provide the list of transport protocols that don't need upgrading as an array.

The problem is that `node-sqlite3` does not support arrays as query parameters,
see https://github.com/TryGhost/node-sqlite3/issues/762.

This commit uses string interpolation instead to inject the list of standalone
transports into the SQL queries.

* Nit

---------

Co-authored-by: Marco Munizaga <git@marcopolo.io>
Co-authored-by: Marco Munizaga <marco@marcopolo.io>
2023-07-05 16:57:30 -07:00
Marco Munizaga ec32d36cab
Add debug logging if JSON parse fails (#223) 2023-07-05 18:59:03 +00:00
Marco Munizaga a4e5381432
Remove often wrong patch version from id (#211) 2023-06-30 12:11:10 -07:00
Marco Munizaga 95f1277fed
Squash queries down to just 2 (#210) 2023-06-29 15:16:32 -07:00
Marco Munizaga fd719f534e
Less error-prone way of defining image IDs and other quality of life improvements (#208)
* Make canonicalImageIDLookup default

* Fix browser containerImageID
2023-06-29 12:52:13 -07:00
Max Inden 81b6e7c370
feat(interop): add rust-libp2p v0.52 (#206)
See https://github.com/libp2p/rust-libp2p/releases/tag/libp2p-v0.52.0

Co-authored-by: Marco Munizaga <git@marcopolo.io>
2023-06-26 10:33:06 +02:00
kevodwyer 248cf9962c
fix(java-libp2p): update test client with resource fix (#200) 2023-06-20 14:20:17 +02:00
kevodwyer 112e2efe20
add Java to interop tests (#197)
* add Nabu (Java) to interop tests

* naming fix

* missed a reference

* update build commit

* update build commit

* update git hash

* add to gitignore
2023-06-16 14:14:47 -07:00
Prithvi Shahi f828ee216b
chore: add go-libp2p 0.28.0 and update to v0.27.6 (#192) 2023-06-13 11:33:32 -07:00
Marco Munizaga 06a82c0d95
Reintroduce js-libp2p v0.45.0 and fix build from cache (#189)
* Add js-libp2p v0.45.0

* Name the image before creating browser images

* Update commit sha to test webrtc

* Enable webrtc & webrtc-direct tests
2023-06-08 14:56:17 -07:00
Marco Munizaga fb9bb6a690
Don't include muxer and secure channel for webrtc (#190)
* Don't include muxer and secure channel for webrtc

* Also filter out webrtc
2023-06-02 18:34:28 -07:00
Marco Munizaga 22f37a0e93
Revert "Add js-libp2p v0.45.0 (#187)" (#188)
This reverts commit e9f4962362.
2023-06-02 09:21:20 -07:00
Marco Munizaga e9f4962362
Add js-libp2p v0.45.0 (#187) 2023-06-02 08:43:54 -07:00
Chad Nehemiah 633ff35ba4
docs: update readme for instructions on running locally (#182)
* docs: update readme for instructions on running locally

* docs: update readme for instructions on running locally

* docs: pr feedback
2023-05-19 12:39:08 -07:00
Thomas Eizinger f1acc202eb
Update Rust tests to use smaller docker container (#181) 2023-05-16 08:01:28 -07:00
Max Inden a2235a0d55
feat(interop): add js-libp2p v0.44 (#171)
Copy of `multidim-interop/impl/js/v0.42` plus version adjustments + reenable
WebRTC (see https://github.com/libp2p/test-plans/pull/160).
2023-05-05 08:44:42 +02:00
Prithvi Shahi a1edfe231e
chore: Add go-libp2p v0.27.1 and v0.26.4, update zig-libp2p (#177)
* chore: Add go-libp2p v0.27.1 and v0.26.4

* update zig
2023-05-04 15:10:16 -07:00
Marco Munizaga 103b2a3847
Update zig-libp2p to latest head to fix a flaky segfault (#175) 2023-05-03 11:20:49 -07:00
Marco Munizaga df742523d4
Bring back zig-libp2p (#174)
* Revert "Revert "Bring back zig-libp2p (#172)" (#173)"

This reverts commit e4e9f985f7.

* Update zig-libp2p
2023-05-01 13:46:27 -07:00
Marco Munizaga e4e9f985f7
Revert "Bring back zig-libp2p (#172)" (#173)
This reverts commit f0c82d3d81.
2023-05-01 10:22:25 -07:00
Marco Munizaga f0c82d3d81
Bring back zig-libp2p (#172)
* Revert "Revert "Add zig-libp2p to interop tester (#167)" (#170)"

This reverts commit 3856de32fc.

* Print CPU info during make of zig-libp2p

* Show stdout output

* Use image id from json file

* Update zig-libp2p to log why a connection was shutdown

* Update zig to play nice with rust mss
2023-05-01 09:04:44 -07:00
Marco Munizaga 3856de32fc
Revert "Add zig-libp2p to interop tester (#167)" (#170) 2023-04-20 08:33:21 +02:00
Max Inden e07ffabbe8
fix(interop): rename `webrtc` to `webrtc-direct` (#166)
See https://github.com/multiformats/multiaddr/pull/150#issuecomment-1468791586
for context on discussion.

- Renames the `webrtc` transport identifier to `webrtc-direct`.
- Re-enables `webrtc-direct` support for rust-libp2p v0.51. Previously disabled
  in https://github.com/libp2p/test-plans/pull/160. See
  https://github.com/libp2p/rust-libp2p/pull/3781 for corresponding change on
  the rust-libp2p side.
- Leaves JS v0.41 and v0.42 untouched. To be done in a follow-up alongside JS
  dependency updates.
2023-04-19 13:48:07 +02:00
Marco Munizaga d61600ccd2
Add zig-libp2p to interop tester (#167)
* Add zig-libp2p to interop tester

* Fix typo
2023-04-15 17:44:38 +02:00
Marco Munizaga 23fdcef9be
Cache images slightly differently (#165) 2023-04-11 11:29:32 -07:00
Marco Munizaga c30c1c429f
Sanitize name before saving to compose file (#164) 2023-04-08 12:31:25 -07:00
Marco Munizaga d342ac541e
Fix: Correctly abort process on timeout (#162)
* Pass in abort controller signal

* Rearrange
2023-04-08 10:53:38 -07:00
Max Inden 134a8735d5
fix(versions): disable webrtc tests (#160)
This commit disables the WebRTC tests for rust-libp2p v0.50.0 and v0.51.0 and
chromium-js v0.41.0 and v0.42.0. Neither of these support the new
`/webrtc-direct` (see
https://github.com/multiformats/multiaddr/pull/150/#issuecomment-1468791586 for
context on rename).

The missing support is blocking https://github.com/libp2p/rust-libp2p/pull/3688
namely to upgrade to using `/webrtc-direct`. (Note that this is only blocking
CI. Users can already use `/webrtc-direct` with the latest released
rust-libp2p.)

We will backport `/webrtc-direct` support to the rust-libp2p `v0.51.0` interop
binary and then re-enable it here.

Instead of disabling the versions with missing support for `/webrtc-direct` we
could as well patch our interoperability test logic. For the sake of simplicity,
I am proposing simply disabling the versions for now.
2023-04-04 13:10:30 +02:00
Marco Munizaga 54d19f56a4
Add go-libp2p v0.26 (#151) 2023-03-09 16:58:16 -08:00
Max Inden 9bb9d2f933
feat(rust): Add v0.51 (#148)
With the latest rust-libp2p
[v0.51.0](https://github.com/libp2p/rust-libp2p/releases/tag/v0.51.0) release,
one can now test the `v0.51` family in the interop tests.
2023-03-07 07:46:19 -08:00
Marco Munizaga 1318080e01
Browser WSS testing (#144)
* Update playwright test

* Update multiaddr

* WIP: websocket testing in browser

* Add v0.42 test

* node-image.json

* Revert js v0.41 changes

* Update versions.ts
2023-03-06 17:47:40 -08:00
Marco Munizaga ad7d37d6f9
Switch to redis:7-alpine (#146) 2023-02-24 15:39:08 -08:00
Marco Munizaga 10794acd49
Add .gitignore for nim (#145) 2023-02-24 15:09:26 -08:00
Marco Munizaga 29daa4876a
Fix image references (#143) 2023-02-24 12:46:39 -08:00
Marco Munizaga 9ac5af38bf
Add backported Rust versions (#134)
* Add backported Rust versions

* Update v0.48 to merge backport commit

* Reference backport commit

* Reference backport commit for v049

---------

Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
2023-02-17 14:47:03 -08:00
Marco Munizaga ed99eadf82
Add key to table (#140)
* Add key to table

* Update multidim-interop/src/lib.ts

Co-authored-by: Thomas Eizinger <thomas@eizinger.io>

---------

Co-authored-by: Thomas Eizinger <thomas@eizinger.io>
2023-02-17 14:46:06 -08:00
Tanguy 80d78c81f7
Nim interop support (#138) 2023-02-17 09:37:26 -08:00
Marco Munizaga b7285c0a3a
Add go-libp2p v0.25.1 (#133) 2023-02-13 09:51:45 -08:00
Marco Munizaga 3b6d87b532
Update Go & JS tests to conform to the multidim interop test spec. (#121)
* Update Go test implementations to match new spec

* Update JS test implementation

* Update Rust test Implementation

* Update root Makefile

* Update runner to new spec

* Use composite action and S3 caching

* Not using GHA cache anymore

* Try removing access key from env

* Test workflow without cache keys (#131)

* Test if it works without s3 cache keys

* Fix if statement

* Fix if statement

* Always use buildkit

* Undo debug change

* Add no cache workflow

* Skip test in no-cache workflow

* Update .github/workflows/no-cache-multidim-interop.yml

* Same workflow; use CACHING_OPTIONS

* Add Browser WebRTC test (#130)

* Add webrtc to JS test

* Add onlyDial to all queries

* Update versions.ts

* Remove unneeded timeout overrides
2023-02-10 17:00:53 -08:00