Quentin Gliech
3901829ccd
Prometheus exporter & other stuff
2022-09-28 11:13:53 +02:00
Quentin Gliech
7dd84a6584
WIP: bump OTEL
2022-09-28 11:13:53 +02:00
Quentin Gliech
7b819ffa8b
Simplify the HTTP client building
...
Also supports loading the WebPKI roots instead of the native ones for
TLS
2022-09-27 19:05:25 +02:00
Quentin Gliech
fa47f6e150
Upgrade axum to 0.6.0-rc.1
2022-09-06 13:11:54 +02:00
Quentin Gliech
cc6c6e8bdb
Remove the config dependency from the email, templates & handlers crates
2022-09-02 16:01:11 +02:00
Quentin Gliech
d7c9ca4796
Add a debug CLI command to check the compiled policies
2022-08-22 16:36:31 +02:00
Quentin Gliech
398379e21b
Better Tower layers
2022-08-19 10:51:24 +02:00
Quentin Gliech
c1ed726dc8
Enable the clippy::str_to_string lint
2022-08-08 10:06:20 +02:00
Quentin Gliech
ba6a382f2c
Authorization grant policy ( #288 )
...
Co-authored-by: Hugh Nimmo-Smith <hughns@matrix.org >
2022-07-21 16:18:59 +00:00
Quentin Gliech
eb22c33a7d
Remove the login policy (since it is not implemented yet)
2022-06-03 13:37:20 +02:00
Quentin Gliech
071055ad18
Embed the default policy in the binary
2022-06-03 13:37:20 +02:00
Quentin Gliech
aab1f49374
Support for applying OPA policies during client registration
2022-06-03 13:37:20 +02:00
Quentin Gliech
1aff98bdb3
Working legacy login endpoint
2022-05-19 10:17:49 +02:00
Quentin Gliech
185562c866
Form error state overhaul
...
This adds a new FormState structure here to hold the state of an errored
from, including retaining field value and better error codes.
It also adds error recovery for the registration form, and properly
loads the post_login_action context in case of errors.
2022-05-12 13:35:58 +02:00
Quentin Gliech
f4353b660e
Have a unified URL builder/router
2022-05-10 09:52:48 +02:00
Quentin Gliech
8a256596d7
Serve static files live from disk in dev mode
2022-04-28 16:08:50 +02:00
Quentin Gliech
a3f1a880aa
Remove some unnecessary dependencies
2022-04-08 09:10:33 +02:00
Quentin Gliech
bc24e30867
Add CORS headers to API-like routes
2022-04-07 16:25:42 +02:00
Quentin Gliech
b43817e66c
Attach remote and local address to HTTP server/client spans
2022-04-07 11:52:43 +02:00
Quentin Gliech
4e31fc6c84
Get rid of warp
2022-04-06 17:35:29 +02:00
Quentin Gliech
9b5ecd5bc4
Make the ServerLayer work properly with axum
2022-04-06 17:35:29 +02:00
Quentin Gliech
7c8f8722cd
Axum migration: signed cookies, errors, CSRF tokens, sessions
2022-04-06 17:35:29 +02:00
Quentin Gliech
797257cce7
Start migrating to Axum
...
Now with the homepage and the static files
2022-04-06 17:35:29 +02:00
Quentin Gliech
785101564a
Load multiple config files specified in the MAS_CONFIG env variable
2022-03-14 17:46:18 +01:00
Quentin Gliech
c9f16ae781
Load the config file from a environment variable
2022-03-11 17:03:28 +01:00
Quentin Gliech
62f633a716
Move clients to the database
2022-03-08 19:07:46 +01:00
Quentin Gliech
b81f4caace
Better OpenTelemetry tracer
2022-02-24 16:03:37 +01:00
Quentin Gliech
c5858e6ed5
Many improvements to the mas-http crate
...
- make `mas_http::client` implement Service directly instead of being
an async function
- a Get layer that makes a Service<Uri>
- better error sources in the JSON layer
- make the client have a proper error type
2022-02-15 08:28:25 +01:00
Quentin Gliech
497a3e006e
Implement a JSON tower layer
...
This will help requesting JSON APIs
2022-02-11 14:15:31 +01:00
Quentin Gliech
8c36e51176
Proper HTTP client
2022-02-10 16:38:17 +01:00
Quentin Gliech
2df40762a2
Dedicated HTTP server/client crate
...
Also have better names for the HTTP routes
2022-02-10 16:38:16 +01:00
Quentin Gliech
26a340d5dc
Bump dependencies
2022-02-04 10:18:01 +01:00
Quentin Gliech
c3ddc088ab
Reorganise CLI crate
2022-02-01 18:49:55 +01:00
Quentin Gliech
a45381828c
Loads of docs & enabling more clippy lints
2022-02-01 12:02:32 +01:00
Quentin Gliech
7e24cd0948
Move secrets and oauth2 clients config
2022-02-01 09:34:55 +01:00
Quentin Gliech
05f0756c13
Improve the configuration schema
2022-01-28 11:51:14 +01:00
Quentin Gliech
79d7561d93
Allow loading private keys from files
2022-01-26 18:29:11 +01:00
Quentin Gliech
c7a243a3a1
Minor logging improvements
...
- only have colors if the output terminal is a tty
- log in a non-blocking fashion
2022-01-26 17:21:54 +01:00
Quentin Gliech
46caf284cf
Fix traces not being created for requests
2022-01-25 11:46:14 +01:00
Quentin Gliech
1355be8fb8
Add AWS SES backend to send email
2022-01-24 16:31:53 +01:00
Quentin Gliech
93cbad34f5
Actually send emails
2022-01-19 18:00:45 +01:00
Quentin Gliech
29b2fc2e43
CLI subcommand to mark emails as verified
2022-01-18 18:33:05 +01:00
Quentin Gliech
f933ace007
New JWT/JOSE crate
...
Still WIP, needs to handle time related claims
2022-01-04 22:28:00 +01:00
Quentin Gliech
2f97ca685d
Split the core crate
2021-12-17 18:04:30 +01:00
Quentin Gliech
ceb17d3646
Move storage module to its own crate
2021-12-17 12:15:07 +01:00
Quentin Gliech
1d58d134a9
Fix user registration from CLI
2021-12-15 11:14:34 +01:00
Quentin Gliech
95bde28ebe
Soft-fail if .env fails to load
2021-12-14 16:27:18 +01:00
Quentin Gliech
7341f0dccf
Better error context on startup
2021-12-14 11:52:19 +01:00
Quentin Gliech
c53318eca0
Refactor templates loading & implement templates hot-reload
2021-12-09 14:07:09 +01:00
Quentin Gliech
54a7e63913
Tweak items visibility in the core crate
2021-11-25 17:11:23 +01:00