We recently tracked down some issues with the pion library that were causing inefficiencies and infinite loops to occur (see #33211 (moved)).
These have been addressed in pion-dtls v2.0.0-rc.7 and pion-sctp v1.7.5. I'd suggest just bumping to the latest version of pion-webrtc v2.2.3, which includes version bumps for each of these supporting libraries.
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Child items
...
Show closed items
Linked items
0
Link issues together to show that they're related.
Learn more.
I had to make a few modifications to the script to account for new patters in the output of go mod graph, I've attached the script to this ticket. I'm going to take a look and see if we can prune some of the dependencies. dcf pointed out in #33330 (moved) that some of the dependencies are only needed for tests.
I was able to remove 3 dependencies for tor browser (these were indirect depends from gomega). I don't know of a way of automating it with any of the go module tools, but at least this cuts down a bit on size for now.
And bumping webrtc to v2.2.3 is the purpose of this ticket, so that's all...fine :) However, I wonder why go mod graph (or the script) think v2.1.2 is the/a new dependency version. Do you know?
Second, do you know where the crypto commit hash bump came from? Was that a manual change you did? I found that hash on the master branch, so I don't have a problem with using it (I see the current commit we're using is pretty old).
And bumping webrtc to v2.2.3 is the purpose of this ticket, so that's all...fine :) However, I wonder why go mod graph (or the script) think v2.1.2 is the/a new dependency version. Do you know?
That's just a typo on part I think. The commit has matches v2.2.3. Sorry about that. It wasn't generated by gomodtorbm since it's the root library we're updating.
Second, do you know where the crypto commit hash bump came from? Was that a manual change you did? I found that hash on the master branch, so I don't have a problem with using it (I see the current commit we're using is pretty old).
Hmm. Looks like it was bumped here.
But this isn't even the most recent version bump for v2.2.3. And now that I'm looking at it, gomodtorbm should've ignored that project.
Perhaps we shouldn't update it to be on the safe side.
my rebase mangled things a bit and I lost some new packages that are necessary to build v2.2.3. Those have been re-added.
The bump in goxcrypto was done manually by me for a reason. Normally gomodtorbm ignores existing projects that are shared by other parts of tor browser (including goxcrypto). However, in this case, the move to pion-dtls v2.0.0-rc.7 requires a newer version of goxcrypto to build (notably, a commit in which curve25519.X25519 is defined). So I've bumped the version to the most recent needed by pion-dtls.
The reason gomodtorbm thought the pion-webrtc version should be v2.1.2 is because it was set in the script from the last time we updated it. I manually edited the script to be v.2.2.3 and it works as expected now :)
And I tweaked the branch a little. The comment documenting the tag on the git_hash for webrtc was still using the old, hardcoded, number. I manually changed that.
Cloning into 'goxxerrors'...fatal: https://golang.org/x/xerrors/info/refs not valid: is this a git repository?Error: Error cloning https://golang.org/x/xerrorsmake: *** [fetch] Error 1
I figured out what likely went wrong: I probably had the right git_url the first time I built it as an alpha testbuild. And then re-ran gomodtorbm which gave me the incorrect url, but the alpha testbuild didn't notice because the git hash didn't change. That's my current theory and I've switched to nightly testbuilds so this doesn't happen again, hopefully :)