Commit Graph

145 Commits

Author SHA1 Message Date
kixelated e039fbdb56
Switch to a GCP registry. (#89)
Unfortunately Cloud Run doesn't support the free/public Github registry.
2023-10-13 10:47:10 +09:00
dependabot[bot] 0bdcd7adb6
Bump webpki from 0.22.1 to 0.22.4 (#86)
Bumps [webpki](https://github.com/briansmith/webpki) from 0.22.1 to
0.22.4.
2023-10-12 13:25:08 +09:00
kixelated c95bb8209f
Fix local development. (#87) 2023-10-12 13:24:28 +09:00
kixelated 163bc98605
Missed a link 2023-10-12 13:14:56 +09:00
kixelated 1cf8a7617c
Update links in README.md 2023-10-12 13:13:45 +09:00
kixelated 04ff9d5a6a
Add support for multiple origins (#82)
Adds `moq-api` to get/set the origin for each broadcast. Not used by default for local development.
2023-10-12 13:09:32 +09:00
Luke Curley 5e4eb420c0 Bump webtransport-proto to fix Chrome 117 2023-09-27 07:03:14 +09:00
Luke Curley 43a2ed15d4 Revert "Enable tracing to debug. (#80)"
This reverts commit 6e0e85272d.
2023-09-19 14:49:02 -07:00
Luke Curley 80fd13a9dc Revert "Bump golang.org/x/text from 0.3.7 to 0.3.8 in /dev (#70)"
This reverts commit 5697abeb80.
2023-09-19 10:11:33 -07:00
kixelated eb7e707be3
Implement prioritization in moq-pub (#74)
Here's the main change in webtransport-quinn 0.5.3:
ec553fa340

I haven't run into any errors so I don't know what was broken before
@englishm. I'm hoping that setting the stream priority to max when
writing the stream header avoids the issue? Otherwise we need to go bug
diving.
2023-09-19 10:01:26 -07:00
kixelated 6e0e85272d
Enable tracing to debug. (#80) 2023-09-19 10:00:55 -07:00
Luke Curley 7c8287ee35 I think this token be missing. 2023-09-18 23:07:34 -07:00
kixelated 6bf897d980
Switch to depot for faster ARM builds... at a price. (#79) 2023-09-18 23:06:00 -07:00
kixelated 11f8be65d5
Add some more connection logging. (#78)
So I can debug why my handshake is failing.
2023-09-18 22:37:49 -07:00
kixelated fbd06da2ee
Expose the version VarInt (#77)
Useful for documentation. Right now it's:

```rust
pub const KIXEL_00: Version = _
```

This should probably be an enum too?
2023-09-18 17:24:35 -07:00
kixelated 46604ada41
Fix publishing docker images 2023-09-18 00:19:40 -07:00
kixelated f2c1a0e460
Only perform one release at a time 2023-09-17 22:52:26 -07:00
dependabot[bot] 2696a56885
Bump golang.org/x/net from 0.0.0-20220421235706-1d1ef9303861 to 0.7.0 in /dev (#69)
Bumps [golang.org/x/net](https://github.com/golang/net) from
0.0.0-20220421235706-1d1ef9303861 to 0.7.0.
2023-09-17 22:45:21 -07:00
dependabot[bot] 5697abeb80
Bump golang.org/x/text from 0.3.7 to 0.3.8 in /dev (#70)
Bumps [golang.org/x/text](https://github.com/golang/text) from 0.3.7 to
0.3.8.
2023-09-17 22:45:02 -07:00
kixelated eaa8abcdc6
Better read/write error messages (#75)
Still need to properly support encode/decode though. The problem there
is that encode/decode uses AsyncRead, which means we get io::Error
instead of quinn::ReadError and quinn::WriteError. The io::Error type is
not clonable so we just can't use it, well unless it's wrapped in an Arc
or something gross.
2023-09-17 22:44:01 -07:00
kixelated 89f1bc430d
Also support EC private keys. (#73)
(probably)

@englishm I think you ran into this issue. The `rustls::PrivateKey`
documentation says it supports SEC1-encoded EC private keys so it should
just work?
2023-09-17 22:43:48 -07:00
kixelated 9f50cd5d69
Update README.md 2023-09-17 22:43:22 -07:00
kixelated 38a20153ba
Update README.md 2023-09-17 22:43:05 -07:00
kixelated 415f4e972d
Don't run the publish workflow on PR. (#76)
It takes foooorever and we have a separate check.
2023-09-17 22:29:32 -07:00
Luke Curley 48fb8b77b0 Also build for ARM. 2023-09-17 13:09:38 -07:00
Luke Curley 639f916b6a Why bother test. 2023-09-17 00:22:57 -07:00
Luke Curley c0dbb8c372 Revert my changes. 2023-09-17 00:20:57 -07:00
Luke Curley d6350995a1 Simplify the publish action. 2023-09-16 23:58:38 -07:00
kixelated 2cd887f992
Create docker publish 2023-09-16 23:38:04 -07:00
Mike English 7f402bd070
Update fly.io deployment (#71) 2023-09-15 16:10:13 -04:00
kixelated 88542e266c
Major moq-transport API simplification (#68)
Exponentially easier to use moq-transport as there's no message handling required. This is a BREAKING CHANGE.
2023-09-15 12:06:28 -07:00
dependabot[bot] 35c2127683
Bump webpki from 0.22.0 to 0.22.1 (#67)
Bumps [webpki](https://github.com/briansmith/webpki) from 0.22.0 to
0.22.1.
<details>
<summary>Commits</summary>
<ul>
<li>See full diff in <a
href="https://github.com/briansmith/webpki/commits">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=webpki&package-manager=cargo&previous-version=0.22.0&new-version=0.22.1)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/kixelated/moq-rs/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-09-07 16:20:56 -07:00
Mike English 48de6a3f5c
Fly.io (#49)
Adds support for deploying the `moq-quinn` relay server to fly.io
2023-09-07 16:02:07 -04:00
Zafer Gürel 73f450aa91
moq-pub: Avoid namespace conflict (#66)
namespace as a command line argument
or assign a unique (uuid4) value.

---------

Co-authored-by: Zafer Gurel <zafer@perculus.com>
2023-09-07 15:59:49 -04:00
Mike English 90818ac848
moq-pub: JSON catalog support, bugfixes (#60)
Fixes some bugs around subscription handling and 
adds support for the new JSON catalog format
2023-09-05 15:08:35 -04:00
Mike English 2b1a9a4ce5
Add moq-pub (#54)
Initial version of a CLI publisher / contribution tool
2023-08-30 09:32:42 -04:00
dependabot[bot] 838bffdd51
Bump rustls-webpki from 0.100.1 to 0.100.2 (#59)
Bumps [rustls-webpki](https://github.com/rustls/webpki) from 0.100.1 to
0.100.2.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/rustls/webpki/releases">rustls-webpki's
releases</a>.</em></p>
<blockquote>
<h2>v/0.100.2</h2>
<h2>Release notes</h2>
<ul>
<li>certificate path building and verification is now capped at 100
signature validation operations to avoid the risk of CPU usage
denial-of-service attack when validating crafted certificate chains
producing quadratic runtime. This risk affected both clients, as well as
servers that verified client certificates.</li>
</ul>
<h2>What's Changed</h2>
<ul>
<li>v0.100.2 prep by <a
href="https://github.com/cpu"><code>@​cpu</code></a> in <a
href="https://redirect.github.com/rustls/webpki/pull/154">rustls/webpki#154</a></li>
</ul>
<p><strong>Full Changelog</strong>: <a
href="https://github.com/rustls/webpki/compare/v/0.100.1...v/0.100.2">https://github.com/rustls/webpki/compare/v/0.100.1...v/0.100.2</a></p>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="c8b821450b"><code>c8b8214</code></a>
Bump MSRV to 1.60</li>
<li><a
href="855752292e"><code>8557522</code></a>
Avoid testing MSRV of dev-dependencies</li>
<li><a
href="73a7f0c7d7"><code>73a7f0c</code></a>
Cargo: version 0.100.1 -&gt; 0.100.2</li>
<li><a
href="4ea052366f"><code>4ea0523</code></a>
verify_cert: enforce maximum number of signatures.</li>
<li>See full diff in <a
href="https://github.com/rustls/webpki/compare/v/0.100.1...v/0.100.2">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=rustls-webpki&package-manager=cargo&previous-version=0.100.1&new-version=0.100.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/kixelated/moq-rs/network/alerts).

</details>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-08-29 15:30:40 -07:00
kixelated 8e3ebfcc7b
Remove the incompatible role check. (#58) 2023-08-29 15:30:21 -07:00
Mike English fdc05ffb99
moq-transport: Make Messages and Objects Clone (#57) 2023-08-29 00:59:30 -04:00
Mike English 5423d7c93a
Add more detailed Debug for MapSource (#56)
and everything it contains.

Stop short of printing all of the bytes in a State's VecDeque, but
expose most everything else for easier troubleshooting.
2023-08-28 15:14:15 -04:00
kixelated c53b3ddbe0
Update README.md 2023-08-25 16:36:06 -07:00
kixelated 5c3f794053
A few minor changes to the API. (#52)
The only salvagable remains from a multi-day refactoring effort. The
main benefit is that Setup messages are no longer part of the Message
enum, so match will be a lot easier.
2023-08-23 15:28:27 -07:00
kixelated c5d8873e4e
Webtransport generic (#51)
Switched to the webtransport-generic crate so quinn or quiche (with
adapter) can be used. This also involved switching out the
decoder/encoder since it meant a wrapper was required.
2023-08-15 10:20:03 -07:00
kixelated 3a65873055
Fix the buffering used for parsing. (#50)
fill_buf didn't work like I expected. This code is much better anyway.
2023-08-02 11:41:28 -07:00
kixelated 0e239935a6
Actually drain segments. (#48) 2023-07-23 10:28:20 -07:00
kixelated 891d6b167b
Remove the file source, since it doesn't loop. (#47)
ffmpeg -> moq-warp coming soon
2023-07-21 21:03:09 -07:00
kixelated e99ecee40a
Webtransport quinn fix (#46) 2023-07-20 17:42:35 -07:00
kixelated 52d3fc81be
Switch to webtransport-quinn (#44) 2023-07-19 18:04:45 -07:00
Luke Curley a2dd281126 Add vscode recommendations. 2023-07-10 10:08:00 -07:00
Luke Curley cf2a80b323 Small fixes. 2023-07-08 09:14:15 -07:00