@@ -16,7 +16,7 @@ use thiserror::Error;
16
16
use thiserror_ext:: { Construct , ContextInto } ;
17
17
use tokio:: sync:: mpsc:: { self , Receiver , Sender } ;
18
18
use tracing:: { Level , error, info, warn} ;
19
- use uuid:: Uuid ;
19
+ use uuid:: { NonNilUuid , Uuid } ;
20
20
21
21
use self :: {
22
22
constraint_pausing:: { ConstraintDescription , IndexDescription } ,
@@ -197,7 +197,7 @@ pub struct MasWriter {
197
197
}
198
198
199
199
pub struct MasNewUser {
200
- pub user_id : Uuid ,
200
+ pub user_id : NonNilUuid ,
201
201
pub username : String ,
202
202
pub created_at : DateTime < Utc > ,
203
203
pub locked_at : Option < DateTime < Utc > > ,
@@ -210,36 +210,36 @@ pub struct MasNewUser {
210
210
211
211
pub struct MasNewUserPassword {
212
212
pub user_password_id : Uuid ,
213
- pub user_id : Uuid ,
213
+ pub user_id : NonNilUuid ,
214
214
pub hashed_password : String ,
215
215
pub created_at : DateTime < Utc > ,
216
216
}
217
217
218
218
pub struct MasNewEmailThreepid {
219
219
pub user_email_id : Uuid ,
220
- pub user_id : Uuid ,
220
+ pub user_id : NonNilUuid ,
221
221
pub email : String ,
222
222
pub created_at : DateTime < Utc > ,
223
223
}
224
224
225
225
pub struct MasNewUnsupportedThreepid {
226
- pub user_id : Uuid ,
226
+ pub user_id : NonNilUuid ,
227
227
pub medium : String ,
228
228
pub address : String ,
229
229
pub created_at : DateTime < Utc > ,
230
230
}
231
231
232
232
pub struct MasNewUpstreamOauthLink {
233
233
pub link_id : Uuid ,
234
- pub user_id : Uuid ,
234
+ pub user_id : NonNilUuid ,
235
235
pub upstream_provider_id : Uuid ,
236
236
pub subject : String ,
237
237
pub created_at : DateTime < Utc > ,
238
238
}
239
239
240
240
pub struct MasNewCompatSession {
241
241
pub session_id : Uuid ,
242
- pub user_id : Uuid ,
242
+ pub user_id : NonNilUuid ,
243
243
pub device_id : Option < String > ,
244
244
pub human_name : Option < String > ,
245
245
pub created_at : DateTime < Utc > ,
@@ -598,7 +598,7 @@ impl MasWriter {
598
598
is_guest,
599
599
} in users
600
600
{
601
- user_ids. push ( user_id) ;
601
+ user_ids. push ( user_id. get ( ) ) ;
602
602
usernames. push ( username) ;
603
603
created_ats. push ( created_at) ;
604
604
locked_ats. push ( locked_at) ;
@@ -662,7 +662,7 @@ impl MasWriter {
662
662
} in passwords
663
663
{
664
664
user_password_ids. push ( user_password_id) ;
665
- user_ids. push ( user_id) ;
665
+ user_ids. push ( user_id. get ( ) ) ;
666
666
hashed_passwords. push ( hashed_password) ;
667
667
created_ats. push ( created_at) ;
668
668
versions. push ( MIGRATED_PASSWORD_VERSION . into ( ) ) ;
@@ -705,7 +705,7 @@ impl MasWriter {
705
705
} in threepids
706
706
{
707
707
user_email_ids. push ( user_email_id) ;
708
- user_ids. push ( user_id) ;
708
+ user_ids. push ( user_id. get ( ) ) ;
709
709
emails. push ( email) ;
710
710
created_ats. push ( created_at) ;
711
711
}
@@ -748,7 +748,7 @@ impl MasWriter {
748
748
created_at,
749
749
} in threepids
750
750
{
751
- user_ids. push ( user_id) ;
751
+ user_ids. push ( user_id. get ( ) ) ;
752
752
mediums. push ( medium) ;
753
753
addresses. push ( address) ;
754
754
created_ats. push ( created_at) ;
@@ -793,7 +793,7 @@ impl MasWriter {
793
793
} in links
794
794
{
795
795
link_ids. push ( link_id) ;
796
- user_ids. push ( user_id) ;
796
+ user_ids. push ( user_id. get ( ) ) ;
797
797
upstream_provider_ids. push ( upstream_provider_id) ;
798
798
subjects. push ( subject) ;
799
799
created_ats. push ( created_at) ;
@@ -850,7 +850,7 @@ impl MasWriter {
850
850
} in sessions
851
851
{
852
852
session_ids. push ( session_id) ;
853
- user_ids. push ( user_id) ;
853
+ user_ids. push ( user_id. get ( ) ) ;
854
854
device_ids. push ( device_id) ;
855
855
human_names. push ( human_name) ;
856
856
created_ats. push ( created_at) ;
@@ -1091,7 +1091,7 @@ mod test {
1091
1091
use futures_util:: TryStreamExt ;
1092
1092
use serde:: Serialize ;
1093
1093
use sqlx:: { Column , PgConnection , PgPool , Row } ;
1094
- use uuid:: Uuid ;
1094
+ use uuid:: { NonNilUuid , Uuid } ;
1095
1095
1096
1096
use crate :: {
1097
1097
LockedMasDatabase , MasWriter ,
@@ -1213,7 +1213,7 @@ mod test {
1213
1213
1214
1214
writer
1215
1215
. write_users ( vec ! [ MasNewUser {
1216
- user_id: Uuid :: from_u128( 1u128 ) ,
1216
+ user_id: NonNilUuid :: new ( Uuid :: from_u128( 1u128 ) ) . unwrap ( ) ,
1217
1217
username: "alice" . to_owned( ) ,
1218
1218
created_at: DateTime :: default ( ) ,
1219
1219
locked_at: None ,
@@ -1231,7 +1231,7 @@ mod test {
1231
1231
/// Tests writing a single user, with a password.
1232
1232
#[ sqlx:: test( migrator = "mas_storage_pg::MIGRATOR" ) ]
1233
1233
async fn test_write_user_with_password ( pool : PgPool ) {
1234
- const USER_ID : Uuid = Uuid :: from_u128 ( 1u128 ) ;
1234
+ const USER_ID : NonNilUuid = NonNilUuid :: new ( Uuid :: from_u128 ( 1u128 ) ) . unwrap ( ) ;
1235
1235
1236
1236
let mut writer = make_mas_writer ( & pool) . await ;
1237
1237
@@ -1268,7 +1268,7 @@ mod test {
1268
1268
1269
1269
writer
1270
1270
. write_users ( vec ! [ MasNewUser {
1271
- user_id: Uuid :: from_u128( 1u128 ) ,
1271
+ user_id: NonNilUuid :: new ( Uuid :: from_u128( 1u128 ) ) . unwrap ( ) ,
1272
1272
username: "alice" . to_owned( ) ,
1273
1273
created_at: DateTime :: default ( ) ,
1274
1274
locked_at: None ,
@@ -1281,7 +1281,7 @@ mod test {
1281
1281
writer
1282
1282
. write_email_threepids ( vec ! [ MasNewEmailThreepid {
1283
1283
user_email_id: Uuid :: from_u128( 2u128 ) ,
1284
- user_id: Uuid :: from_u128( 1u128 ) ,
1284
+ user_id: NonNilUuid :: new ( Uuid :: from_u128( 1u128 ) ) . unwrap ( ) ,
1285
1285
email
: "[email protected] " . to_owned
( ) ,
1286
1286
created_at: DateTime :: default ( ) ,
1287
1287
} ] )
@@ -1301,7 +1301,7 @@ mod test {
1301
1301
1302
1302
writer
1303
1303
. write_users ( vec ! [ MasNewUser {
1304
- user_id: Uuid :: from_u128( 1u128 ) ,
1304
+ user_id: NonNilUuid :: new ( Uuid :: from_u128( 1u128 ) ) . unwrap ( ) ,
1305
1305
username: "alice" . to_owned( ) ,
1306
1306
created_at: DateTime :: default ( ) ,
1307
1307
locked_at: None ,
@@ -1313,7 +1313,7 @@ mod test {
1313
1313
1314
1314
writer
1315
1315
. write_unsupported_threepids ( vec ! [ MasNewUnsupportedThreepid {
1316
- user_id: Uuid :: from_u128( 1u128 ) ,
1316
+ user_id: NonNilUuid :: new ( Uuid :: from_u128( 1u128 ) ) . unwrap ( ) ,
1317
1317
medium: "msisdn" . to_owned( ) ,
1318
1318
address: "441189998819991197253" . to_owned( ) ,
1319
1319
created_at: DateTime :: default ( ) ,
@@ -1335,7 +1335,7 @@ mod test {
1335
1335
1336
1336
writer
1337
1337
. write_users ( vec ! [ MasNewUser {
1338
- user_id: Uuid :: from_u128( 1u128 ) ,
1338
+ user_id: NonNilUuid :: new ( Uuid :: from_u128( 1u128 ) ) . unwrap ( ) ,
1339
1339
username: "alice" . to_owned( ) ,
1340
1340
created_at: DateTime :: default ( ) ,
1341
1341
locked_at: None ,
@@ -1347,7 +1347,7 @@ mod test {
1347
1347
1348
1348
writer
1349
1349
. write_upstream_oauth_links ( vec ! [ MasNewUpstreamOauthLink {
1350
- user_id: Uuid :: from_u128( 1u128 ) ,
1350
+ user_id: NonNilUuid :: new ( Uuid :: from_u128( 1u128 ) ) . unwrap ( ) ,
1351
1351
link_id: Uuid :: from_u128( 3u128 ) ,
1352
1352
upstream_provider_id: Uuid :: from_u128( 4u128 ) ,
1353
1353
subject: "12345.67890" . to_owned( ) ,
@@ -1368,7 +1368,7 @@ mod test {
1368
1368
1369
1369
writer
1370
1370
. write_users ( vec ! [ MasNewUser {
1371
- user_id: Uuid :: from_u128( 1u128 ) ,
1371
+ user_id: NonNilUuid :: new ( Uuid :: from_u128( 1u128 ) ) . unwrap ( ) ,
1372
1372
username: "alice" . to_owned( ) ,
1373
1373
created_at: DateTime :: default ( ) ,
1374
1374
locked_at: None ,
@@ -1380,7 +1380,7 @@ mod test {
1380
1380
1381
1381
writer
1382
1382
. write_compat_sessions ( vec ! [ MasNewCompatSession {
1383
- user_id: Uuid :: from_u128( 1u128 ) ,
1383
+ user_id: NonNilUuid :: new ( Uuid :: from_u128( 1u128 ) ) . unwrap ( ) ,
1384
1384
session_id: Uuid :: from_u128( 5u128 ) ,
1385
1385
created_at: DateTime :: default ( ) ,
1386
1386
device_id: Some ( "ADEVICE" . to_owned( ) ) ,
@@ -1405,7 +1405,7 @@ mod test {
1405
1405
1406
1406
writer
1407
1407
. write_users ( vec ! [ MasNewUser {
1408
- user_id: Uuid :: from_u128( 1u128 ) ,
1408
+ user_id: NonNilUuid :: new ( Uuid :: from_u128( 1u128 ) ) . unwrap ( ) ,
1409
1409
username: "alice" . to_owned( ) ,
1410
1410
created_at: DateTime :: default ( ) ,
1411
1411
locked_at: None ,
@@ -1417,7 +1417,7 @@ mod test {
1417
1417
1418
1418
writer
1419
1419
. write_compat_sessions ( vec ! [ MasNewCompatSession {
1420
- user_id: Uuid :: from_u128( 1u128 ) ,
1420
+ user_id: NonNilUuid :: new ( Uuid :: from_u128( 1u128 ) ) . unwrap ( ) ,
1421
1421
session_id: Uuid :: from_u128( 5u128 ) ,
1422
1422
created_at: DateTime :: default ( ) ,
1423
1423
device_id: Some ( "ADEVICE" . to_owned( ) ) ,
@@ -1454,7 +1454,7 @@ mod test {
1454
1454
1455
1455
writer
1456
1456
. write_users ( vec ! [ MasNewUser {
1457
- user_id: Uuid :: from_u128( 1u128 ) ,
1457
+ user_id: NonNilUuid :: new ( Uuid :: from_u128( 1u128 ) ) . unwrap ( ) ,
1458
1458
username: "alice" . to_owned( ) ,
1459
1459
created_at: DateTime :: default ( ) ,
1460
1460
locked_at: None ,
@@ -1466,7 +1466,7 @@ mod test {
1466
1466
1467
1467
writer
1468
1468
. write_compat_sessions ( vec ! [ MasNewCompatSession {
1469
- user_id: Uuid :: from_u128( 1u128 ) ,
1469
+ user_id: NonNilUuid :: new ( Uuid :: from_u128( 1u128 ) ) . unwrap ( ) ,
1470
1470
session_id: Uuid :: from_u128( 5u128 ) ,
1471
1471
created_at: DateTime :: default ( ) ,
1472
1472
device_id: Some ( "ADEVICE" . to_owned( ) ) ,
0 commit comments