GoToSocial/internal/gtsmodel
tobi 1659f75ae6
[feature] For video attachments, store + return fps, bitrate, duration (#1282)
* start messing about with different mp4 metadata extraction

* heyyooo it works

* add test cow

* move useful multierror to gtserror package

* error out if video doesn't seem to be a real mp4

* test parsing mkv in disguise as mp4

* tidy up error handling

* remove extraneous line

* update framerate formatting

* use float32 for aspect

* fixy mctesterson
2022-12-22 11:48:28 +01:00
..
README.md Prune unnecessary nullzeros, fixup db tags (#200) 2021-09-10 10:08:21 +02:00
account.go [feature] Add opt-in RSS feed for account's latest Public posts (#897) 2022-10-08 14:00:39 +02:00
admin.go [feature] Admin account actions (#432) 2022-03-19 12:01:40 +01:00
application.go Extend license notices to 2022 (#354) 2021-12-20 18:42:19 +01:00
block.go Extend license notices to 2022 (#354) 2021-12-20 18:42:19 +01:00
client.go Extend license notices to 2022 (#354) 2021-12-20 18:42:19 +01:00
domainblock.go [chore] Update bun / sqlite versions; update gtsmodels (#754) 2022-08-15 11:35:05 +01:00
emaildomainblock.go Extend license notices to 2022 (#354) 2021-12-20 18:42:19 +01:00
emoji.go [feature] Allow newly uploaded emojis to be placed in categories (#939) 2022-11-14 22:47:27 +00:00
emojicategory.go [feature] Allow newly uploaded emojis to be placed in categories (#939) 2022-11-14 22:47:27 +00:00
follow.go [chore] Update bun / sqlite versions; update gtsmodels (#754) 2022-08-15 11:35:05 +01:00
followrequest.go [chore] Update bun / sqlite versions; update gtsmodels (#754) 2022-08-15 11:35:05 +01:00
instance.go Extend license notices to 2022 (#354) 2021-12-20 18:42:19 +01:00
mediaattachment.go [feature] For video attachments, store + return fps, bitrate, duration (#1282) 2022-12-22 11:48:28 +01:00
mention.go [chore] Update bun / sqlite versions; update gtsmodels (#754) 2022-08-15 11:35:05 +01:00
notification.go [performance] don't use relations to select notification structs, use caches instead (#1072) 2022-11-18 17:23:14 +01:00
routersession.go Extend license notices to 2022 (#354) 2021-12-20 18:42:19 +01:00
status.go [chore] Update bun / sqlite versions; update gtsmodels (#754) 2022-08-15 11:35:05 +01:00
statusbookmark.go Extend license notices to 2022 (#354) 2021-12-20 18:42:19 +01:00
statusfave.go Extend license notices to 2022 (#354) 2021-12-20 18:42:19 +01:00
statusmute.go Extend license notices to 2022 (#354) 2021-12-20 18:42:19 +01:00
tag.go [chore] Update bun / sqlite versions; update gtsmodels (#754) 2022-08-15 11:35:05 +01:00
token.go Extend license notices to 2022 (#354) 2021-12-20 18:42:19 +01:00
tombstone.go [feature] Read + Write tombstones for deleted Actors (#1005) 2022-11-11 12:18:38 +01:00
user.go [feature] overhaul the oidc system (#961) 2022-12-06 14:15:56 +01:00

README.md

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!