Commit graph

2191 commits

Author SHA1 Message Date
Vyr Cossont 74e30f06d2 Accept any 2xx code as a success 2024-12-01 21:25:55 -08:00
Vyr Cossont a356c860dd Send instance URL as Web Push JWT subject 2024-12-01 21:17:54 -08:00
Vyr Cossont dcac7f2035 Log Web Push server error messages 2024-12-01 20:41:27 -08:00
Vyr Cossont 79559933e0 Create web push subscriptions table with indexes 2024-12-01 20:22:02 -08:00
Vyr Cossont 74b0541e02 Fix GetVAPIDKeyPair 2024-12-01 20:02:00 -08:00
Vyr Cossont c8d213a9ef Fix enum to int migration 2024-12-01 20:01:51 -08:00
Vyr Cossont f663f56946 Update Swagger 2024-11-30 21:05:54 -08:00
Vyr Cossont 88dddd529f Linter fixes 2024-11-30 21:05:54 -08:00
Vyr Cossont b99ea8121c Implement push subscription API 2024-11-30 21:05:54 -08:00
Vyr Cossont 4ddfbad557 Delete Web Push subscriptions when account is deleted 2024-11-30 21:05:54 -08:00
Vyr Cossont 1d0e608c81 Test Web Push notifications from workers 2024-11-30 21:05:54 -08:00
Vyr Cossont 05b8156ba5 Add no-op push senders to most processor tests 2024-11-30 21:05:54 -08:00
Vyr Cossont ddb21cd515 Add Web Push sender (similar to email sender) 2024-11-30 21:05:54 -08:00
Vyr Cossont 17fd35661d Store Web Push subscriptions in DB 2024-11-30 21:05:41 -08:00
Vyr Cossont 5a2e8341a2 Return VAPID public key when registering an app 2024-11-30 21:00:06 -08:00
Vyr Cossont b082e53c8c Add VAPID public key to instance info API 2024-11-30 21:00:06 -08:00
Vyr Cossont 1ea57b398a Generate VAPID key pair during startup 2024-11-30 21:00:06 -08:00
Vyr Cossont 875517c324 Single-row table for storing instance's VAPID key pair 2024-11-30 21:00:06 -08:00
Vyr Cossont 2566523a94 Add webpush-go dependency 2024-11-30 21:00:06 -08:00
Vyr Cossont 2d0dcff754 Update push subscription API model to be Mastodon 4.0 compatible 2024-11-30 21:00:06 -08:00
kim c9d36f7e45
[performance] use new instance of bun.DB *after* migrations to reduce number of in-memory model schema (#3578)
* use new instance of bun.DB *after* migrations to reduce number of model schema in-memory

* update sqlite address comment
2024-11-29 15:03:10 +00:00
kim d9f67efae5
send out poll votes as separate create activities given that no other AP servers support multiple objects in a single activity (#3582) 2024-11-28 15:37:37 +00:00
kim 3cc50491c2
pulls in the latest exif-terminator version with bugfix and performance optimizations (#3583) 2024-11-28 15:14:49 +00:00
kim 312cb8b9c7
[chore] rename New___(string) int signature functions to Parse___(string) int (#3580)
* rename New___(string) int {} signature functions to Parse___(string) int {}

* remove test output
2024-11-28 12:54:22 +01:00
tobi 65917f5bb9
[bugfix] Log + ignore unknown notification types (#3577)
* [bugfix] Log + ignore unknown notification types

* pass context to ParseNotificationTypes
2024-11-27 17:22:45 +00:00
kim 61f8f1e0e3
pull in ncruces/go-sqlite3 v0.20.3 with tetratelabs/wazero v1.8.2 (#3574) 2024-11-26 16:25:48 +00:00
Vyr Cossont 6a8af42647
[bugfix] Allow unsetting filter expiration dates (#3560)
* Regression tests for #3497 (v1 and v2)
* use Nullable type for v2 form.expires_in

---------

Co-authored-by: tobi <tobi.smethurst@protonmail.com>
2024-11-26 08:23:00 -08:00
tobi 5c818debb2
[chore] Sign the bloody thing, fix the other bloody thing (#3572) 2024-11-25 18:21:19 +01:00
kim 3fceb5fc1a
bumps uptrace/bun dependencies to v1.2.6 (#3569) 2024-11-25 15:42:37 +00:00
kim a444adee97
[bugfix] notification types missing from link header (#3571)
* ensure notification types get included in link header query for notifications

* fix type query keys
2024-11-25 15:33:21 +00:00
tobi c454b1b488
[chore] Bump tooling versions, bump go -> v1.23.0 (#3258)
* [chore] Bump tooling versions, bump go -> v1.23.0

* undo silly change

* sign

* bump go version in go.mod

* allow overflow in imaging

* goreleaser deprecation notices

* bump versions

* undo accidental rebase change

* update container versions to just use latest major version

* update swagger to our release with go1.23 fix

* update goreleaser to use our vendored swagger version

---------

Co-authored-by: kim <grufwub@gmail.com>
2024-11-25 16:15:33 +01:00
VirtualWolf da4db81bcf
[docs] Added note to documentation about mutuals-only posts not being functional. (#3557) 2024-11-25 14:50:41 +01:00
kim cac9d65029
[performance] convert enum strings to ints (#3558)
* convert statuses.visibility and notifications.notification_type columns from type string -> int for performance / space savings

* fix test trying to compare string to int

* fix instance count query using string literal instead of gtsmodel const type

* ensure a default value is always set

* also migrate the account settings and sin bin status tables

* initialize maps outside loops and place into singular enum mapping creation func

* use int16 for enum types

* update sinbinstatus creation to be from a snapshot at initial creation

* add snapshot of poll type at creation time
2024-11-25 14:48:59 +01:00
dependabot[bot] 934e895ec0
[chore]: Bump github.com/stretchr/testify from 1.9.0 to 1.10.0 (#3564)
Bumps [github.com/stretchr/testify](https://github.com/stretchr/testify) from 1.9.0 to 1.10.0.
- [Release notes](https://github.com/stretchr/testify/releases)
- [Commits](https://github.com/stretchr/testify/compare/v1.9.0...v1.10.0)

---
updated-dependencies:
- dependency-name: github.com/stretchr/testify
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-25 11:14:48 +00:00
Daenney 2ed409888b
[chore] Update gorilla/websocket (#3561)
The maintainers messed with the v1.5.2 tag which causes Go checksum
validation problems as the Go module proxy saw and recorded the original
hash.

This updates to 1.5.3 which doesn't have the issue.
2024-11-25 10:50:03 +00:00
dependabot[bot] ae1a98558a
[chore]: Bump github.com/tdewolff/minify/v2 from 2.21.1 to 2.21.2 (#3567)
Bumps [github.com/tdewolff/minify/v2](https://github.com/tdewolff/minify) from 2.21.1 to 2.21.2.
- [Release notes](https://github.com/tdewolff/minify/releases)
- [Commits](https://github.com/tdewolff/minify/compare/v2.21.1...v2.21.2)

---
updated-dependencies:
- dependency-name: github.com/tdewolff/minify/v2
  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-11-25 10:45:54 +00:00
tobi 301543616b
[feature] Add domain permission drafts and excludes (#3547)
* [feature] Add domain permission drafts and excludes

* fix typescript complaining

* lint

* make filenames more consistent

* test own domain excluded
2024-11-21 13:09:58 +00:00
tobi c2029df9bc
[feature] Allow emoji shortcode to be 1-character length (#3556)
* [feature] Allow emoji shortcode to be 1-character length

* testerino fixeroni

* spaghet
2024-11-21 12:13:55 +01:00
dependabot[bot] daf55ba6a5
[chore] Bump cross-spawn from 7.0.3 to 7.0.6 in /web/source (#3552)
Bumps [cross-spawn](https://github.com/moxystudio/node-cross-spawn) from 7.0.3 to 7.0.6.
- [Changelog](https://github.com/moxystudio/node-cross-spawn/blob/master/CHANGELOG.md)
- [Commits](https://github.com/moxystudio/node-cross-spawn/compare/v7.0.3...v7.0.6)

---
updated-dependencies:
- dependency-name: cross-spawn
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-21 11:06:41 +01:00
Jannis 9ace025da1
[bugfix] post counters should not include direct messages (#3554)
* [bugfix] post counters should not include direct messages #3504

The fix is relativly simple, it just adds a line to the relevant
function which excludes all private posts.

* Formating fix

* mb
2024-11-21 11:06:06 +01:00
Thomas Karpiniec ffa67ac1ae
[docs] Include link to a live instance in README (#3549) 2024-11-19 15:37:32 +00:00
dependabot[bot] e892bc375d
[chore]: Bump golang.org/x/oauth2 from 0.23.0 to 0.24.0 (#3537)
Bumps [golang.org/x/oauth2](https://github.com/golang/oauth2) from 0.23.0 to 0.24.0.
- [Commits](https://github.com/golang/oauth2/compare/v0.23.0...v0.24.0)

---
updated-dependencies:
- dependency-name: golang.org/x/oauth2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-11 17:47:01 +00:00
dependabot[bot] d850248891
[chore]: Bump golang.org/x/image from 0.21.0 to 0.22.0 (#3533)
Bumps [golang.org/x/image](https://github.com/golang/image) from 0.21.0 to 0.22.0.
- [Commits](https://github.com/golang/image/compare/v0.21.0...v0.22.0)

---
updated-dependencies:
- dependency-name: golang.org/x/image
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-11 16:38:27 +00:00
kim aeacbe3962
[chore] pin otel library versions (#3538)
* pin otel library versions to v1.29.0

* bump otel deps to v1.32.0 (without actually bumping, hehe)
2024-11-11 16:38:19 +00:00
Daenney 58f916e821
docs: Clarify object store configuration (#3527)
Clarify what to (not) put in `s3-storage-endpoint`
2024-11-11 15:54:42 +00:00
kim e3c2b790fd
[performance] minimise log field allocations (#3529)
* when appending log field only do so by minimal amount

* move slice utils to separate package to fix import cycle, add GrowJust() and AppendJust() functions

* fix GrowJust() not returning slice of same length

* improved xslices tests

* make AppendJust() test check for slice contents, fix AppendJust() final copying behaviour

* add a +1 with field growth to try minimise allocation for log 'msg' field
2024-11-11 15:45:19 +00:00
dependabot[bot] 98eef328ea
[chore]: Bump golang.org/x/net from 0.30.0 to 0.31.0 (#3536)
Bumps [golang.org/x/net](https://github.com/golang/net) from 0.30.0 to 0.31.0.
- [Commits](https://github.com/golang/net/compare/v0.30.0...v0.31.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-11-11 15:15:24 +00:00
kim 29007b1b88
[chore] update bun libraries to v1.2.5 (#3528)
* update bun libraries to v1.2.5

* pin old v1.29.0 of otel
2024-11-08 13:51:23 +00:00
kim 45e1609377
bump ncruces/go-sqlite3 to v0.20.2 (#3524) 2024-11-07 00:16:28 +00:00
kim b84637801a
[chore] update go ffmpreg to v0.6.0 (#3515)
* pull in go-ffmpreg v0.6.0

* add code comment

* grrr linter

* set empty module name when calling ffmpeg / ffprobe
2024-11-06 14:38:13 +01:00