Commit graph

676 commits

Author SHA1 Message Date
Tobi Smethurst
87cf621e21
Remote instance dereferencing (#70)
Remote instances are now dereferenced when they post to an inbox on a GtS instance.

    Dereferencing will be done first by checking the /api/v1/instance endpoint of an instance.
    If that doesn't work, /.well-known/nodeinfo will be checked.
    If that doesn't work, only a minimal representation of the instance will be stored.

A new field was added to the Instance database model. To create it:

alter table instances add column contact_account_username text;
2021-06-27 16:52:18 +02:00
tsmethurst
869a6c111c Go fmt 2021-06-27 13:58:59 +02:00
Tobi Smethurst
3e6aef00b2
fix the annoying infinite handshake bug (tested) (#69) 2021-06-27 11:46:07 +02:00
Tobi Smethurst
b71bbc86a7
remove regex hostname parsing (#67)
Drop regex validation for postgres hostname, because it was breaking when running in a docker-compose stack where hostnames can be just one word.

If necessary this can be added in again later, but it probably won't be necessary because it doesn't actually add anything useful!
2021-06-26 20:59:38 +02:00
Tobi Smethurst
b6c62309f2
separate public key handler (#64) 2021-06-26 16:21:40 +02:00
Tobi Smethurst
82d2544d7d
qad getting started guide (#63) 2021-06-26 13:06:27 +02:00
Tobi Smethurst
c1e107266f
nodeinfo compliance (#61) 2021-06-24 14:26:08 +02:00
Tobi Smethurst
16e486ad96
Timeline bugfix (#60)
* fix a stack overflow in the timeline

* go fmt
2021-06-23 18:42:20 +02:00
Tobi Smethurst
8c9a853343
Instance settings updates (#59)
Allow admins to set instance settings through a PATCH to /api/v1/instance

Update templates to reflect some of the new fields
2021-06-23 16:35:57 +02:00
f0x52
fd57cca437
Opengraph meta tags (#55)
* add favicon

* add opengraph tags with title and description
2021-06-21 21:09:06 +02:00
f0x52
5a2f3b35ba
add 404 handler (#57) 2021-06-21 21:08:02 +02:00
f0x52
eaeceb1c67
add favicon (#54) 2021-06-21 21:06:47 +02:00
tsmethurst
0733aea77d Merge branch 'main' of github.com:superseriousbusiness/gotosocial into main 2021-06-21 20:43:37 +02:00
Tobi Smethurst
de0b7d22c5
add web handler to testrig (#56) 2021-06-21 20:43:14 +02:00
tsmethurst
38912f5d07 add web handler to testrig 2021-06-21 20:40:56 +02:00
f0x52
f9bc305aca
new styling for frontpage, update login and authorize templates (#46)
* new styling for frontpage, update login and authorize templates

* run go fmt

* add AssetBaseDir to command flag parsing

* untested: move landing page to it's own router

* go fmt, fix typo

* fix package, adapt to proper Route structure
2021-06-21 19:46:10 +02:00
Tobi Smethurst
a5fd6f427b
Deletes+unboosts (#52)
* Status deletes properly streamed now.
* Unboosts now work locally and federated.
* Documentation updates.
2021-06-21 15:56:00 +02:00
Tobi Smethurst
efbd839181
Testrig fixes (#50)
* testrig is runnable again
* little fixes, add some more test models
* address https://github.com/superseriousbusiness/gotosocial/issues/44
2021-06-21 12:27:23 +02:00
Tobi Smethurst
aa8a0d0850
Streaming (#49)
Add new status and notification websocket streaming capabilities
2021-06-19 11:18:55 +02:00
f0x52
ad2e982edc
update CONTRIBUTING with css bundling instructions, and go fmt (#48) 2021-06-19 09:29:49 +02:00
Tobi Smethurst
82d9f88e42
Timeline improvements (#41)
Tidying up.
Parent/child statuses now display correctly in status/id/context.
2021-06-17 18:02:33 +02:00
Tobi Smethurst
b4288f3c47
Timeline manager (#40)
* start messing about with timeline manager

* i have no idea what i'm doing

* i continue to not know what i'm doing

* it's coming along

* bit more progress

* update timeline with new posts as they come in

* lint and fmt

* Select accounts where empty string

* restructure a bunch, get unfaves working

* moving stuff around

* federate status deletes properly

* mention regex better but not 100% there

* fix regex

* some more hacking away at the timeline code phew

* fix up some little things

* i can't even

* more timeline stuff

* move to ulid

* fiddley

* some lil fixes for kibou compatibility

* timelines working pretty alright!

* tidy + lint
2021-06-13 18:42:28 +02:00
Tobi Smethurst
6ac6f8d614
Tidy + timeline embetterment (#38)
* tidy up timelines a bit + stub out some endpoints

* who's faved and who's boosted, reblog notifs

* linting

* Update progress with new endpoints
2021-05-31 17:36:35 +02:00
Tobi Smethurst
3d77f81c7f
Move a lot of stuff + tidy stuff (#37)
Lots of renaming and moving stuff, some bug fixes, more lenient parsing of notifications and home timeline.
2021-05-30 13:12:00 +02:00
tsmethurst
c4d791be75 fix some lil bugs in search 2021-05-29 20:35:03 +02:00
tsmethurst
5facbed9c0 Merge branch 'main' of github.com:superseriousbusiness/gotosocial into main 2021-05-29 19:45:07 +02:00
Tobi Smethurst
1fe5e36ac3
Search (#36)
First implementation of search functionality for remote account and status lookups.
2021-05-29 19:39:43 +02:00
tsmethurst
0fe853b1ee first implementation of search feature 2021-05-29 19:36:54 +02:00
tsmethurst
cb54324430 federate account updates 2021-05-28 22:47:18 +02:00
Tobi Smethurst
87177d840b
Announce/boost (#35)
Remote boosts incoming/outgoing now working.
2021-05-28 19:57:04 +02:00
Tobi Smethurst
40add68691
Notifications (#34)
Notifications working for:

* Mentions
* Faves
* New follow requests
* New followers
2021-05-27 16:06:24 +02:00
Tobi Smethurst
e670c32a91
Faves (#31)
* start on federating faves

* outbound federation of likes working
2021-05-24 18:49:48 +02:00
tsmethurst
2dbd132e50 first draft of Dockerfile 2021-05-23 23:43:04 +02:00
Tobi Smethurst
ee65d19ff3
status deletes, profile updates (#30)
1. Proper DELETE of federated statuses (not yet deleting all the media and stuff -- i still have to implement this -- but the actual status is toast).
2. Proper UPDATE of profiles. When you change your profile picture on your remote instance, that will now register properly in GoToSocial.
3. Scrolling down the home timeline - it no longer just sort of ends, and will keep loading older statuses as you scroll.
4. Little bugfixes -- still had some nil pointer errors when dereferencing remote accounts.
2021-05-23 18:07:04 +02:00
tsmethurst
aeb665df55 small fiddling to allow whalebird to work (a bit) 2021-05-22 15:51:20 +02:00
Tobi Smethurst
43c3a47773
Admin cli (#29)
Now you can use the CLI tool to:

* Create a new account with the given username, email address and password (which will be hashed of course).
* Confirm the account's so that it can log in and post.
* Promote the account to admin.
* Demote the account from admin.
* Disable the account.
* Suspend the account.
2021-05-22 14:26:45 +02:00
Tobi Smethurst
0df2e18cc0
Home timeline (#28)
* v. basic implementation of home timeline

* Go fmt ./...
2021-05-21 23:04:59 +02:00
Tobi Smethurst
d839f27c30
Follows and relationships (#27)
* Follows -- create and undo, both remote and local
* Statuses -- federate new posts, including media, attachments, CWs and image descriptions.
2021-05-21 15:48:26 +02:00
tsmethurst
dc06e71b76 update progress 2021-05-17 19:08:52 +02:00
Tobi Smethurst
6cd033449f
Refine statuses (#26)
Remote media is now dereferenced and attached properly to incoming federated statuses.
    Mentions are now dereferenced and attached properly to incoming federated statuses.
    Small fixes to status visibility.
    Allow URL params for filtering statuses:

	// ExcludeRepliesKey is for specifying whether to exclude replies in a list of returned statuses by an account.
      	// PinnedKey is for specifying whether to include pinned statuses in a list of returned statuses by an account.
      	// MaxIDKey is for specifying the maximum ID of the status to retrieve.
      	// MediaOnlyKey is for specifying that only statuses with media should be returned in a list of returned statuses by an account.

    Add endpoint for fetching an account's statuses.
2021-05-17 19:06:58 +02:00
tsmethurst
30718d7d10 update progress 2021-05-15 12:47:08 +02:00
tsmethurst
fd45d0e302 draft CoC 2021-05-15 12:43:53 +02:00
tsmethurst
0fb6a5e9f2 add matrix link 2021-05-15 12:27:51 +02:00
tsmethurst
22f91ce143 contributing.md 2021-05-15 12:22:46 +02:00
Tobi Smethurst
cc48294c31
Inbox post (#22)
Inbox POST from federated servers now working for statuses and follow requests.
    Follow request client API added.
    Start work on federating outgoing messages.
    Other fixes and changes/tidying up.
2021-05-15 11:58:11 +02:00
Tobi Smethurst
742f985d5b
Mediahandler (#21)
Media GET and media PUT handlers
2021-05-10 16:29:05 +02:00
Tobi Smethurst
dc338dc881
Webfinger + Small fixes (#20) 2021-05-09 20:34:27 +02:00
Tobi Smethurst
41915ab371
Fix token sweep (#19)
* fix token sweep not working
* change sweep message to trace
2021-05-09 14:28:43 +02:00
Tobi Smethurst
3363e0ebdd
add api/v1/instance info handler + instance model (#18) 2021-05-09 14:06:06 +02:00
Tobi Smethurst
0cbab627c7
Letsencrypt (#17) 2021-05-09 11:25:13 +02:00