Quentin Gliech
f377c87411
Properly use rustls-platform-verifier with reqwest
2025-07-30 12:04:30 +02:00
Quentin Gliech
c3707c13ae
Add license headers in most files that missed them
2025-06-12 11:01:07 +02:00
Quentin Gliech
3d96dc9d47
Update license headers to match the actual license
2025-06-12 10:32:16 +02:00
Quentin Gliech
97e83e1467
Define all the dependencies at the workspace level
2025-06-10 14:25:38 +02:00
Quentin Gliech
28676f3d56
Remove the global read_timeout on the HTTP client
...
The `connect_timeout` plus `timeout` are enough to handle general
network issues
2025-04-28 19:39:46 +02:00
Quentin Gliech
3ab28d4957
Remove explicit imports of std::future::Future, as it is now in the prelude
2025-02-21 16:24:53 +01:00
Quentin Gliech
3d2b67a0b2
Upgrade to Rust 1.85 and edition 2024
2025-02-21 16:15:02 +01:00
Quentin Gliech
33fc45605f
Update most Rust dependencies & disable some unused features
2025-02-06 12:50:50 +01:00
Quentin Gliech
b5155cc8e4
Update the rest of the OTEL deps and use the new APIs
2024-12-12 16:04:48 +01:00
Quentin Gliech
a1afba740a
Restore HTTP request metrics
2024-10-28 13:46:38 +01:00
Quentin Gliech
b88a3b3c62
Fix HTTP request tracing and make the DNS resolver traced again
2024-10-28 13:46:38 +01:00
Quentin Gliech
c86b3f254d
Fix documentation link
2024-10-28 13:46:38 +01:00
Quentin Gliech
14948c35cb
Replace all the manual HTTP clients with reqwest
2024-10-28 13:46:38 +01:00
Quentin Gliech
b3b9a872d6
Replace HTTP client in oidc-client with reqwest
2024-10-28 13:46:38 +01:00
Quentin Gliech
52b90692be
WIP: switch to reqwest
2024-10-28 13:46:38 +01:00
dependabot[bot]
6da5cf663c
build(deps): bump futures-util from 0.3.30 to 0.3.31
...
Bumps [futures-util](https://github.com/rust-lang/futures-rs ) from 0.3.30 to 0.3.31.
- [Release notes](https://github.com/rust-lang/futures-rs/releases )
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.30...0.3.31 )
---
updated-dependencies:
- dependency-name: futures-util
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-10-07 19:04:27 +02:00
Quentin Gliech
ed4b6c42a7
Remove (C)
2024-09-10 14:28:55 +02:00
Quentin Gliech
f6bb100c0a
License headers change
2024-09-05 13:25:42 +02:00
Quentin Gliech
d1b9a4980c
Update opentelemetry to 0.24.0
2024-07-25 11:01:43 +02:00
Quentin Gliech
798ca90241
Fix mas-cli
...
This does a few things:
- move `bytes` to workspace dependencies
- write an hyper-based transport for Sentry
- ignore OTEL errors related to propagations
- fix everything else in mas-cli
2024-07-05 10:07:40 +02:00
Quentin Gliech
2e63e3da71
Write an adapter for opentelemetry-http
2024-07-05 10:07:40 +02:00
Quentin Gliech
e7f50a92d6
Move tower-http dep to the workspace and adapt mas-axum-utils
...
We removed here the Timeout layer on the HTTP client service, because it
required the body to be Default, which isn't the case anymore. Not sure
what to do about it.
2024-07-05 10:07:40 +02:00
Quentin Gliech
f338aacf26
Fix the mas-http tests
2024-07-05 10:07:40 +02:00
Quentin Gliech
dcb9bdeecf
Remove the client features from mas-oidc-client and replace it in tests
2024-07-05 10:07:40 +02:00
Quentin Gliech
ea85be55e6
Upgrade rustls and update mas-http client bits
2024-07-05 10:07:40 +02:00
Quentin Gliech
a7a9369469
Upgrade most HTTP/Hyper crates and make mas-listener work
2024-07-05 10:07:40 +02:00
reivilibre
49e8fe57f4
Improve errors when MAS contacts the Synapse homeserver ( #2794 )
...
* Add some drive-by docstrings
* Change text rendering of catch_http_codes::HttpError
Using `#[source]` is unnatural here because it makes it look like
two distinct errors (one being a cause of the other),
when in reality it is just one error, with 2 parts.
Using `Display` formatting for that leads to a more natural error.
* Add constraints to `catch_http_code{,s}` methods
Not strictly required, but does two things:
- documents what kind of function is expected
- provides a small extra amount of type enforcement at the call site,
rather than later on when you find the result doesn't implement Service
* Add a `catch_http_errors` shorthand
Nothing major, just a quality of life improvement so you don't have to
repetitively write out what a HTTP error is
* Unexpected error page: remove leading whitespace from preformatted 'details' section
The extra whitespace was probably unintentional and makes the error harder to read,
particularly when it wraps onto a new line unnecessarily
* Capture and log Matrix errors received from Synapse
* Drive-by clippy fix: use clamp instead of min().max()
* Convert `err(Display)` to `err(Debug)` for `anyhow::Error`s in matrix-synapse support module
2024-06-07 11:14:04 +00:00
Quentin Gliech
d061d7f6b3
Move tokio to a workspace dependency
2024-05-15 14:54:34 +02:00
dependabot[bot]
43f4768ae6
build(deps): bump tokio from 1.36.0 to 1.37.0
...
Bumps [tokio](https://github.com/tokio-rs/tokio ) from 1.36.0 to 1.37.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.36.0...tokio-1.37.0 )
---
updated-dependencies:
- dependency-name: tokio
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-04-30 18:11:14 +02:00
dependabot[bot]
5fd433059c
build(deps): bump bytes from 1.5.0 to 1.6.0
...
Bumps [bytes](https://github.com/tokio-rs/bytes ) from 1.5.0 to 1.6.0.
- [Release notes](https://github.com/tokio-rs/bytes/releases )
- [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md )
- [Commits](https://github.com/tokio-rs/bytes/compare/v1.5.0...v1.6.0 )
---
updated-dependencies:
- dependency-name: bytes
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2024-04-05 09:48:10 +02:00
Quentin Gliech
dde907758e
Use OTEL semantic conventions constants for most attributes
2024-03-19 17:15:14 +01:00
Quentin Gliech
d8f5fdaf5c
Moved some dependencies in the workspace and upgrade some dependencies
2024-03-19 14:54:35 +01:00
Quentin Gliech
6eb6209bd8
Use rustls-platform-verifier for cert validation
...
This simplifies by removing the mutually exclusive `native-roots` and
`webpki-roots` features with something that is suitable for all
platforms.
2024-03-06 14:03:59 +01:00
Quentin Gliech
2c9b8a446d
Bump Clippy to 1.75 and Rust to 1.76
2024-02-27 16:58:43 +01:00
Quentin Gliech
b927d330c9
Bump most Rust dependencies
2024-02-02 15:37:05 +01:00
Quentin Gliech
d20b0dc81d
Fix the native-certs (and therefore docker) build
2024-02-02 14:39:24 +01:00
Quentin Gliech
aeca03a120
Upgrade rustls
2024-02-02 11:45:20 +01:00
Quentin Gliech
d01b8c36a6
Bump Rust dependencies and update cargo-deny exceptions
2024-02-02 11:45:20 +01:00
Quentin Gliech
ba95dd022a
mas-http: enable the tower/util feature
2023-12-07 17:10:57 +01:00
Quentin Gliech
ea91dfc501
Set crates descriptions for crates we publish
2023-12-07 17:10:57 +01:00
Quentin Gliech
49963b26f8
Prepare workspace to publish OIDC crates
2023-12-07 16:02:55 +01:00
Quentin Gliech
a0f5f3c642
Enable clippy lints on a workspace level
...
This enables a lot more lints than before in some crates, so this fixed a lot of warnings as well.
2023-12-05 17:20:42 +01:00
Quentin Gliech
30247448d5
Bump Rust dependencies
2023-11-24 13:04:37 +01:00
dependabot[bot]
9802981c0e
build(deps): bump tokio from 1.33.0 to 1.34.0
...
Bumps [tokio](https://github.com/tokio-rs/tokio ) from 1.33.0 to 1.34.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.33.0...tokio-1.34.0 )
---
updated-dependencies:
- dependency-name: tokio
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-11-14 13:51:15 +01:00
Quentin Gliech
5ab0e880ff
Upgrade opentelemetry to 0.21.0
2023-11-08 11:49:03 +01:00
dependabot[bot]
f2286e37ef
build(deps): bump the opentelemetry group with 8 updates
...
Bumps the opentelemetry group with 8 updates:
| Package | From | To |
| --- | --- | --- |
| [tracing-opentelemetry](https://github.com/tokio-rs/tracing-opentelemetry ) | `0.21.0` | `0.22.0` |
| [opentelemetry-http](https://github.com/open-telemetry/opentelemetry-rust ) | `0.9.0` | `0.10.0` |
| [opentelemetry-jaeger](https://github.com/open-telemetry/opentelemetry-rust ) | `0.19.0` | `0.20.0` |
| [opentelemetry-otlp](https://github.com/open-telemetry/opentelemetry-rust ) | `0.13.0` | `0.14.0` |
| [opentelemetry-prometheus](https://github.com/open-telemetry/opentelemetry-rust ) | `0.13.0` | `0.14.0` |
| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-rust ) | `0.12.0` | `0.13.0` |
| [opentelemetry-stdout](https://github.com/open-telemetry/opentelemetry-rust ) | `0.1.0` | `0.2.0` |
| [opentelemetry-zipkin](https://github.com/open-telemetry/opentelemetry-rust ) | `0.18.0` | `0.19.0` |
Updates `tracing-opentelemetry` from 0.21.0 to 0.22.0
- [Release notes](https://github.com/tokio-rs/tracing-opentelemetry/releases )
- [Changelog](https://github.com/tokio-rs/tracing-opentelemetry/blob/v0.1.x/CHANGELOG.md )
- [Commits](https://github.com/tokio-rs/tracing-opentelemetry/compare/v0.21.0...v0.22.0 )
Updates `opentelemetry-http` from 0.9.0 to 0.10.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-rust/releases )
- [Commits](https://github.com/open-telemetry/opentelemetry-rust/compare/v0.9.0...v0.10.0 )
Updates `opentelemetry-jaeger` from 0.19.0 to 0.20.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-rust/releases )
- [Commits](https://github.com/open-telemetry/opentelemetry-rust/compare/v0.19.0...v0.20.0 )
Updates `opentelemetry-otlp` from 0.13.0 to 0.14.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-rust/releases )
- [Commits](https://github.com/open-telemetry/opentelemetry-rust/compare/v0.13.0...v0.14.0 )
Updates `opentelemetry-prometheus` from 0.13.0 to 0.14.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-rust/releases )
- [Commits](https://github.com/open-telemetry/opentelemetry-rust/compare/v0.13.0...v0.14.0 )
Updates `opentelemetry-semantic-conventions` from 0.12.0 to 0.13.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-rust/releases )
- [Commits](https://github.com/open-telemetry/opentelemetry-rust/compare/v0.12.0...v0.13.0 )
Updates `opentelemetry-stdout` from 0.1.0 to 0.2.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-rust/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-rust/blob/v0.2.0/CHANGELOG.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-rust/commits/v0.2.0 )
Updates `opentelemetry-zipkin` from 0.18.0 to 0.19.0
- [Release notes](https://github.com/open-telemetry/opentelemetry-rust/releases )
- [Commits](https://github.com/open-telemetry/opentelemetry-rust/compare/v0.18.0...v0.19.0 )
---
updated-dependencies:
- dependency-name: tracing-opentelemetry
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: opentelemetry
- dependency-name: opentelemetry-http
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: opentelemetry
- dependency-name: opentelemetry-jaeger
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: opentelemetry
- dependency-name: opentelemetry-otlp
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: opentelemetry
- dependency-name: opentelemetry-prometheus
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: opentelemetry
- dependency-name: opentelemetry-semantic-conventions
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: opentelemetry
- dependency-name: opentelemetry-stdout
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: opentelemetry
- dependency-name: opentelemetry-zipkin
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: opentelemetry
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-11-08 11:49:03 +01:00
dependabot[bot]
8d5493930d
build(deps): bump rustls from 0.21.7 to 0.21.8
...
Bumps [rustls](https://github.com/rustls/rustls ) from 0.21.7 to 0.21.8.
- [Release notes](https://github.com/rustls/rustls/releases )
- [Commits](https://github.com/rustls/rustls/compare/v/0.21.7...v/0.21.8 )
---
updated-dependencies:
- dependency-name: rustls
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-11-03 16:14:44 +01:00
dependabot[bot]
69798aef47
build(deps): bump tokio from 1.32.0 to 1.33.0
...
Bumps [tokio](https://github.com/tokio-rs/tokio ) from 1.32.0 to 1.33.0.
- [Release notes](https://github.com/tokio-rs/tokio/releases )
- [Commits](https://github.com/tokio-rs/tokio/compare/tokio-1.32.0...tokio-1.33.0 )
---
updated-dependencies:
- dependency-name: tokio
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2023-10-09 16:11:09 +02:00
Quentin Gliech
c9155ef0cf
Rust dependencies housekeeping
...
Including:
- package upgrades
- stop using the patched version of `ulid`
- update cargo deny duplicate exception list
2023-09-14 23:43:00 +02:00
Quentin Gliech
54071c4969
Make the HTTP client factory reuse the underlying client
...
This avoids duplicating clients, and makes it so that they all share the same connection pool.
2023-09-14 16:52:01 +02:00