42 Commits

Author SHA1 Message Date
Philip Jenvey
2fb6b84ad4
fix: make pyo3 usage optional per the feature flag (#1731)
Some checks failed
Glean probe-scraper / glean-probe-scraper (push) Has been cancelled
and cleanup feature flag usage (only specifying defaults in syncserver's
Cargo.toml)

Closes STOR-295
2025-07-29 17:08:29 -07:00
Taddes
0768d4975d
chore: remove extraneous dependencies (#1700)
Some checks failed
Glean probe-scraper / glean-probe-scraper (push) Has been cancelled
chore: remove extraneous dependencies
2025-05-22 19:06:58 -04:00
Philip Jenvey
624eced1e9
feat: emit oauth verification timeouts as metrics (not sentry) (#1694)
Some checks failed
Glean probe-scraper / glean-probe-scraper (push) Has been cancelled
and fix the sentry middleware to use ReportableError::tags

Closes STOR-201
2025-05-02 13:51:52 -07:00
Philip Jenvey
a26ff490b8
refactor: kill tokenserver's TokenType now that it's solely oauth
Issue STOR-64
2025-04-23 16:01:10 -07:00
Philip Jenvey
0ca435fb1a
refactor: simplify metric_label to return a &str
Issue STOR-64
2025-04-23 16:01:07 -07:00
Taddes
0675930a15
fix: resolve pyo3 vuln deprecations (#1682)
Some checks failed
Glean probe-scraper / glean-probe-scraper (push) Has been cancelled
fix: resolve pyo3 vuln deprecations
2025-04-11 18:21:35 -04:00
Philip Jenvey
c535e5ae52
feat: wire MysqlError's ReportableError impl into TokenserverError (#1611)
* feat: wire MysqlError's ReportableError impl into TokenserverError

and quiet Pool errors

Closes SYNC-4424

* kluge: allow(clippy::result_large_err) for TokenserverError

(for now) we can get rid of this in a later refactoring
2024-10-17 14:23:45 -07:00
Philip Jenvey
bbd5abac8e
fix: correct TokenserverError's sentry "type"/"value" fields
Closes SYNC-4407
2024-09-18 13:35:13 -07:00
JR Conlin
dbbdd1dfc3
feat: Remove support for BrowserID (#1531)
* feat: Remove support for BrowserID
* mark test only functions as such. I think we can drop MapAndThenTrait for more recent implementations of rust.

Closes: SYNC-3684
2024-06-14 12:51:02 -07:00
JR Conlin
2584b977b8
feat: Add timeouts for tokenserver database calls. (#1561)
Closes: SYNC-4270
2024-05-31 13:53:51 -07:00
JR Conlin
771813087c
feat: Add normalized ReportableError to errors (#1559)
* feat: Add normalized ReportableError to errors

We want to do things like add tags and other features to sync errors the
way that we do in other packages. To do so, we're backporting
ReportableError from Autopush to Syncstorage.

This also addresses some clippy fixes required by 1.78

This continues to use the `Taggable` trait, which we may want to
port to autopush.

Closes SYNC-4262
2024-05-20 08:51:58 -07:00
JR Conlin
83079555fb
feat/SYNC-4244_stale (#1546)
* feat: log bad client state to stderr & metrics

Closes: SYNC-4244
2024-05-08 18:47:33 -07:00
Tarik Eshaq
1b11684648
feat: Puts pyo3 behind feature flag and derives tokens directly in Rust (#1513)
* Removes pyo3 and derives tokens directly in Rust

* Adds tests for JWT verifying

* Adds tests for token generation

* Adds metrics for oauth verify error cases

* Updates jsonwebtoken to not include default features (including pem loading)

* Adds context and logs errors during oauth verify

* Uses ring for cryptographic rng

* Adds back python impl under feature flag

* Uses one cached http client for reqwest
2024-02-12 11:14:15 -05:00
JR Conlin
1b9ebbf40f
Chore/contributor rollup (#1479)
* These needed to be rolled in due to various dependency changes.

 * Fix the URL people should set to use their Custom Server (https://github.com/mozilla-services/syncstorage-rs/pull/1453) -
[Ekleog](https://github.com/Ekleog)
 * Make docker files more podman friendly (https://github.com/mozilla-services/syncstorage-rs/pull/1431) -
[mb](https://github.com/mb)

* This PR also updates a number of dependencies
2023-10-18 14:24:41 -07:00
JR Conlin
1f9323b7b3
feat: convert dependencies to use workspaces
Update package description and some dependencies to use `workspace`
inheritance.

* Also updates circleci to produce dockerhub image.

Closes #1461
Issue #1362

* f touch to retry circleci

* f try to pre-emptively lock protobuf to the older 2.25.2 version

* f force Cargo.lock to use protobuf 2.25.2, dammit

* f move protobuf pin to syncstorage-spanner

* f revert cargo.lock

* f revert #448

* f update base64 / tickle circleci

* f update cadence (and kick circleci)

* f clippy

* f switch to latest google-cloud-rust

* f update to use google-cloud-rust
2023-08-29 13:57:53 -07:00
Philip Jenvey
80d21e7143
merge master 2023-03-07 12:02:16 -08:00
Philip Jenvey
d700e47349
chore: tag 0.13.6 2023-03-06 17:54:52 -08:00
Philip Jenvey
ecb29025a6
chore: tag 0.13.5 2023-03-03 14:12:59 -08:00
Philip Jenvey
028b8b1fb4
chore: tag 0.13.4 2023-02-24 11:09:52 -08:00
Philip Jenvey
2eecb8caca
chore: tag 0.13.3 2023-02-24 09:19:30 -08:00
Philip Jenvey
fb406a055b
chore: tag 0.13.2 2023-02-06 13:20:15 -08:00
Ethan Donowitz
b5b7e57f93
refactor: add database crates (#1407)
Closes #1277
2023-01-10 16:06:03 -05:00
Ethan Donowitz
e48f948456
chore: tag 0.13.1 (#1448) 2022-12-16 14:07:17 -05:00
Ethan Donowitz
e99c22fcc2
chore: tag 0.13.1 2022-12-16 13:15:37 -05:00
Ethan Donowitz
b95e549acb
chore: upgrade to Rust 1.65 (#1441) 2022-11-18 17:25:39 -05:00
Philip Jenvey
926dd11db3
chore: tag 0.13.0 2022-11-13 23:59:45 -08:00
Ethan Donowitz
929a3144af
feat: report blocking threadpool statistics (#1418)
emit metrics about the number of blocking tasks

Closes #1416
2022-11-13 23:49:55 -08:00
Philip Jenvey
23a3c4ba3a
merge master 2022-11-01 12:55:04 -07:00
Philip Jenvey
221fcc2198
chore: tag 0.12.5 2022-11-01 12:00:15 -07:00
Ethan Donowitz
0ae5fd2059
refactor: add settings crates (#1306)
This is a breaking change. This commit separates syncstorage and tokenserver settings into separate structs that are contained by a parent `Settings` struct. This means that any env vars that hold settings specific to syncstorage (e.g. `SYNC_DATABASE_URL`) have been renamed to `SYNC_SYNCSTORAGE__DATABASE_URL`. Any settings that were moved from the top-level `Settings` struct to the lower level, syncstorage-specific struct will now have a `SYNC_SYNCSTORAGE__` prefix instead of a `SYNC_` prefix.

Closes #1276
2022-10-19 17:15:56 -04:00
Ethan Donowitz
3a21947cf5
chore: tag 0.12.4 (#1420) 2022-10-10 10:45:04 -07:00
Ethan Donowitz
92c38889d1
chore: tag 0.12.4 2022-10-10 10:51:07 -04:00
Ethan Donowitz
fca795e3c0
chore: update to Rust 1.64.0 (#1415) 2022-10-05 12:54:51 -04:00
Ethan Donowitz
780167e6e1
chore: tag 0.12.3 (#1404) 2022-09-23 18:26:00 -04:00
Ethan Donowitz
3ad543b160
chore: tag 0.12.2 (#1399) 2022-09-19 13:53:45 -04:00
Ethan Donowitz
db037d0322
chore: tag 0.12.1 (#1386) 2022-08-25 17:48:01 -04:00
Ethan Donowitz
75231c8feb
feat: add __error__ endpoint to Tokenserver (#1375)
Closes #1364
2022-08-18 10:02:49 -04:00
Ethan Donowitz
a193148142
chore: tag 0.12.0 (#1353) 2022-07-05 14:24:10 -04:00
Philip Jenvey
b413d8e106
Merge branch 'master' into release/0.11-merge 2022-06-10 14:52:53 -07:00
Ethan Donowitz
9bea32803c
bug: convert DbErrors to TokenserverErrors (#1327)
Closes #1316
2022-06-10 17:30:45 -04:00
Philip Jenvey
403e9a2ad5
merge master 2022-06-06 16:45:23 -07:00
Ethan Donowitz
a52900f6a9
refactor: add common crates (#1281)
Closes #1275
2022-05-06 17:42:50 -04:00