Commit graph

1756 commits

Author SHA1 Message Date
tsmethurst
d2276fc553 start working on struct validation for gtsmodel 2021-09-01 11:11:26 +02:00
kim
7d193de25f
Improve GetRemoteStatus and db.GetStatus() logic (#174)
* only fetch status parents / children if explicity requested when dereferencing

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* Remove recursive DB GetStatus logic, don't fetch parent unless requested

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* StatusCache copies status so there are no thread-safety issues with modified status objects

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* remove sqlite test files

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* fix bugs introduced by previous commit

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* fix not continue on error in loop

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* use our own RunInTx implementation (possible fix for nested tx error)

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* fix cast statement to work with SQLite

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* be less strict about valid status in cache

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* add cache=shared ALWAYS for SQLite db instances

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* Fix EnrichRemoteAccount when updating account fails

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* add nolint tag

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* ensure file: prefixes the filename in sqlite addr

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* add an account cache, add status author account from db

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* Fix incompatible SQLite query

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* *actually* use the new getAccount() function in accountsDB

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* update cache tests to use test suite

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* add RelationshipTestSuite, add tests for methods with changed SQL

Signed-off-by: kim (grufwub) <grufwub@gmail.com>
2021-09-01 11:08:21 +02:00
tsmethurst
3d8aa7a4d2 more updates 2021-08-31 19:27:02 +02:00
tsmethurst
b95c80def6 change muchos things 2021-08-31 15:59:12 +02:00
tsmethurst
a530a33192 go fmt 2021-08-30 20:21:04 +02:00
tsmethurst
bceb15ddd0 more work on struct validation 2021-08-30 20:20:27 +02:00
tsmethurst
6adec1ae4d more work on struct validation 2021-08-30 13:38:06 +02:00
tsmethurst
22b3bfe978 Merge branch 'struct_validation' of github.com:superseriousbusiness/gotosocial into struct_validation 2021-08-29 17:16:33 +02:00
tsmethurst
8d767c6dc0 statusmute annotations 2021-08-29 17:16:09 +02:00
tsmethurst
7c45403b24 start working on struct validation for gtsmodel 2021-08-29 16:53:23 +02:00
tsmethurst
8aa72f995f start working on struct validation for gtsmodel 2021-08-29 16:52:23 +02:00
kim
ed46224573
Add SQLite support, fix un-thread-safe DB caches, small performance f… (#172)
* Add SQLite support, fix un-thread-safe DB caches, small performance fixes

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* add SQLite licenses to README

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* appease the linter, and fix my dumbass-ery

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* make requested changes

Signed-off-by: kim (grufwub) <grufwub@gmail.com>

* add back comment

Signed-off-by: kim (grufwub) <grufwub@gmail.com>
2021-08-29 16:41:41 +02:00
tobi
53507ac2a3
Mention fixup (#167)
* rework mention creation a bit

* rework mention creation a bit

* tidy up status dereferencing

* start adding tests for dereferencing

* fixups

* fix

* review changes
2021-08-29 12:03:08 +02:00
kim
79afcdba3f
Replace federating DB locks map, add a cleanup goroutine (#166)
Signed-off-by: kim (grufwub) <grufwub@gmail.com>
2021-08-27 21:14:20 +02:00
tobi
add6eb6e2b
Gin logging (#165)
* start messing around with logger

* more messing about

* fix error with instance not created on startup (#156)

* set logger

* log user agent

* finalize logging

* go fmt

* start messing around with logger

* more messing about

* set logger

* log user agent

* finalize logging

* go fmt
2021-08-27 13:26:45 +02:00
kim
87328b6218
fix new tx within tx (#163)
Signed-off-by: kim (grufwub) <grufwub@gmail.com>
2021-08-27 11:38:24 +02:00
tobi
30f688dbe2
some more little fixes for all to enjoy (#161) 2021-08-26 22:06:34 +02:00
tobi
2162f21636
fix broken db queries in auth (#160) 2021-08-26 19:56:40 +02:00
tobi
1582cf8bad
fix null returned session (#159) 2021-08-26 18:55:39 +02:00
tobi
2eefaa0227
oops (#157) 2021-08-26 17:46:24 +02:00
tobi
14ebc94fd9
fix error with instance not created on startup (#156) 2021-08-26 17:22:41 +02:00
tobi
d39d93e852
update drone yml (#153) 2021-08-26 12:36:08 +02:00
kim
03479312f1
Improved build script (#152)
- explicity disable cgo
- ensure static builds
- reduce binary size
- small formatting changes

Signed-off-by: kim (grufwub) <grufwub@gmail.com>
2021-08-26 12:19:52 +02:00
tobi
ddc120d5e6
fix public timeline bug (#150) 2021-08-26 11:28:16 +02:00
tobi
2dc9fc1626
Pg to bun (#148)
* start moving to bun

* changing more stuff

* more

* and yet more

* tests passing

* seems stable now

* more big changes

* small fix

* little fixes
2021-08-25 15:34:33 +02:00
tobi
071eca20ce
Manually approves followers (#146)
* update go-fed

* update go-fed

* manuallyapprovesfollowers

* serialize manuallyApprovesFollowers
2021-08-23 12:46:05 +02:00
tobi
4920229a3b
Database updates (#144)
* start moving some database stuff around

* continue moving db stuff around

* more fiddling

* more updates

* and some more

* and yet more

* i broke SOMETHING but what, it's a mystery

* tidy up

* vendor ttlcache

* use ttlcache

* fix up some tests

* rename some stuff

* little reminder

* some more updates
2021-08-20 12:26:56 +02:00
Tobi Smethurst
ce190d867c
Text/status parsing fixes (#141)
* aaaaaa

* vendor minify

* update + test markdown parsing
2021-08-16 19:17:56 +02:00
Tobi Smethurst
ff406be68f
Timeline loop fix (#140)
* uwu we made a fucky wucky

* uwu we made a fucky wucky

* work on timeline fixes a little

* fiddle with tests some more

* bleep bloop more tests

* more tests

* update drone yml

* update some sturf

* make the timeline code a bit lazier

* go fmt

* fix drone.yml
2021-08-15 18:43:08 +02:00
Tobi Smethurst
a4a33b9ad9
Don't run tests+lint on merge to main (#139) 2021-08-12 21:22:23 +02:00
Tobi Smethurst
98263a7de6
Grand test fixup (#138)
* start fixing up tests

* fix up tests + automate with drone

* fiddle with linting

* messing about with drone.yml

* some more fiddling

* hmmm

* add cache

* add vendor directory

* verbose

* ci updates

* update some little things

* update sig
2021-08-12 21:03:24 +02:00
Tobi Smethurst
329a5e8144
Text duplication fix (#137)
* start testing text duplication

* tests

* fixes + tests
2021-08-11 16:54:54 +02:00
tsmethurst
8330263965 ahhh 2021-08-10 18:33:43 +02:00
tsmethurst
2df77e4ffa add drone.yml 2021-08-10 18:32:55 +02:00
Tobi Smethurst
6acd410426
Bugfixerino (#133)
* fix some lil bugs

* fmt, lint
2021-08-10 16:56:59 +02:00
tsmethurst
93792d3f1e roll back to sha256 for signatures 2021-08-10 13:59:37 +02:00
Tobi Smethurst
0f2de6394a
Dereference remote replies (#132)
* decided where to put reply dereferencing

* fiddling with dereferencing threads

* further adventures

* tidy up some stuff

* move dereferencing functionality

* a bunch of refactoring

* go fmt

* more refactoring

* bleep bloop

* docs and linting

* start implementing replies collection on gts side

* fiddling around

* allow dereferencing our replies

* lint, fmt
2021-08-10 13:32:39 +02:00
Tobi Smethurst
0386a28b5a
Frodo swaggins (#126)
* more swagger fun

* document a whole bunch more stuff

* more swagger yayyyyyyy

* progress + go fmt
2021-08-02 19:06:44 +02:00
tsmethurst
cb85f65cca fix breaky linky 2021-07-31 23:20:38 +02:00
Tobi Smethurst
6bd26ff4c4
more swagger docs + other changes (#125)
* more swagger docs + other changes

* go fmt
2021-07-31 23:17:39 +02:00
tsmethurst
65bf285637 requirements.txt for RtD 2021-07-31 17:54:50 +02:00
Tobi Smethurst
58dddd86e0
Swagger (#124)
* start experimenting with swagger documentation

* further adventures in swagger

* do a few more api paths

* account paths documented

* go fmt

* fix up some models

* bit o lintin'
2021-07-31 17:49:59 +02:00
Tobi Smethurst
eb13faf54f
Password change (#123)
* add password change command

* document cli commands

* go fmt
2021-07-31 13:57:23 +02:00
Tobi Smethurst
a940a520d3
Link hashtag bug (#121)
* link + hashtag bug

* remove printlns

* tidy up some duplicated code
2021-07-29 13:18:22 +02:00
Tobi Smethurst
ea8ad8b346
Link parsing (#120)
* add link parsing + formatting functionality

* refinement + docs

* add missing test

* credit url library
2021-07-28 11:42:26 +02:00
Tobi Smethurst
fddacdd1a8
build and bundle admin console + web assets (#119) 2021-07-27 14:45:27 +02:00
Tobi Smethurst
2c2dbe318e
federating db updates (#118) 2021-07-27 10:45:22 +02:00
Tobi Smethurst
a04888e9a6
doc updates (#117) 2021-07-27 10:12:11 +02:00
Tobi Smethurst
ad0e26dc04
Markdown Statuses (#116)
* parse markdown statuses if desired

* add some preliminary docs for writing posts
2021-07-26 20:25:54 +02:00
Tobi Smethurst
e2757ae676
add trusted proxy for parsing client IPs (#115) 2021-07-26 16:15:36 +02:00