forked from mirrors/gotosocial
c1375ca5c1
* [chore] Remove go-playground/validator It turns out we're not actually using the validator code. This is a remnant from when we intended to use it, but the presence of it and its struct tags creates the illusion we're validating a lot of things we're not. It resulted in some confusion when we were trying to figure out language valdiation. Remove all this code, so that only the validation functions from the validate package we actually use remain. I'm not touching the struct tags in the migrations in order to avoid things potentially thinking migrations need to be re-run. * [chore] Bring back a struct tag on api The validate on internal/api is Gin doing form validation, not the validator from go-playground/validator. |
||
---|---|---|
.. | ||
account.go | ||
accountnote.go | ||
admin.go | ||
application.go | ||
block.go | ||
client.go | ||
domainblock.go | ||
emaildomainblock.go | ||
emoji.go | ||
emojicategory.go | ||
follow.go | ||
followrequest.go | ||
instance.go | ||
list.go | ||
marker.go | ||
mediaattachment.go | ||
mention.go | ||
notification.go | ||
README.md | ||
report.go | ||
routersession.go | ||
status.go | ||
statusbookmark.go | ||
statusfave.go | ||
statusmute.go | ||
tag.go | ||
token.go | ||
tombstone.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!