Commit graph

773 commits

Author SHA1 Message Date
Dessalines
59da2976ab Some more API cleanup.
- Extracted methods for is_mod_or_admin, and is_admin.
- Removed admins from GetPostResponse and GetCommunityResponse.
- Some cleanup.
2020-07-22 14:20:08 -04:00
Dessalines
b6a6d52a92 Merge branch 'main' into api_edit_separation 2020-07-22 13:47:52 -04:00
Dessalines
db0d213710 Version v0.7.26 2020-07-22 09:56:15 -04:00
Felix Ableitner
3f00140f5d Use activitystreams from yerbamate.dev mirror (fixes #1012) 2020-07-22 00:07:09 +02:00
Dessalines
5e5063cbdd Adding some helper functions. 2020-07-21 13:52:57 -04:00
Dessalines
f81a7ad9ab Adding form_id to comment creates and edits.
- This adds a form_id to CreateComment, EditComment, and CommentResponse
- This is so any front end clients can add a randomly generated string,
  and know which comment they submitted, is the one they're getting
  back.
- This gets rid of all the weird complicated logic in handleFinished(),
  and should stop the comment forms getting cleared once and for all.
2020-07-21 10:56:41 -04:00
Dessalines
4b6a762a56 Added an is_mod_or_admin function to Community 2020-07-21 10:15:17 -04:00
Dessalines
55ce7b1339
Adding version to GetSite. Fixes #1001 (#1002)
* Adding version to GetSite. Fixes #1001

* Removing version.ts file
2020-07-21 13:20:23 +00:00
Dessalines
2eac037408 Adding post delete, remove, lock, and sticky. 2020-07-20 23:46:36 -04:00
Dessalines
fd96dfdb5e Added comment delete, remove, read. 2020-07-20 21:37:44 -04:00
Dessalines
ca7d2feedb Some GetUserDetails cleanup. 2020-07-20 15:32:15 -04:00
Dessalines
9bc6698f58 Added community delete and remove. 2020-07-20 13:37:39 -04:00
Dessalines
a67f46bec5 EditUserMention changed to MarkUserMentionAsRead. 2020-07-20 10:56:40 -04:00
Dessalines
0a28ffb9c4 Private message delete and read extracted. 2020-07-20 00:29:44 -04:00
Dessalines
2ff7acf207 Moving dupe checking to before new actor_id generation. 2020-07-19 13:32:50 -04:00
Dessalines
87202b4915 Fixing duplicate actor_id for community and user. Fixes #957 2020-07-19 13:12:42 -04:00
Dessalines
b03a2d7995 Ran cargo fmt. 2020-07-19 12:26:23 -04:00
Dessalines
3342a6a910 Version v0.7.25 2020-07-17 18:54:34 -04:00
eiknat
03758a4f92
validate post URLs on the backend (#990)
* added serverside url validation

* api.post: use if let instead of is_some

also add "invalid_url" to en.json

Co-authored-by: John Doe <dhas8m@protonmail.com>
2020-07-17 18:46:59 -04:00
nutomic
77a2a5eb01 Update activitystreams library to latest version (#71)
Merge branch 'main' into more-upgrade-apub-3

Update activitystreams library to latest version

Remove remaining usages of old activitystreams library

Migrate community inbox and user inbox

Migrate private message

Migrate post

Migrate community activities

Migrate extensions to new activitystreams library

Co-authored-by: dessalines <dessalines@noreply.yerbamate.dev>
Co-authored-by: Felix Ableitner <me@nutomic.com>
Reviewed-on: https://yerbamate.dev/LemmyNet/lemmy/pulls/71
2020-07-17 21:11:07 +00:00
Dessalines
2a206e1b4d Version v0.7.24 2020-07-16 21:17:34 -04:00
Dessalines
1e30fcf235 Version v0.7.23 2020-07-16 21:13:18 -04:00
Felix Ableitner
2d4c41d2be Convert comments to new apub lib (including comment activities) 2020-07-15 18:26:37 +02:00
Felix Ableitner
ef8118f40f migrate post to new apub lib 2020-07-15 18:03:09 +02:00
Dessalines
f69f044aaa Version v0.7.22 2020-07-15 10:16:31 -04:00
Dessalines
9f36fd50b4
GetSite fixes. Fixes #975 (#978) 2020-07-15 10:00:55 -04:00
Dessalines
fc15276c10
Don't allow duplicate community names in API. #957 (#974) 2020-07-15 09:55:38 -04:00
Dessalines
78cb306c07
Don't allow community name editing. Fixes #964 (#973) 2020-07-15 09:53:52 -04:00
Dessalines
70f15ffd6f Version v0.7.21 2020-07-14 12:12:13 -04:00
Dessalines
cc0ae6343c
Fixing user mention reading. (#968) 2020-07-14 12:12:04 -04:00
Dessalines
5ccf81349e Version v0.7.20 2020-07-14 09:17:36 -04:00
ryexandra
29037b4995
Security/fix permission bugs (#966)
* secure the `EditPost` API endpoint

* Check user is moderator in BanFromCommunity

* secure the `EditComment` API endpoint

* pass orig `read` prob when not explicitly updating it.

* Block random users from adding mods.

* use cleaner logic from `EditPost`

* prevent editing a community by a mod from transfering ownership to them

* secure `read` action in `EditPrivateMessage`

* Add check in UserMention

* only let the indended recipient mark as read

* simplify booleans to satisfy clippy

* requested changes + cargo +nightly fmt

* fix to pass federation tests for deleting comments and posts

Co-authored-by: chiminh <chiminh.tutanota.com>
Co-authored-by: Hex Bear <buildadangtrain@protonmail.com>
2020-07-14 09:17:25 -04:00
Dessalines
52983907c4 Version v0.7.19 2020-07-13 15:21:16 -04:00
Dessalines
abe7a41f58 Version v0.7.18 2020-07-13 13:32:01 -04:00
Dessalines
ac56b57faa Merge branch 'fix-migrate-apub-lib' 2020-07-13 11:57:39 -04:00
Dessalines
e5d3e3a9c3
Adding a configurable config location through an env var. (#960)
* Adding a configurable config location through an env var.

- Its `LEMMY_CONFIG_LOCATION`
- Fixes #764

* Using a static for CONFIG_FILE again.

* Make clippy happy
2020-07-13 11:33:48 -04:00
Dessalines
ea0881f87e Using community-link instead. 2020-07-13 10:39:15 -04:00
Dessalines
1b7a4ac090 Merge branch 'add_post_title_to_comments_view' of https://github.com/makigi-io/makigi into makigi-io-add_post_title_to_comments_view 2020-07-13 09:57:37 -04:00
Felix Ableitner
bb3e29e5c4 Make reads from activitypub objects immutable 2020-07-13 15:56:58 +02:00
Riley
8f745b80d3
Wrap each inbox route individually (#954) 2020-07-13 09:55:55 -04:00
Dessalines
7556f8615f
Adding a community_name option to GetPosts /post/list . Fixes #800 (#942) 2020-07-13 09:50:13 -04:00
Dessalines
a7c1c472fe
Fixing admin and mod sort order. Fixes #939 (#941) 2020-07-13 09:42:03 -04:00
Ernest
9ad0a8825a Merge remote-tracking branch 'upstream/master' into add_post_title_to_comments_view 2020-07-13 08:45:57 +02:00
Ernest
e06d9a620c Add post title to user comments inbox view, comment_view, user_mention_view 2020-07-13 08:18:11 +02:00
Dessalines
f0357bc988 Version v0.7.17 2020-07-12 16:16:43 -04:00
Ernest
82dcaa4545 Migration fix 2020-07-12 20:27:21 +02:00
Ernest
b037ff922c Add post title to comments view #948 2020-07-12 17:26:10 +02:00
Dessalines
d63eb7c8f5 Version v0.7.16 2020-07-11 10:14:04 -04:00
Dessalines
cb77339370 Version v0.7.15 2020-07-10 21:38:24 -04:00
Tony Antonov
8d24659892
Forbid users to use empty titles for posts (#930)
- Add a regex that checks if string contains anything but whitespace
- Check for whitespace-only titles on post creation and edit
- Trim whitespace from titles before saving
- Add frontend validation to title
2020-07-10 21:15:53 -04:00
Dessalines
181374d2cc Fixing travis, adding a test.sh script. 2020-07-10 14:16:42 -04:00
nutomic
80aef61aed Split code into cargo workspaces (#67)
More fixes

- fixed docker builds
- fixed mentions regex test
- fixed DATABASE_URL stuff
- change schema path in diesel.toml

Address review comments

- add jsonb column back into activity table
- remove authors field from cargo.toml
- adjust LEMMY_DATABASE_URL env var usage
- rename all occurences of LEMMY_DATABASE_URL to DATABASE_URL

Decouple utils and db

Split code into cargo workspaces

Co-authored-by: Felix Ableitner <me@nutomic.com>
Reviewed-on: https://yerbamate.dev/LemmyNet/lemmy/pulls/67
2020-07-10 18:15:41 +00:00
Dessalines
debbd316c2 Version v0.7.14 2020-07-09 20:16:39 -04:00
Dessalines
961d65c0ee
Remove button for avatars. Fixes #755 (#924) 2020-07-09 20:04:09 -04:00
Dessalines
d222c60cef A few cake day fixes. #916 2020-07-09 19:59:02 -04:00
Filip785
7c35fc546b Create new migration to add creator_published field to the post_view and comment_view 2020-07-09 17:19:30 +02:00
Filip785
1b351e08aa Merge remote-tracking branch 'upstream/master' into cake-day 2020-07-08 19:30:13 +02:00
Dessalines
d720993141 Merge branch 'master' into migrate-apub-lib 2020-07-08 12:13:17 -04:00
Felix Ableitner
c9338027f2 Migrate user and group to new activitystreams library 2020-07-08 18:01:04 +02:00
Filip785
e7b7b0dee3 Merge remote-tracking branch 'upstream/master' into cake-day 2020-07-08 17:21:44 +02:00
Dessalines
cd5f500d11 Version v0.7.13 2020-07-08 09:14:25 -04:00
Pierce
2f01e15cae
Fixes regression from #848
The api for actix_web::dev::ConnectionInfo changed from 2.0.0 to 3.0.0. The equivalent of 2.0.0's remote() in 3.0.0 is realip_remote_addr(), not remote_addr().

https://docs.rs/actix-web/2.0.0/actix_web/dev/struct.ConnectionInfo.html#method.remote
https://docs.rs/actix-web/3.0.0-alpha.3/actix_web/dev/struct.ConnectionInfo.html#method.realip_remote_addr
2020-07-08 02:20:08 -04:00
Filip785
68e9755e59 Add cake day display in user page & posts/comments #682 2020-07-08 02:28:47 +02:00
Dessalines
8fda7d00d5 Version v0.7.12 2020-07-07 11:07:51 -04:00
Dessalines
f4565d0603
Remove materialized views. (#908)
* One pass at materialized views, only about 30% faster, not good.

* Before merging master to test out bans.

* DB Rework working, still need more testing.

* Fixing accidental addadmin bug from asonix async merge.

* Fixing the comment delete trigger

* Some more DB additions.

- Adding a hot_rank desc, published desc index to post_aggregates_fast.
- Removed WITH CTE queries in favor of direct selects (since CTEs cant
  use indexes)

* Removing some unecessary indexes.

* Some more DB optimizings

- Changing the fast_id pkeys to just ids on the fast tables.
- Removing the private_message_fast, since the view contains no aggregates.
- Comment and post voting now no longer pull from the views, they update the counts directly.

* Adding community_agg_view and post_agg_views Credit: eiknat.

* Adding user and comment_view migrations. (comment_view still broken)

* Adding more views. Credit Eiknat.
2020-07-07 10:54:44 -04:00
Felix Ableitner
d03c435563 Revert "Verify activitypub payload digests (#885)"
This reverts commit 916592944a.
2020-07-06 14:20:29 +02:00
Dessalines
6780855b1f Version v0.7.11 2020-07-04 11:37:04 -04:00
Dessalines
bca62cbf0f Version v0.7.10 2020-07-04 07:42:29 -04:00
Dessalines
e95992b704 Version v0.7.9 2020-07-03 22:26:49 -04:00
Riley
916592944a
Verify activitypub payload digests (#885) 2020-07-03 13:22:39 -04:00
Dessalines
9e1e12f6ce Version v0.7.8 2020-07-01 21:54:36 -04:00
Dessalines
8d49dc958e Version v0.7.7 2020-07-01 20:39:51 -04:00
Dessalines
52fcda96e1
Adding IP to the rate limit request line. (#882)
* Adding IP to the rate limit request line.

* Adding IP to the rate limit request line.
2020-07-01 18:54:46 -04:00
Dessalines
1c0cc78f3f Adding \b before a slur. 2020-07-01 10:45:56 -04:00
Dessalines
cd007febef Merge branch 'master' into federation 2020-07-01 09:04:26 -04:00
Riley
a074564458
Federation async (#848)
* Asyncify more

* I guess these changed

* Clean PR a bit

* Convert more away from failure error

* config changes for testing federation

* It was DNS

So actix-web's client relies on TRust DNS Resolver to figure out
where to send data, but TRust DNS Resolver seems to not play nice
with docker, which expressed itself as not resolving the name to
an IP address _the first time_ when making a request. The fix was
literally to make the request again (which I limited to 3 times
total, and not exceeding the request timeout in total)

* Only retry for connecterror

Since TRust DNS Resolver was causing ConnectError::Timeout,
this change limits the retry to only this error, returning
immediately for any other error

* Use http sig norm 0.4.0-alpha for actix-web 3.0 support

* Blocking function, retry http requests

* cargo +nightly fmt

* Only create one pictrs dir

* Don't yarn build

* cargo +nightly fmt
2020-07-01 08:54:29 -04:00
Dessalines
5c03e9e9ee Version v0.7.6 2020-07-01 08:25:55 -04:00
Dessalines
c239a5f0e5 Fixing ban user bug. Fixes #876 2020-07-01 08:22:41 -04:00
Dessalines
eded51aab6 Version v0.7.5 2020-06-29 21:05:38 -04:00
Dessalines
15ea264fcf Version v0.7.4 2020-06-29 21:02:02 -04:00
Dessalines
80bca8610e Revert "Remove mat views, no fast tables or caching added yet."
This reverts commit 97e088dcbf.
2020-06-29 21:00:28 -04:00
Dessalines
c10a05cb68 Version v0.7.3 2020-06-29 20:14:16 -04:00
Dessalines
97e088dcbf Remove mat views, no fast tables or caching added yet. 2020-06-29 20:02:38 -04:00
Dessalines
022fd31b66 Slur additions. 2020-06-28 19:41:00 -04:00
Dessalines
e517de5480 Merge branch 'master' into federation 2020-06-27 10:54:08 -04:00
Dessalines
bd3051e058 Merge branch 'master' into improve-config 2020-06-27 10:09:16 -04:00
Dessalines
da2bb724e9 Version v0.7.2 2020-06-27 09:28:28 -04:00
Dessalines
86dc50f9f0 Some fixes to federation.
- Advanced code migrations now disable then re-enable triggers.
  Brings run time down to < 15 seconds, no need to thread them.
- Changing ap_ids and actor_ids in migrations to a fake url,
  so it doesn't break XsdAnyUri in activitystreams.
2020-06-26 21:12:41 -04:00
Dessalines
3928556033 Merge branch 'master' into improve-config 2020-06-25 16:16:16 -04:00
Dessalines
7d1c6e9a40 Switching back to isahc. 2020-06-25 15:36:03 -04:00
Dessalines
6e736e1f1e Version v0.7.1 2020-06-24 13:29:44 -04:00
Felix Ableitner
a9d98fd09b Improve config files by adding documentation and removing some fields 2020-06-24 16:09:52 +02:00
Dessalines
dc94e58cbf Merge branch 'master' into federation_merge_from_master_2 2020-06-23 21:11:38 -04:00
Dessalines
0680dd2398 Version v0.7.0 2020-06-23 12:55:16 -04:00
Dessalines
27f2fd352a Version v0.6.85 2020-06-22 23:04:28 -04:00
Dessalines
5d1212b83c Version v0.6.84 2020-06-22 22:43:57 -04:00
Dessalines
11f771469f Version v0.6.83 2020-06-22 22:01:45 -04:00
Dessalines
54c735841e Version v0.6.82 2020-06-22 19:32:30 -04:00
Dessalines
c9dcb2662c Version v0.6.81 2020-06-22 17:53:47 -04:00
Dessalines
32d1f42626 Version v0.6.80 2020-06-22 16:15:31 -04:00
Dessalines
96c9f801a9 Merge branch 'master' of https://github.com/makigi-io/makigi into makigi-io-master 2020-06-22 14:52:46 -04:00
Dessalines
cbed185040 Version v0.6.79 2020-06-22 12:56:48 -04:00
Dessalines
1fa7d17e35 Version v0.6.78 2020-06-22 12:51:18 -04:00
Ernest
8e1e9a521a Edit community name validation, translations #823 2020-06-22 09:23:54 +02:00
Ernest
4247df4295 Community name validation 2020-06-20 11:33:23 +02:00
Dessalines
fd6a040568 Changing another blacklisted to blocklisted. 2020-06-17 21:29:10 -04:00
Felix Ableitner
68bcc26ff6 Fix community description federation (ref #647)
Also disable the actor refetch interval in debug builds.
2020-06-16 13:35:26 +02:00
Felix Ableitner
325ed2ec3b Rename "instance_whitelist" config option to "allowed_instances" 2020-06-16 12:49:51 +02:00
Dessalines
5594bed6a8 Merge branch 'master' into use-pictrs-1 2020-06-12 17:51:37 -04:00
Felix Ableitner
5a6f39dae4 Various build optimizations 2020-06-12 15:29:50 +02:00
Dessalines
cfa40e482a
Parse out in reply to field. Fixes #694 (#799)
- When a comment or post doesn't exist locally, yet we receive
  an activitypub with it (for example, a nested comment update,
  for a community we just subscribed to, also with a post we
  don't have...), then fetch it.
2020-06-11 11:16:33 -04:00
Dessalines
1b0212377d Version v0.6.74 2020-06-11 10:28:21 -04:00
Dessalines
74c5380975 Merge branch 'master' into use-attohttpc 2020-06-11 09:53:18 -04:00
Felix Ableitner
831680d27e Remove unneeded config dependencies 2020-06-11 13:09:51 +02:00
Dessalines
4cf1f080bf Adding delete picture via pict-rs delete tokens. Fixes #505 2020-06-10 22:47:06 -04:00
Dessalines
2fbd44c59d Adding pictrs thumbnail caching for urls and embeds. 2020-06-10 18:22:57 -04:00
Felix Ableitner
be84c7b977 Replace isahc with attohttpc to remove curl (fixes #798) 2020-06-10 17:42:20 +02:00
Dessalines
043f484693 Version v0.6.73 2020-06-10 11:27:12 -04:00
Dessalines
46bb3064ed Version v0.6.72 2020-06-09 22:49:42 -04:00
Felix Ableitner
0f1a8ec928 Merge branch 'master' into federation 2020-06-09 14:01:26 +02:00
Dessalines
5c6601cb2a Merge branch 'activitystreams-new' into federation 2020-06-07 09:12:15 -04:00
Dessalines
63ca6e1e24 Version v0.6.71 2020-06-05 11:49:36 -04:00
Dessalines
7c0ea6cfa7 Version v0.6.70 2020-06-04 21:42:08 -04:00
Dessalines
f40f74b20d Adding additional 3-instance integration test for community announce. 2020-06-03 17:55:32 -04:00
Felix Ableitner
c1ef766125 migrate follow 2020-06-03 21:44:14 +02:00
Dessalines
2e882f75f2 Version v0.6.69 2020-06-03 12:11:52 -04:00
Dessalines
9a9a0b9735 Changing cache to 1 hour until we can figure out caching issue. 2020-06-03 12:11:40 -04:00
Dessalines
361cf995da Version v0.6.68 2020-06-03 11:46:09 -04:00
Felix Ableitner
3999e0485e migrate tombstone 2020-06-03 17:10:16 +02:00
Dessalines
59d22ef775 Version v0.6.67 2020-06-02 19:59:49 -04:00
Dessalines
998b9454b2 Version v0.6.66 2020-06-02 14:05:17 -04:00
Dessalines
a8160288ae Merge remote-tracking branch 'yerba/cache-control' 2020-06-02 14:03:38 -04:00
Felix Ableitner
21e913192a Add cache-control header to HTTP responses based on mime 2020-06-02 19:22:00 +02:00
Felix Ableitner
1aa30d855e address review comments 2020-06-01 16:48:07 +02:00
Felix Ableitner
f3aba6da92 fix comment notifications 2020-05-30 20:05:42 +02:00
Felix Ableitner
c34cc46c2d get it working (mostly) 2020-05-30 19:44:50 +02:00
Felix Ableitner
52206998aa more fixes 2020-05-30 15:38:01 +02:00
Dessalines
847e19f22d Version v0.6.65 2020-05-28 14:13:47 -04:00
Felix Ableitner
d6e2119277 make comments work (more or less) 2020-05-28 20:09:37 +02:00
Dessalines
29fc3681b9
Validate register usernames on the back-end. Fixes #716 (#750)
* Validate register usernames on the back-end. Fixes #716

* Changing name to is_valid_username
2020-05-28 14:07:36 -04:00
Felix Ableitner
8f9bd1fef7 get some more things working 2020-05-28 15:20:12 +02:00
Felix
ce0a37cdf1 get it working (mostly) 2020-05-28 13:51:48 +02:00
Felix
cac7011d53 move logic to sharedinbox 2020-05-28 13:44:52 +02:00
Felix
5753c4feaa Let community announce posts 2020-05-28 13:15:51 +02:00
Dessalines
80653a5317
Remove federation option from master. (#745) 2020-05-25 18:48:24 -04:00
Dessalines
a9af247f1e Merge branch 'federated_embeds' into federation 2020-05-25 16:15:23 -04:00
Dessalines
4f518a5d92 Version v0.6.64 2020-05-24 13:25:50 -04:00
Dessalines
ed553aa9f0 Updating sponsor link. 2020-05-21 21:15:39 -04:00
Felix
d1aca27126 Use activitystreams-ext 2020-05-18 18:15:26 +02:00
Dessalines
18d0edd4eb Version v0.6.63 2020-05-18 09:53:02 -04:00