* start to implement apub inbox routing lib
* got something that almost works
* it compiles!
* implemented some more
* move library code to separate crate (most of it)
* convert private message handlers
* convert all comment receivers (except undo comment)
* convert post receiver
* add verify trait
* convert community receivers
* add cc field for all activities which i forgot before
* convert inbox functions, add missing checks
* convert undo like/dislike receivers
* convert undo_delete and undo_remove receivers
* move block/unblock activities
* convert remaining activity receivers
* reimplement http signature verification and other checks
* also use actor type for routing, VerifyActivity and SendActivity traits
* cleanup and restructure apub_receive code
* wip: try to fix activity routing
* implement a (very bad) derive macro for activityhandler
* working activity routing!
* rework pm verify(), fix tests and confirm manually
also remove inbox username check which was broken
* rework following verify(), fix tests and test manually
* fix post/comment create/update, rework voting
* Rewrite remove/delete post/comment, fix tests, test manually
* Rework and fix (un)block user, announce, update post
* some code cleanup
* rework delete/remove activity receivers (still quite messy)
* rewrite, test and fix add/remove mod, update community handlers
* add docs for ActivityHandler derive macro
* dont try to compile macro comments
* publish docker images from main
* try with separate step
* redo, lots of boilerplate
* try to fix syntax
* unique step names
* fix docker tags, remove cargo-chef
* only build dev image on main branch
* use `ref` for condition, as `branch` uses the target branch for PRs
* consistent indents
* fix tag
* use lemmy-ui:dev image for `docker/dev` and `docker/federation`
* A first attempt at using deser-hjson. Fixes#1270
* Trying to fix tests, try 1
* Trying to fix tests, try 2
* A few fixes to deser_hjson
- Removing unwrap_or_defaults, using impl functions.
- Reorganized settings
* Make clippy happy
* hjson list strings must be quoted.
* Adding support for env vars.
* Moving to structs and defaults file.
* Moving settings default and struct.
* A first try at docker manifest. 1.
* Fixing api version location
* Version 0.9.0-rc.13
* Test docker.
* Test docker 2.
* Test docker 3.
* Test docker 4.
* Test docker 5.
* Test docker 6.
* Test docker 7.
* Test docker 8.
* Test docker 9.
* Test docker 10.
* Test docker 11.
* Test docker 12.
* Version 0.9.0-rc.14
* Test docker 13.
* Test docker 14.
* Version 0.9.0-rc.15
* Test docker 15.
* Version 0.9.0-rc.16
* Test docker 16.
* Version 0.9.0-rc.17
* Trying to fix arm build.
* Version 0.9.0-rc.8
* Trying to fix arm build 2.
* Version 0.9.0-rc.9
* Checking time when removing lto.
* Version 0.9.0-rc.10
* Adding back in arm tests.
* Version 0.9.0-rc.11
* Trying out cargo chef and a travis docker image cache.
* trying to change internal target.
* Use latest cargo-chef with --target
* Remove caching for now.
* Adding back in chowns
* Adding back in cache.
* Remove travis caching.
* Switching dev dockerfile to match prod, using cargo-chef and alpine.
* Make travis happy
* Trying a chown rust.
* Caching cargo-chef first.
* Moving the chowns
* Removing many copy commands.
* Go back to rust 1.47.0 due to config-rs breaking.
* Adding the old volume mount version.
* Adding some script comments.
Co-authored-by: Luca Palmieri <lpalmieri@truelayer.com>
Adding a federation test for community deletes / removes.
Add missing docs for community deletion/removal (fixes#1250)
Fix federation of community deletion/removal (fixes#1253)
Co-authored-by: Dessalines <tyhou13@gmx.com>
Co-authored-by: Felix Ableitner <me@nutomic.com>
Reviewed-on: https://yerbamate.dev/LemmyNet/lemmy/pulls/125
Adjust dockerfiles, fix cargo.toml and remove unused deps
Merge branch 'main' into move-websocket-to-workspace
Move api code into workspace
Move apub to separate workspace
Move websocket code into separate workspace
Some code cleanup
Remove websocket dependency on API
Co-authored-by: Felix Ableitner <me@nutomic.com>
Reviewed-on: https://yerbamate.dev/LemmyNet/lemmy/pulls/107
Fix depends_on
Add note about different port for backend in federation docs
Fix nginx config for local federation setup
Co-authored-by: Felix Ableitner <me@nutomic.com>
Reviewed-on: https://yerbamate.dev/LemmyNet/lemmy/pulls/104
* Adding a way to GetComments for a community given its name only.
* Adding getcomments to api docs.
* A first pass at locally working isomorphic integration.
* Testing out cargo-husky.
* Testing a fail hook.
* Revert "Testing a fail hook."
This reverts commit 0941cf1736.
* Moving server to top level, now that UI is gone.
* Running cargo fmt using old way.
* Adding nginx, fixing up docker-compose files, fixing docs.
* Trying to re-add API tests.
* Fixing prod dockerfile.
* Redoing nightly fmt
* Trying to fix private message api test.
* Adding CommunityJoin, PostJoin instead of joins from GetComments, etc.
- Fixes#1122
* Fixing fmt.
* Fixing up docs.
* Removing translations.
* Adding apps / clients to readme.
* Fixing main image.
* Using new lemmy-isomorphic-ui with better javascript disabled.
* Try to fix image uploads in federation test
* Revert "Try to fix image uploads in federation test"
This reverts commit a2ddf2a90b.
* Fix post url federation
* Adding some more tests, some still broken.
* Don't need gitattributes anymore.
* Update local federation test setup
* Fixing tests.
* Fixing travis build.
* Fixing travis build, again.
* Changing lemmy-isomorphic-ui to lemmy-ui
* Error in travis build again.
Co-authored-by: Felix Ableitner <me@nutomic.com>
* Re-organizing federation tests. #746#1040
* Add more checks in inbox, plus some refactoring (#76)
Merge branch 'main' into more-inbox-permissions
Move check_community_ban() into helper function
Move slur check into helper functions
Move Claims::decode and site ban check into helper function
Note: this changes behaviour in that site ban is checked in more
places now. we could easily add a boolean parameter
check_for_site_ban to get the previous behaviour back
Rewrite user_inbox and community_inbox in the same way as shared_inbox
Add check against instance allowlist etc in shared_inbox
Co-authored-by: dessalines <dessalines@noreply.yerbamate.dev>
Co-authored-by: Felix Ableitner <me@nutomic.com>
Reviewed-on: https://yerbamate.dev/LemmyNet/lemmy/pulls/76
* Adding verbose to test results.
Co-authored-by: nutomic <nutomic@noreply.yerbamate.dev>
Co-authored-by: dessalines <dessalines@noreply.yerbamate.dev>
Co-authored-by: Felix Ableitner <me@nutomic.com>
* Adding visual captchas for register and login.
* Adding audio wav file for Captcha using espeak.
* Lots of captcha fixes.
- Removed login captchas.
- Added settings to disable captchas, and change difficulty.
- Captchas can only be checked / used once, front end gives a new one on
failure.
- Added front end button for regenerating captcha.
- Added a disabled / pause button audio playing.
* Some more fixes.
* Testing out a travis 1.
* Testing out a travis 2.
* Testing out a travis 3.
* Testing out a travis 4.
* Testing out a travis 5.
* Testing out a travis 6. Trying a failing test
* Testing out a travis 7. Trying to cache the docker images.
* Testing out a travis 8. Still not correctly failing.
* Trying full path for docker_images dir.
* Fixing test again, trying a dockerhub deploy.
* Fixing test again, trying a dockerhub deploy 2.
* Remove caching.
* Trying to fix docker deploy.
* Try using the travis tag
* Using dessalines/lemmy:travis
* Try using the prod dockerfile now.
* Update http sigs dependency
* Finally getting this mostly working.
Co-authored-by: asonix <asonix@asonix.dog>
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