forked from mirrors/gotosocial
ac6ed3d939
* upstep bun and sqlite versions * allow specific columns to be updated in the db * only update necessary columns for user * bit tidier * only update necessary fields of media_attachment * only update relevant instance fields * update tests * update only specific account columns * use bool pointers on gtsmodels includes attachment, status, account, user * update columns more selectively * test all default fields on new account insert * updating remaining bools on gtsmodels * initialize pointer fields when extracting AP emoji * copy bools properly * add copyBoolPtr convenience function + test it * initialize false bool ptrs a bit more neatly |
||
---|---|---|
.. | ||
account.go | ||
admin.go | ||
application.go | ||
block.go | ||
client.go | ||
domainblock.go | ||
emaildomainblock.go | ||
emoji.go | ||
follow.go | ||
followrequest.go | ||
instance.go | ||
mediaattachment.go | ||
mention.go | ||
notification.go | ||
README.md | ||
routersession.go | ||
status.go | ||
statusbookmark.go | ||
statusfave.go | ||
statusmute.go | ||
tag.go | ||
token.go | ||
user.go |
A note on when we should set data structures linked to objects in the database to use the
bun nullzero
tag -- this should only be done if the member type is a pointer, or if the
this primitive type is literally invalid with an empty value (e.g. media IDs which when
empty signifies a null database value, compared to say an account note which when empty
could mean either an empty note OR null database value).
Obviously it is a little more complex than this in practice, but keep it in mind!