Bug Fixes
- fix metrics and BrowserID error context (#1294) (a086a118)
- fix Tokenserver migrations (#1282) (4c64c1ce)
- add missing Tokenserver headers (#1243) (38de8332, closes #1242)
- fix Tokenserver metrics (#1218) (d2dc0063, closes #1214)
- move I/O calls to blocking threadpool (#1190) (cbeebf46, closes #1188)
- resolve intermittent Tokenserver test failure (#1171) (0c05e999, closes #1170)
- Revert "update sentry version and remove ignore rustsec-2020-0041 in … (#1137) (48947bbf)
- removed send from async_trait for DbPool (#1139) (8c603de6)
- Fix build for Rust 1.53.0 (#1106) (0b37bbe0, closes #1105)
- Convert integral values to String before converting to Value (#1056) (21da763b, closes #1055)
- use ValidationErrorKind metric_label in ApiError (#1038) (4dc77afd)
Chore
- disable grpcio openssl (#1288) (8ff7a40d)
- prefer CIRCLE_SHA1 vs CIRCLE_TAG in circle's cache key (#1285) (37d2251c, closes #1284)
- update for Rust 1.60.0 (#1280) (c4bca395)
- add Python build to Makefile (#1244) (291a40ea, closes #1226)
- update regex (#1252) (fc34353a)
- update to Rust 1.59 (#1227) (0e9b0f6e)
- update to Rust 1.58 and switch to GCP Rust crate (#1201) (a7c5f809)
- label the circleci e2e tests (#1185) (bf3ef8b3)
- update 12/2/21 (#1181) (04cf2344)
- update actix-http version due to RUSTSEC-2021-0081 (#1140) (0106131e)
- switch failure crate with thiserror (#1122) (5369f1ae)
- Update code for Rust 1.54.0 (#1123) (7ab37291)
- enable flake8 in circleci config for tools/integration_tests (#1121) (dee69dd3)
- Updates for May 2021 (#1078) (f25e4e0f)
- tag 0.10.1 (#1042) (ecada4b3)
Test
- Add BrowserId support to Tokenserver load tests (#1219) (b6d87b72, closes #1213)
- add Tokenserver load tests (#1184) (46d4a9ea, closes #1107)
- add Tokenserver integration tests to CI (#1180) (aa18c1a0, closes #1174)
- Add Tokenserver integration tests (#1152) (7209ccf5, closes #1048)
Doc
- add Tokenserver README (#1162) (b5fa8c8a, closes #1082)
- add comments about Tokenserver state being an Option (#1161) (c1dc552b, closes #1102)
- Add Apache 2.0 license to prepare-spanner.sh (#1120) (f0c16ba5)
- Update spanner configuration documentation (#1047) (57405c1e, closes #1045)
Refactor
- cache FxA OAuth client (#1212) (04b24378, closes #1209)
- Remove Tokenserver support for per-node secrets (#1211) (eac6b558, closes #1208)
- remove static service IDs (#1199) (ae659702, closes #1144, breaks #)
- Tokenserver: Add mature MySQL adapter (#1119) (503d1aa8, closes #1054)
- Use PyFxA to verify Tokenserver tokens (#1103) (34401777, closes #1102)
- Clean up Tokenserver code (#1087) (e9247699, closes #968)
- Tokenserver: Rewrite inlined Python code in Rust (#1053) (34fe5859, closes #1049)
- Add ToSpannerValue trait (#1046) (2ce45705, closes #260)
- Emit metric for spanner DbPool::get time taken (#1044) (57bd30ad)
- Use generic tuple extractor in web extractors (#1043) (71c62be1, closes #698)
Breaking Changes
Features
- spawn Tokenserver pool reporter (#1283) (ee8e1794)
- don't run Tokenserver migrations on startup (#1286) (1a197a6c)
- emit 4XX errors as metrics instead of Sentry events (#1274) (cacd8285)
- add context to
TokenserverError
s (#1224) (92e7d262, closes #1223) - Pass Tokenserver origin field through token payload (#1264) (a4c340e1, closes #1245)
- add BrowserID support for Tokenserver (#1216) (38d6a27b, closes #1215)
- add Tokenserver metrics (#1200) (aa93312a, closes #1108)
- add missing Tokenserver response fields (#1176) (a3d4f094, closes #1173)
- Tokenserver: add per-node secrets (#1169) (bed59e2c, closes #1104)
- make Tokenserver DbPool#get async (#1175) (3d4c180d, closes #1172)
- add Tokenserver admin scripts (#1168) (0ac30958, closes #1086)
- Add client state validation (#1160) (0996cb15, closes #1091)
- Tokenserver: Add node assignment logic (#1158) (db739def, closes #1051)
- Tokenserver: Add validations and user updating for generation, keys_changed_at, and client_state (#1145) (337ab8f4, closes #866)
- Add ability to disable syncstorage endpoints (#1159) (5f2fa8a3, closes #1083)
- Tokenserver: Add support for client-specified token duration (#1151) (17f89ac5, closes #1050)
- Add test mode to Tokenserver (#1143) (cbdc12e5, closes #1142)
- Tokenserver: Implement extractors for generation, keys_changed_at, client_state (#1141) (f29064d3, closes #1133)
- generation, keys_changed_at, and client_state: Add database methods (#1136) (44e832b8, closes #1132)
- Integrate Spanner emulator with CI (#1079) (e6ec1acd, closes #566)
- Support SYNC_SPANNER_EMULATOR_HOST (#1061) (322603a7, closes #915)