summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFiles
2024-07-26ensure ffmpeg muxer gets set correctly by setting input file extension ↵Libravatar kim1
before clean (#3142)
2024-07-26[bugfix] Use punycode for `host` part of `resource` query param when doing ↵Libravatar tobi7
webfinger requests (#3133) * [bugfix] use punycode when webfingering * account for punycode when checking if final URI matches expected * hmm * fix test
2024-07-26[feature] Federate interaction policies + Accepts; enforce policies (#3138)Libravatar tobi42
* [feature] Federate interaction policies + Accepts; enforce policies * use Acceptable type * fix index * remove appendIRIStrs * add GetAccept federatingdb function * lock on object IRI
2024-07-24[docs] Add separate migration section + instructions for moving to GtS and ↵Libravatar tobi6
not just away (#3139) * [docs] Add separate migration section + instructions for moving to GtS and not just away * update headings
2024-07-24[chore] Add interaction filter to complement existing visibility filter (#3111)Libravatar tobi61
* [chore] Add interaction filter to complement existing visibility filter * pass in ptr to visibility and interaction filters to Processor{} to ensure shared * use int constants for for match type, cache db calls in filterctx * function name typo :innocent: --------- Co-authored-by: kim <grufwub@gmail.com>
2024-07-24[chore] renames the `GTS` caches to `DB` caches (#3127)Libravatar kim39
* renames the `GTS` caches to `DB` caches, as it better references what they are * change remaining Caches.GTS uses to Caches.DB
2024-07-24[feature] Allow user to set "bot" flag; show bot icon on profile (#3135)Libravatar tobi7
* [feature] Allow user to set "bot" flag; show bot icon on profile * tweak * update customs
2024-07-24[bugfix] Serialize empty conversation account list as empty list, not null ↵Libravatar Vyr Cossont1
(#3137)
2024-07-23[chore] Add some log lines to recent migrations warning not to interrupt (#3134)Libravatar tobi4
* [chore] Add some log lines to recent migrations warning not to interrupt * arse
2024-07-23Remove content and related fields from boosts (#3131)Libravatar Vyr Cossont5
These duplicate the content of the target and aren't necessary for anything. - Stops copying some fields from target when boosting or processing a remote boost - Adds a migration to null out existing duplicate data - Updates tests
2024-07-23Explicitly propagate filter results from statuses to their boosts in API ↵Libravatar Vyr Cossont2
responses (#3130) Related to #3128
2024-07-23[feature] Conversations API (#3013)Libravatar Vyr Cossont55
* Implement conversations API * Sort and page conversations by last status ID * Appease linter * Fix deleting conversations and statuses * Refactor to make migrations automatic * Lint * Update tests post-merge * Fixes from live-fire testing * Linter caught a format problem * Refactor tests, fix cache * Negative test for non-DMs * Run conversations advanced migration on testrig startup as well as regular server startup * Document (lack of) side effects of API method for deleting a conversation * Make not-found check less nested for readability * Rename PutConversation to UpsertConversation * Use util.Ptr instead of IIFE * Reduce cache used by conversations * Remove unnecessary TableExpr/ColumnExpr * Use struct tags for both unique constraints on Conversation * Make it clear how paging with GetDirectStatusIDsBatch should be used * Let conversation paging skip conversations it can't render * Use Bun NewDropTable * Convert delete raw query to Bun * Convert update raw query to Bun * Convert latestConversationStatusesTempTable raw query partially to Bun * Convert conversationStatusesTempTable raw query partially to Bun * Rename field used to store result of MaxDirectStatusID * Move advanced migrations to their own tiny processor * Catch up util function name with main * Remove json.… wrappers * Remove redundant check * Combine error checks * Replace map with slice of structs * Address processor/type converter comments - Add context info for errors - Extract some common processor code into shared methods - Move conversation eligibility check ahead of populating conversation * Add error context when dropping temp tables
2024-07-22[bugfix] media.Processor{}.GetFile() returning 404s on first call, correctly ↵Libravatar kim9
loading on 2nd (#3129) * refactor file handling a tiny bit * whoops * make processing media / emoji defers a bit clear to see that it's the "on finished processing" path * some wording * add some debug logging * add mutex locks for processing remote media * try removing freshness check * fix derefMedia not being allocated * fix log format string * handle case of empty file paths (i.e. not stored) * remove media / emoji once finished processing from dereferencer maps * whoops, fix the cached / force checks * move url parsing outside of 'process___Safely()' funcs to prevalidate url * use emoji.ShortcodeDomain() * update RefreshEmoji() to also match RefreshMedia() changes --------- Co-authored-by: tobi <tobi.smethurst@protonmail.com>
2024-07-22[chore]: Bump github.com/minio/minio-go/v7 from 7.0.73 to 7.0.74 (#3125)Libravatar dependabot[bot]9
Bumps [github.com/minio/minio-go/v7](https://github.com/minio/minio-go) from 7.0.73 to 7.0.74. - [Release notes](https://github.com/minio/minio-go/releases) - [Commits](https://github.com/minio/minio-go/compare/v7.0.73...v7.0.74) --- updated-dependencies: - dependency-name: github.com/minio/minio-go/v7 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-21[feature] add flac support (#3121)Libravatar kim4
* add flac support to the ffprobe format/stream -> filetype parser * also add audio/flac for flac (not just x-flac) * update tests --------- Co-authored-by: tobi <tobi.smethurst@protonmail.com>
2024-07-21[feature/frontend] Respect `prefers-reduced-motion` for avatars, headers, ↵Libravatar tobi24
and emojis (#3118) * [feature/frontend] Respect `prefers-reduced-motion` for avatars, headers, and emojis * go fmt * fix tests * use static version of instance thumbnail when appropriate * use prefers-reduced-motion * simplify account conversion a bit * fix c&p error
2024-07-21[bugfix] update common get target account / status doing refresh async (#3124)Libravatar kim2
2024-07-21[chore] Remove duplicate `<hr>` (#3123)Libravatar tobi2
* [chore] Remove duplicate `<hr>` * update test
2024-07-20update go-ffmpreg to v0.2.3 (#3120)Libravatar kim11
2024-07-20[chore/frontend] Use smaller webp images for logo and default avatars (#3119)Libravatar tobi34
2024-07-19[feature] use webp for thumbnails (#3116)Libravatar kim72
* update to use webp for thumbnails * bump webp quality up to 40% from 12% (it's a bit different to jpeg quality setting) * update to use yuva colorspace, and use thumbnail=n=10 to select frame * fix missing comma in ffmpeg args * add links to appropriate ffmpeg docs * update tests * add file size tests for thumbnails --------- Co-authored-by: tobi <tobi.smethurst@protonmail.com>
2024-07-19[docs] update README with our corporate sponsorship policy (#3112)Libravatar kim1
* update README with our corporate sponsorship policy * move location of corporate sponsorship * tweaks after discussion * update to maintain consistency
2024-07-17[chore] Fix typo (#3113)Libravatar tobi1
2024-07-17[chore] media pipeline improvements (#3110)Libravatar kim29
* don't set emoji / media image paths on failed download, migrate FileType from string to integer * fix incorrect uses of util.PtrOr, fix returned frontend media * fix migration not setting arguments correctly in where clause * fix not providing default with not null column * whoops * ensure a default gets set for media attachment file type * remove the exclusive flag from writing files in disk storage * rename PtrOr -> PtrOrZero, and rename PtrValueOr -> PtrOrValue to match * slight wording changes * use singular / plural word forms (no parentheses), is better for screen readers * update testmodels with unknown media type to have unset file details, update attachment focus handling converting to frontend, update tests * store first instance in ffmpeg wasm pool, fill remaining with closed instances
2024-07-17[feature] Allow users to set default interaction policies per status ↵Libravatar tobi36
visibility (#3108) * [feature] Allow users to set default interaction policies * use vars for default policies * avoid some code repetition * unfuck form binding * avoid bonkers loop * beep boop * put policyValsToAPIPolicyVals in separate function * don't bother with slices.Grow * oops
2024-07-16give read-only access to /dev for ffmpeg to access /dev/urandom (#3109)Libravatar kim1
2024-07-15[feature] more filetype support! (#3107)Libravatar kim12
* add more supported file types to our media processor that ffmpeg supports, update supported mime type lists * add code comments to the supported mime types slice * don't check for zero value string, just parse * remove some unneeded consts which make the code a bit harder to read * fix test expected instance media mime types, use compact ffprobe json, simple media processing by type * final tweaks to media processing code * don't use safe divide where we don't need to
2024-07-15[feature/frontend] Add player for audio files; use thumbnail for `poster` ↵Libravatar tobi26
(#3099) * [feature/frontend] Audio player for audio media types * use video preview images for previews instead of video itself * don't preload * update tests for new zork status * collapse media gallery into single row when small
2024-07-15[chore]: Bump github.com/tdewolff/minify/v2 from 2.20.34 to 2.20.37 (#3106)Libravatar dependabot[bot]5
2024-07-15[chore]: Bump github.com/coreos/go-oidc/v3 from 3.10.0 to 3.11.0 (#3104)Libravatar dependabot[bot]7
2024-07-15[chore] add step-by-step logging to long migration (#3102)Libravatar tobi1
2024-07-13[chore] Go mod tidy / vendor (#3100)Libravatar tobi4
2024-07-13[chore/frontend] Tweak threading a bit, inform about hidden replies (#3097)Libravatar tobi6
* [chore/frontend] Tweak threading a bit, inform about hidden replies * whoops * round off bottom of replies col-header if no replies visible
2024-07-13[bugfix] Fix panic in `isStatusHomeTimelineable` (#3096)Libravatar tobi1
2024-07-12[feature/frontend] Better visual separation between "main" thread and ↵Libravatar tobi16
"replies" (#3093) * [feature/frontend] Better web threading model * fix test * bwap * tweaks * more tweaks to wording * typo * indenting * adjust wording * aaa
2024-07-12[feature] support processing of (many) more media types (#3090)Libravatar kim376
* initial work replacing our media decoding / encoding pipeline with ffprobe + ffmpeg * specify the video codec to use when generating static image from emoji * update go-storage library (fixes incompatibility after updating go-iotools) * maintain image aspect ratio when generating a thumbnail for it * update readme to show go-ffmpreg * fix a bunch of media tests, move filesize checking to callers of media manager for more flexibility * remove extra debug from error message * fix up incorrect function signatures * update PutFile to just use regular file copy, as changes are file is on separate partition * fix remaining tests, remove some unneeded tests now we're working with ffmpeg/ffprobe * update more tests, add more code comments * add utilities to generate processed emoji / media outputs * fix remaining tests * add test for opus media file, add license header to utility cmds * limit the number of concurrently available ffmpeg / ffprobe instances * reduce number of instances * further reduce number of instances * fix envparsing test with configuration variables * update docs and configuration with new media-{local,remote}-max-size variables
2024-07-11[chore] Add interaction policy gtsmodels (#3075)Libravatar tobi46
* [chore] introduce interaction policy gts models * update migration a smidge * fix copy paste typo * update migration * use int for InteractionType
2024-07-10[bugfix] Don't throw error when parent statuses are missing (#2011) (#3088)Libravatar snow1
* [bugfix] Don't throw error when parent statuses are missing (#2011) * Split missing parent status case from error check
2024-07-10[choore] Update robots.txt (#3092)Libravatar Daenney1
Recategorises a pair of scrapers according to their use.
2024-07-08[chore] Bump ncruces/go-sqlite3 to 0.17.1 (#3085)Libravatar Daenney7
More linkanme fixes.
2024-07-08[chore/frontend] Put ActivityPub logo on index page (#3087)Libravatar tobi3
* [chore/frontend] Put ActivityPub logo on index page * tidy up * embiggen the logo a bit * use light logo instead * ensmallen link container
2024-07-08[feature/frontend] Allow setting alt-text for avatar + header (#3086)Libravatar tobi18
2024-07-08[chore]: Bump github.com/minio/minio-go/v7 from 7.0.72 to 7.0.73 (#3083)Libravatar dependabot[bot]44
2024-07-08[chore]: Bump golang.org/x/net from 0.26.0 to 0.27.0 (#3082)Libravatar dependabot[bot]4
2024-07-08[frontend] Better autocapitalize/spellcheck settings on forms (#3077)Libravatar tobi20
2024-07-08[chore]: Bump github.com/microcosm-cc/bluemonday from 1.0.26 to 1.0.27 (#3081)Libravatar dependabot[bot]19
2024-07-08[chore]: Bump golang.org/x/crypto from 0.24.0 to 0.25.0 (#3080)Libravatar dependabot[bot]32
2024-07-06[chore] upstep activity to v1.7.0-gts (#3074)Libravatar tobi96
2024-07-05[chore] Update ncruces/go-sqlite3 to 0.17 (#3072)Libravatar Daenney16
This fixes some linkname shenanigans previous versions of the library were using. It's now safe to upgrade to Go 1.23 and beyond once they become available.
2024-07-04[bugfix] Handle ErrHideStatus when preparing timeline statuses (#3071)Libravatar Vyr Cossont4