ad90cd77f9
Implement private communities ( #5076 )
...
* add private visibility
* filter private communities in post_view.rs
* also filter in comment_view
* community follower state
* remove unused method
* sql fmt
* add CommunityFollower.approved_by
* implement api endpoints
* api changes
* only admins can create private community for now
* add local api tests
* fix api tests
* follow remote private community
* use authorized fetch for content in private community
* federate community visibility
* dont mark content in private community as public
* expose ApprovalRequired in api
* also check content fetchable for outbox/featured
* address private community content to followers
* implement reject activity
* fix tests
* add files
* remove local api tests
* dont use delay
* is_new_instance
* single query for is_new_instance
* return subscribed type for pending follow
* working
* need to catch errors in waitUntil
* clippy
* fix query
* lint for unused async
* diesel.toml comment
* add comment
* avoid db reads
* rename approved_by to approver_id
* add helper
* form init
* list pending follows should return items for all communities
* clippy
* ci
* fix down migration
* fix api tests
* references
* rename
* run git diff
* ci
* fix schema check
* fix joins
* ci
* ci
* skip_serializing_none
* fix test
---------
Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2024-11-07 05:49:05 -05:00
Dessalines
917e408735
Fix postgres connection options causing slow query speed. ( #5150 )
...
* Adding a query speed check.
* Fixing slow queries due to connection config options.
* Remove pointless set_config sql function.
* Removing pointless bool.
* Removing comment
* Removing test.sh changes.
* Add analyze to speed up query
* Trying to fix DB perf connection try #1
* Try encoding option
* Fix woodpecker
* Try to use path character.
* Fixing lemmy config location.
* Removing pointless connection options.
* Use OnceLock to create a once-init psql connection.
* Fixing comment.
* Fix host encoding for dev DB.
* Address PR comments.
* Revert query mut change.
2024-11-06 10:58:40 -05:00
Dessalines
df664d9d9a
Upgrading ts_rs to 10.0.0 ( #5163 )
...
* Upgrading ts_rs to 10.0.0
* Adding ts_option directives, and woodpecker test.
* Fixing ts_options.
2024-11-06 15:50:13 +01:00
dullbananas
101476df87
Make scripts work in path that contains spaces ( #4986 )
2024-08-22 17:33:00 +02:00
phiresky
a08642f813
federation: parallel sending per instance ( #4623 )
...
* federation: parallel sending
* federation: some comments
* lint and set force_write true when a request fails
* inbox_urls return vec
* split inbox functions into separate file
* cleanup
* extract sending task code to separate file
* move federation concurrent config to config file
* off by one issue
* improve msg
* fix both permanent stopping of federation queues and multiple creation of the same federation queues
* fix after merge
* lint fix
* Update crates/federate/src/send.rs
Co-authored-by: dullbananas <dull.bananas0@gmail.com>
* comment about reverse ordering
* remove crashable, comment
* comment
* move comment
* run federation tests twice
* fix test run
* prettier
* fix config default
* upgrade rust to 1.78 to fix diesel cli
* fix clippy
* delay
* add debug to make localhost urls not valid in ap crate, add some debug logs
* federation tests: ensure server stop after test and random activity id
* ci fix
* add test to federate 100 events
* fix send 100 test
* different data every time so activities are distinguishable
* allow out of order receives in test
* lint
* comment about https://github.com/LemmyNet/lemmy/pull/4623#discussion_r1565437391
* move sender for clarity, add comment
* move more things to members
* update test todo comment, use same env var as worker test but default to 1
* remove else below continue
* some more cleanup
* handle todo about smooth exit
* add federate inboxes collector tests
* lint
* actor max length
* don't reset fail count if activity skipped
* fix some comments
* reuse vars
* format
* Update .woodpecker.yml
* fix recheck time
* fix inboxes tests under fast mode
* format
* make i32 and ugly casts
* clippy
---------
Co-authored-by: dullbananas <dull.bananas0@gmail.com>
2024-07-21 11:50:50 -04:00
Daniel Lo Nigro
8abbd56400
Switch PostgreSQL container to use pgautoupgrade ( #4892 )
...
* Switch PostgreSQL container to use pgautoupgrade
This handles automatically upgrading the data files to newer versions of PostgreSQL.
* Fixing other uses of postgres:16-alpine image.
* Simplifying upgrade scripts.
---------
Co-authored-by: Dessalines <tyhou13@gmx.com>
2024-07-17 09:59:21 +02:00
dullbananas
9120207314
Format replaceable_schema files in lint.sh ( #4868 )
2024-06-26 10:47:09 +02:00
Dessalines
b2a480f55c
Fixing sed command for postgres upgrade. ( #4791 )
...
- Context: https://github.com/LemmyNet/lemmy-ansible/issues/245
2024-06-07 12:39:23 -04:00
Dessalines
9236cf7d21
Remove ansible tagging lines. ( #4790 )
2024-06-07 11:26:43 -04:00
Dessalines
b0447ad94d
Upgrading lemmy-js-client version to 0.19.4 ( #4787 )
...
* Upgrading lemmy-js-client version to 0.19.4
* Upgrading deps before renovate.
2024-06-06 20:44:36 -04:00
af034f3b5e
Unit tests and cleanup for outgoing federation code ( #4733 )
...
* test setup
* code cleanup
* cleanup
* move stats to own file
* basic test working
* cleanup
* processes test
* more test cases
* fmt
* add file
* add assert
* error handling
* fmt
* use instance id instead of domain for stats channel
2024-05-27 09:34:58 -04:00
Tim Coombs
522f974e30
fix: use docker compose v2 ( #4622 )
...
* fix: use docker compose v2
* Using sudo tee.
* fix: correct postgres sed command
---------
Co-authored-by: Dessalines <tyhou13@gmx.com>
Co-authored-by: SleeplessOne1917 <28871516+SleeplessOne1917@users.noreply.github.com>
2024-05-07 11:41:40 +02:00
dullbananas
4ba6221e04
Move SQL triggers from migrations into reusable sql file ( #4333 )
...
* stuff
* stuff including batch_upsert function
* stuff
* do things
* stuff
* different timestamps
* stuff
* Revert changes to comment.rs
* Update comment.rs
* Update comment.rs
* Update post_view.rs
* Update utils.rs
* Update up.sql
* Update up.sql
* Update down.sql
* Update up.sql
* Update main.rs
* use anyhow macro
* Create down.sql
* Create up.sql
* Create replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update utils.rs
* Update .woodpecker.yml
* Update sql_format_check.sh
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Create dump_schema.sh
* Update start_dev_db.sh
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* stuff
* Update replaceable_schema.sql
* Update .pg_format
* fmt
* stuff
* stuff (#21 )
* Update replaceable_schema.sql
* Update up.sql
* Update replaceable_schema.sql
* fmt
* update cargo.lock
* stuff
* Update replaceable_schema.sql
* Remove truncate trigger because truncate is already restricted by foreign keys
* Update replaceable_schema.sql
* fix some things
* Update replaceable_schema.sql
* Update replaceable_schema.sql
* Update .woodpecker.yml
* stuff
* fix TG_OP
* Psql env vars
* try to fix combine_transition_tables parse error
* Revert "try to fix combine_transition_tables parse error"
This reverts commit 75d00a4626
.
* refactor combine_transition_tables
* try to fix create_triggers
* fix some things
* try to fix combined_transition_tables
* fix sql errors
* update comment count in post trigger
* fmt
* Revert "fmt"
This reverts commit a5bcd0834b
.
* Revert "update comment count in post trigger"
This reverts commit 0066a4b42b
.
* fix everything
* Update replaceable_schema.sql
* actually fix everything
* refactor create_triggers
* fix
* add semicolons
* add is_counted function and fix incorrect bool operator in update_comment_count_from_post
* refactor comment trigger
* refactor post trigger
* fix
* Delete crates/db_schema/src/utils/series.rs
* subscribers_local
* edit migrations
* move migrations
* remove utils::series module declaration
* fix everything
* stuff
* Move sql to schema_setup dir
* utils.sql
* delete .pg_format
* Update .woodpecker.yml
* Update sql_format_check.sh
* Update .woodpecker.yml
* Merge remote-tracking branch 'upstream/main' into bliss
* fmt
* Create main.rs
* Update lib.rs
* Update main.rs
* Update .woodpecker.yml
* Update main.rs
* Update Cargo.toml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update triggers.sql
* YAY
* Update mod.rs
* Update Cargo.toml
* a
* Update Cargo.toml
* Update Cargo.toml
* Delete crates/db_schema/src/main.rs
* Update Cargo.toml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update utils.sql
* Update utils.sql
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update down.sql
* Update up.sql
* Update triggers.sql
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update triggers.sql
* Update down.sql
* Update .woodpecker.yml
* Update Cargo.toml
* Update .woodpecker.yml
* Update Cargo.toml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update .woodpecker.yml
* Update mod.rs
* Update Cargo.toml
* Update mod.rs
* make dump_schema.sh executable
* fix dump_schema.sh
* defer
* diff dumps
* fmt
* Update utils.sql
* Update .woodpecker.yml
* use correct version for pg_dump
* Update .woodpecker.yml
* Update .woodpecker.yml
* change migration date
* atomic site_aggregates insert
* temporarily repeat tests in CI
* drop r schema in CI migration check
* show ReceivedActivity::create error
* move check_diesel_migration CI step
* Update .woodpecker.yml
* Update scheduled_tasks.rs
* Update scheduled_tasks.rs
* update cargo.lock
* move sql files
* move rank functions
* filter post_aggregates update
* fmt
* cargo fmt
* replace post_id with id
* update cargo.lock
* avoid locking rows that need no change in up.sql
* only run replaceable_schema if migrations were run
* debug ci test failure
* make replaceable_schema work in CI
* Update .woodpecker.yml
* remove println
* Use migration revert and git checkout
* Update schema_setup.rs
* Fix
* Update schema_setup.rs
* Update schema_setup.rs
* Update .woodpecker.yml
---------
Co-authored-by: Nutomic <me@nutomic.com>
Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2024-04-17 20:58:44 -04:00
dullbananas
0f6b13a4ec
Test coverage ( #4596 )
...
* update .gitignore
* add test-with-coverage.sh
* coverage gutters extension comment
* move lcov.info to target folder
---------
Co-authored-by: SleeplessOne1917 <28871516+SleeplessOne1917@users.noreply.github.com>
2024-04-11 10:32:07 +02:00
Dessalines
555f789269
Fixing custom_thumbnail updates. ( #4593 )
...
* Fixing custom_thumbnail updates.
* Fixing issue with image posts.
* Fixing upgrade deps script.
* Adding API tests for custom thumbnails.
* Remove pointless todo.
* Address PR comments.
---------
Co-authored-by: SleeplessOne1917 <28871516+SleeplessOne1917@users.noreply.github.com>
2024-04-10 10:59:46 -04:00
b4670988b5
Change exponential backoff algorithm for federation send ( #4597 )
...
* Limit federation send retry interval to one hour
* clippy
* avoid overflow
* change base for exp backoff
* ignore first error
* fix day duration
2024-04-09 19:33:01 -04:00
328a48c9f5
Remove error-type feature from lemmy-utils ( #4474 )
...
* Remove error-type feature from lemmy-utils
* fixes
---------
Co-authored-by: SleeplessOne1917 <28871516+SleeplessOne1917@users.noreply.github.com>
2024-02-27 11:13:52 -05:00
Dessalines
9367cbdb00
Upgrading from postgres 15 -> 16-alpine. ( #4426 )
...
- Includes an upgrade script.
- Fixes #4406
2024-02-07 11:21:02 +01:00
Dessalines
3647a46e86
Remove ansible tagging. ( #4417 )
...
- See https://github.com/LemmyNet/lemmy-ansible/issues/215
2024-01-31 10:46:13 +01:00
a09027c4c0
Silence warnings from ts-rs ( #4415 )
...
* Silence warnings from ts-rs
https://github.com/Aleph-Alpha/ts-rs/issues/108
* fmt
2024-01-29 09:22:53 -05:00
Dessalines
eb0dc2fda4
Moving from yarn to pnpm. ( #4414 )
...
* Moving from yarn to pnpm.
* Prettier check.
2024-01-29 11:38:39 +01:00
dullbananas
759f6d8a9a
Better query plan viewing experience ( #4285 )
...
* stuff
* stuff including batch_upsert function
* stuff
* do things
* stuff
* different timestamps
* stuff
* Revert changes to comment.rs
* Update comment.rs
* Update comment.rs
* Update post_view.rs
* Update utils.rs
* Update up.sql
* Update up.sql
* Update down.sql
* Update up.sql
* Update main.rs
* use anyhow macro
* replace get(0) with first()
* as_slice
* Update series.rs
* Update db_perf.sh
* Update and rename crates/db_schema/src/utils/series.rs to crates/db_perf/src/series.rs
* Update utils.rs
* Update main.rs
* Update main.rs
* Update .woodpecker.yml
* fmt main.rs
* Update .woodpecker.yml
* Instance::delete at end
* Update main.rs
* Update Cargo.toml
---------
Co-authored-by: Nutomic <me@nutomic.com>
2024-01-24 10:22:33 -05:00
Dessalines
70530a8ad2
Optimizing sql format check. ( #4268 )
...
* Optimizing sql format check.
* Fixing format testing.
* Fixing format testing 2.
2023-12-14 11:35:52 -05:00
a790a24c4d
Revert debug auth ( #4232 )
...
* Revert "Some changes to help debug auth problems on lemmy.ml (#4220 )"
This reverts commit 16ac893e15
.
* Rename auth cookie back to jwt
2023-12-05 11:22:08 -05:00
16ac893e15
Some changes to help debug auth problems on lemmy.ml ( #4220 )
...
* Some changes to help debug auth problems on lemmy.ml
* fix
* clippy
2023-12-01 09:18:29 -05:00
dullbananas
30f7135f32
Use rust 1.74.0 in CI and move clippy lints to Cargo.toml ( #4170 )
...
* ci rust 1.74.0
* do it
* Update .woodpecker.yml
* Update Cargo.toml
* Update lint.sh
* Update lib.rs
---------
Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-11-21 08:51:22 -05:00
Dessalines
8deb4e5752
Convert more responses to SuccessResponse. Fixes #2860 ( #4058 )
...
* Convert more responses to SuccessResponse. Fixes #2860
* Upgrading lemmy-js-client.
2023-10-19 13:21:05 -04:00
Anon
fe3ebea95a
Add logging for pictrs uploads ( #3927 )
...
* Add logging for pictrs uploads
* cleanup
2023-09-06 09:13:30 -04:00
Dessalines
be1389420b
Adding SQL format checking via pg_format
/ pgFormatter ( #3740 )
...
* SQL format checking, 1.
* SQL format checking, 2.
* SQL format checking, 3.
* SQL format checking, 4.
* SQL format checking, 5.
* Running pg_format
* Getting rid of comment.
* Upping pg_format version.
* Using git ls-files for sql format check.
* Fixing sql lints.
* Addressing PR comments.
2023-08-02 12:44:51 -04:00
cetra3
9256895635
Cache & Optimize Woodpecker CI ( #3450 )
...
* Try using drone cache plugin
* Try another path
* Include volume
* Fix formatting
* Include fmt
* Exclude cargo dir from prettier
* Don't override cargo
* Just do check
* Add cache key
* Use different cache plugin
* Add clippy
* Try minio
* Add quotes
* Try adding secrets
* Try again
* Again
* Use correct secret formation
* Add back clippy
* Use secret for the root bucket name
* Try drone cache instead
* Add region
* Add path-style option
* Include cargo clippy
* Include everything again
* Fix formatting
* Don't run clippy twice
* Add `allow` statements for tests to pass
* Adjust endpoint to be a secret
* Fix prettier
* Merge & fix tests
* Try to restart the woodpecker test
* Change the ENV var name
---------
Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-07-17 11:04:14 -04:00
Dessalines
164f4b93d9
Make lemmy_api_common
wasm-compatible ( #3587 )
...
* Fixing lemmy_api_common optionals
* Adding taplo for .toml files.
* Versioning taplo in woodpecker.
* Addressing PR comments.
2023-07-14 10:45:18 +02:00
dullbananas
7d3894d5dd
Automatically manage database when running scripts/test.sh ( #3389 )
...
* Update .gitignore
* Create start-dev-db.sh
* Rename start-dev-db.sh to start_dev_db.sh
* Update .gitignore
* Update start_dev_db.sh
* Update start_dev_db.sh
* Update start_dev_db.sh
* Update start_dev_db.sh
* h
* Update test.sh
* Update start_dev_db.sh
* made it work
* Make test.sh work when run from scripts dir
2023-06-30 09:50:30 +02:00
Dessalines
6c64cb5233
Fixing release script. ( #3398 )
...
* Fixing release script.
* Version 0.18.1-rc.2
* Removing cargo update from release script.
* Fixing topdir location.
2023-06-29 16:17:59 +02:00
dullbananas
bef76630c5
Remove redundant calls to Iterator::collect
( #3365 )
...
* Remove redundant calls to `Iterator::collect`
* Update mentions.rs
* Add clippy lints and run fmt
* CI ran on the wrong commit again
2023-06-28 11:19:26 +02:00
e4b739320c
Run cargo update as part of release script ( #3369 )
...
To get newest dependency patches and get rid of yanked deps
Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-06-27 08:59:58 -04:00
Dessalines
98482b1564
Fixing the release script. ( #3295 )
...
* Fixing the release script.
* Updating the submodules.
2023-06-27 10:28:56 +02:00
cetra3
9406c3ad2b
Adjust the config check to be a separate faster to compile binary ( #3313 )
2023-06-26 06:23:21 -04:00
Patrick Roe
87aa0acaf1
Align default DB password with documentation ( #3068 )
2023-06-13 22:23:07 +02:00
Dessalines
8cb5939f50
Adding hot_rank columns in place of function sorting. ( #2952 )
...
* Adding hot_rank columns in place of function sorting.
- Creates hot_rank columns for post, comment, and community.
- Fixes #2932
* Updating all hot ranks on startup.
* Fixing post.url migration.
* Removing update_instance_software from startup.
* Adding post_rank query
2023-06-08 16:15:15 -04:00
Charles Hall
4e5798852f
make shebangs posix compliant ( #2974 )
...
Previously, these scripts wouldn't work on exotic systems such as NixOS.
```
fd '\.sh$' -t f --exec sed -i 's@#!/bin/bash@#!/usr/bin/env bash@'
```
2023-06-08 15:38:26 -04:00
Dessalines
8c0c1628e0
Adding a vector indexing check to prevent panics. Fixes #2753 ( #2754 )
...
* Adding a vector indexing check to prevent panics. Fixes #2753
* Fixing for new clippy lint.
* Externalizing get_top_mod check. Adding get_first clippy lint
* Removing unit tests get(0)s
* Fixing some firsts manually
2023-02-28 12:34:50 +01:00
Dessalines
3735c6fabf
Adding instance software and version. Fixes #2222 ( #2733 )
...
* Adding instance software and version. Fixes #2222
* Fix clippy.
* Fix clippy 2
* Fixing some more issues.
2023-02-18 09:36:12 -05:00
Dessalines
993489a80f
Combine prod and dev docker setups using build-arg ( #2739 )
...
* Combine prod and dev docker setups using build-arg
- Fixes #2603
* Dont use cache for release build.
2023-02-17 15:29:45 +09:00
43b94e5f16
Fix paths in release script, update crate versions ( #2680 )
2023-02-01 00:26:51 +09:00
Dessalines
a610211557
Fixing .drone.yml
( #2677 )
...
* Try to fix docker/drone plugin
* Trying to use one rust image.
* Fixing drone 1.
* Fixing drone 2.
* Add drone notify.
* Fixing drone 3.
* Fixing drone 4.
* Fix clippy.
* Remove uninlined format lint.
* Combine all cargo tasks
* Fixing drone 5.
* Fixing drone 6.
* Fixing drone 7.
* Fixing drone 8.
* Fixing drone 9.
* Fixing drone 10.
* Fixing drone 12.
* Fixing drone 13.
* Fixing drone 14.
* Fixing drone 15.
* Fixing drone 16.
* Fixing drone 17.
* Fixing drone 18.
* Fixing drone 19.
* Fixing drone 20.
* Fixing drone 21.
* Fixing drone 22.
* Fixing drone 23.
* Fixing drone 24.
* Fixing drone 25.
* Fixing drone 26.
* Fixing drone 27.
* Fixing drone 28.
* Fixing drone 29.
* Fixing drone 30.
* Fixing drone 31.
* Fixing drone 32.
* Fixing drone 33.
* Fixing drone 34.
* Fixing drone 35.
* Fixing drone 36.
* Fixing drone 37.
* Fixing drone 38.
* Fixing drone 39.
* Fixing drone 40.
* Fixing drone 41.
* Fixing drone 43.
* Fixing drone 44.
* Fixing drone 45.
* Last cleanup.
* Fixing drone 46.
* Separate ci steps (#2679 )
* separate ci steps
* fix 1
* add comments
* dont add rustfmt explicitly
* Revert "dont add rustfmt explicitly"
This reverts commit 358ce3302a134b7ac88d90a854079356995e9725.
* dont use all features for tests
---------
Co-authored-by: Nutomic <me@nutomic.com>
2023-01-30 14:17:24 -05:00
7e3d3839b6
Post creation from Mastodon ( fixes #2590 ) ( #2651 )
...
* Post creation from Mastodon (fixes #2590 )
* better logic for page title
* add deserialize helper
Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2023-01-20 12:43:23 -05:00
Dessalines
ac56504291
Upgrade to postgres 15. ( #2659 )
2023-01-20 18:15:07 +01:00
2ec8bb877c
Some script improvements ( #2654 )
...
- Allow specifying which packages should be tested
- Hardcode `lemmy` as db password because thats used in many different places
2023-01-13 00:23:58 +01:00
9f52d4ae53
Fix user following ( #2623 )
...
Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2022-12-19 10:55:26 -05:00
d39bc14c43
Add some more clippy lints ( #2586 )
...
* Add some more clippy lints
* restore config
* no allow dirty
Co-authored-by: Dessalines <dessalines@users.noreply.github.com>
2022-11-24 16:38:00 +00:00