Compare commits
4 commits
alpine-pac
...
nex/wip-75
Author | SHA1 | Date | |
---|---|---|---|
|
7a6be9a28b | ||
|
62d7c74c9e | ||
|
c842a1a5ff | ||
|
41cf118a24 |
7 changed files with 178 additions and 114 deletions
22
Cargo.lock
generated
22
Cargo.lock
generated
|
@ -3652,7 +3652,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ruma"
|
name = "ruma"
|
||||||
version = "0.10.1"
|
version = "0.10.1"
|
||||||
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=fa3c868e5a1c049dc9472310dc4955289a96bb35#fa3c868e5a1c049dc9472310dc4955289a96bb35"
|
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=b3cb85becae3c1ecabe2c93138312ebb3632b728#b3cb85becae3c1ecabe2c93138312ebb3632b728"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"assign",
|
"assign",
|
||||||
"js_int",
|
"js_int",
|
||||||
|
@ -3672,7 +3672,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ruma-appservice-api"
|
name = "ruma-appservice-api"
|
||||||
version = "0.10.0"
|
version = "0.10.0"
|
||||||
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=fa3c868e5a1c049dc9472310dc4955289a96bb35#fa3c868e5a1c049dc9472310dc4955289a96bb35"
|
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=b3cb85becae3c1ecabe2c93138312ebb3632b728#b3cb85becae3c1ecabe2c93138312ebb3632b728"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"js_int",
|
"js_int",
|
||||||
"ruma-common",
|
"ruma-common",
|
||||||
|
@ -3684,7 +3684,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ruma-client-api"
|
name = "ruma-client-api"
|
||||||
version = "0.18.0"
|
version = "0.18.0"
|
||||||
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=fa3c868e5a1c049dc9472310dc4955289a96bb35#fa3c868e5a1c049dc9472310dc4955289a96bb35"
|
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=b3cb85becae3c1ecabe2c93138312ebb3632b728#b3cb85becae3c1ecabe2c93138312ebb3632b728"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"as_variant",
|
"as_variant",
|
||||||
"assign",
|
"assign",
|
||||||
|
@ -3707,7 +3707,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ruma-common"
|
name = "ruma-common"
|
||||||
version = "0.13.0"
|
version = "0.13.0"
|
||||||
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=fa3c868e5a1c049dc9472310dc4955289a96bb35#fa3c868e5a1c049dc9472310dc4955289a96bb35"
|
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=b3cb85becae3c1ecabe2c93138312ebb3632b728#b3cb85becae3c1ecabe2c93138312ebb3632b728"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"as_variant",
|
"as_variant",
|
||||||
"base64 0.22.1",
|
"base64 0.22.1",
|
||||||
|
@ -3739,7 +3739,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ruma-events"
|
name = "ruma-events"
|
||||||
version = "0.28.1"
|
version = "0.28.1"
|
||||||
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=fa3c868e5a1c049dc9472310dc4955289a96bb35#fa3c868e5a1c049dc9472310dc4955289a96bb35"
|
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=b3cb85becae3c1ecabe2c93138312ebb3632b728#b3cb85becae3c1ecabe2c93138312ebb3632b728"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"as_variant",
|
"as_variant",
|
||||||
"indexmap 2.8.0",
|
"indexmap 2.8.0",
|
||||||
|
@ -3764,7 +3764,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ruma-federation-api"
|
name = "ruma-federation-api"
|
||||||
version = "0.9.0"
|
version = "0.9.0"
|
||||||
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=fa3c868e5a1c049dc9472310dc4955289a96bb35#fa3c868e5a1c049dc9472310dc4955289a96bb35"
|
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=b3cb85becae3c1ecabe2c93138312ebb3632b728#b3cb85becae3c1ecabe2c93138312ebb3632b728"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bytes",
|
"bytes",
|
||||||
"headers",
|
"headers",
|
||||||
|
@ -3786,7 +3786,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ruma-identifiers-validation"
|
name = "ruma-identifiers-validation"
|
||||||
version = "0.9.5"
|
version = "0.9.5"
|
||||||
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=fa3c868e5a1c049dc9472310dc4955289a96bb35#fa3c868e5a1c049dc9472310dc4955289a96bb35"
|
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=b3cb85becae3c1ecabe2c93138312ebb3632b728#b3cb85becae3c1ecabe2c93138312ebb3632b728"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"js_int",
|
"js_int",
|
||||||
"thiserror 2.0.12",
|
"thiserror 2.0.12",
|
||||||
|
@ -3795,7 +3795,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ruma-identity-service-api"
|
name = "ruma-identity-service-api"
|
||||||
version = "0.9.0"
|
version = "0.9.0"
|
||||||
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=fa3c868e5a1c049dc9472310dc4955289a96bb35#fa3c868e5a1c049dc9472310dc4955289a96bb35"
|
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=b3cb85becae3c1ecabe2c93138312ebb3632b728#b3cb85becae3c1ecabe2c93138312ebb3632b728"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"js_int",
|
"js_int",
|
||||||
"ruma-common",
|
"ruma-common",
|
||||||
|
@ -3805,7 +3805,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ruma-macros"
|
name = "ruma-macros"
|
||||||
version = "0.13.0"
|
version = "0.13.0"
|
||||||
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=fa3c868e5a1c049dc9472310dc4955289a96bb35#fa3c868e5a1c049dc9472310dc4955289a96bb35"
|
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=b3cb85becae3c1ecabe2c93138312ebb3632b728#b3cb85becae3c1ecabe2c93138312ebb3632b728"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"cfg-if",
|
"cfg-if",
|
||||||
"proc-macro-crate",
|
"proc-macro-crate",
|
||||||
|
@ -3820,7 +3820,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ruma-push-gateway-api"
|
name = "ruma-push-gateway-api"
|
||||||
version = "0.9.0"
|
version = "0.9.0"
|
||||||
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=fa3c868e5a1c049dc9472310dc4955289a96bb35#fa3c868e5a1c049dc9472310dc4955289a96bb35"
|
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=b3cb85becae3c1ecabe2c93138312ebb3632b728#b3cb85becae3c1ecabe2c93138312ebb3632b728"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"js_int",
|
"js_int",
|
||||||
"ruma-common",
|
"ruma-common",
|
||||||
|
@ -3832,7 +3832,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "ruma-signatures"
|
name = "ruma-signatures"
|
||||||
version = "0.15.0"
|
version = "0.15.0"
|
||||||
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=fa3c868e5a1c049dc9472310dc4955289a96bb35#fa3c868e5a1c049dc9472310dc4955289a96bb35"
|
source = "git+https://forgejo.ellis.link/continuwuation/ruwuma?rev=b3cb85becae3c1ecabe2c93138312ebb3632b728#b3cb85becae3c1ecabe2c93138312ebb3632b728"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"base64 0.22.1",
|
"base64 0.22.1",
|
||||||
"ed25519-dalek",
|
"ed25519-dalek",
|
||||||
|
|
|
@ -350,7 +350,7 @@ version = "0.1.2"
|
||||||
[workspace.dependencies.ruma]
|
[workspace.dependencies.ruma]
|
||||||
git = "https://forgejo.ellis.link/continuwuation/ruwuma"
|
git = "https://forgejo.ellis.link/continuwuation/ruwuma"
|
||||||
#branch = "conduwuit-changes"
|
#branch = "conduwuit-changes"
|
||||||
rev = "fa3c868e5a1c049dc9472310dc4955289a96bb35"
|
rev = "b3cb85becae3c1ecabe2c93138312ebb3632b728"
|
||||||
features = [
|
features = [
|
||||||
"compat",
|
"compat",
|
||||||
"rand",
|
"rand",
|
||||||
|
|
|
@ -19,4 +19,4 @@
|
||||||
- [Contributing](contributing.md)
|
- [Contributing](contributing.md)
|
||||||
- [Testing](development/testing.md)
|
- [Testing](development/testing.md)
|
||||||
- [Hot Reloading ("Live" Development)](development/hot_reload.md)
|
- [Hot Reloading ("Live" Development)](development/hot_reload.md)
|
||||||
- [conduwuit Community Code of Conduct](conduwuit_coc.md)
|
- [Community (and Guidelines)](community.md)
|
||||||
|
|
139
docs/community.md
Normal file
139
docs/community.md
Normal file
|
@ -0,0 +1,139 @@
|
||||||
|
# Continuwuity Community Guidelines
|
||||||
|
|
||||||
|
Welcome to the Continuwuity commuwunity! We're excited to have you here. Continuwuity is a
|
||||||
|
continuation of the conduwuit homeserver, which in turn is a hard-fork of the Conduit homeserver,
|
||||||
|
aimed at making Matrix more accessible and inclusive for everyone.
|
||||||
|
|
||||||
|
This space is dedicated to fostering a positive, supportive, and welcoming environment for everyone.
|
||||||
|
These guidelines apply to all Continuwuity spaces, including our Matrix rooms and any other
|
||||||
|
community channels that reference them. We've written these guidelines to help us all create an
|
||||||
|
environment where everyone feels safe and respected.
|
||||||
|
|
||||||
|
For code and contribution guidelines, please refer to the
|
||||||
|
[Contributor's Covenant](https://forgejo.ellis.link/continuwuation/continuwuity/src/branch/main/CODE_OF_CONDUCT.md).
|
||||||
|
Below are additional guidelines specific to the Continuwuity community.
|
||||||
|
|
||||||
|
## Our Values and Expected Behaviors
|
||||||
|
|
||||||
|
We strive to create a community based on mutual respect, collaboration, and inclusivity. We expect
|
||||||
|
all members to:
|
||||||
|
|
||||||
|
1. **Be Respectful and Inclusive**: Treat everyone with respect. We're committed to a community
|
||||||
|
where everyone feels safe, regardless of background, identity, or experience. Discrimination,
|
||||||
|
harassment, or hate speech won't be tolerated. Remember that each person experiences the world
|
||||||
|
differently; share your own perspective and be open to learning about others'.
|
||||||
|
|
||||||
|
2. **Be Positive and Constructive**: Engage in discussions constructively and support each other.
|
||||||
|
If you feel angry or frustrated, take a break before participating. Approach disagreements with
|
||||||
|
the goal of understanding, not winning. Focus on the issue, not the person.
|
||||||
|
|
||||||
|
3. **Communicate Clearly and Kindly**: Our community includes neurodivergent individuals and those
|
||||||
|
who may not appreciate sarcasm or subtlety. Communicate clearly and kindly. Avoid ambiguity and
|
||||||
|
ensure your messages can be easily understood by all. Avoid placing the burden of education on
|
||||||
|
marginalized groups; please make an effort to look into your questions before asking others for
|
||||||
|
detailed explanations.
|
||||||
|
|
||||||
|
4. **Be Open to Improving Inclusivity**: Actively participate in making our community more inclusive.
|
||||||
|
Report behaviour that contradicts these guidelines (see Reporting and Enforcement below) and be
|
||||||
|
open to constructive feedback aimed at improving our community. Understand that discussing
|
||||||
|
negative experiences can be emotionally taxing; focus on the message, not the tone.
|
||||||
|
|
||||||
|
5. **Commit to Our Values**: Building an inclusive community requires ongoing effort from everyone.
|
||||||
|
Recognise that addressing bias and discrimination is a continuous process that needs commitment
|
||||||
|
and action from all members.
|
||||||
|
|
||||||
|
## Unacceptable Behaviors
|
||||||
|
|
||||||
|
To ensure everyone feels safe and welcome, the following behaviors are considered unacceptable
|
||||||
|
within the Continuwuity community:
|
||||||
|
|
||||||
|
* **Harassment and Discrimination**: Avoid offensive comments related to background, family status,
|
||||||
|
gender, gender identity or expression, marital status, sex, sexual orientation, native language,
|
||||||
|
age, ability, race and/or ethnicity, caste, national origin, socioeconomic status, religion,
|
||||||
|
geographic location, or any other dimension of diversity. Don't deliberately misgender someone or
|
||||||
|
question the legitimacy of their gender identity.
|
||||||
|
|
||||||
|
* **Violence and Threats**: Do not engage in any form of violence or threats, including inciting
|
||||||
|
violence towards anyone or encouraging self-harm. Posting or threatening to post someone else's
|
||||||
|
personally identifying information ("doxxing") is also forbidden.
|
||||||
|
|
||||||
|
* **Personal Attacks**: Disagreements happen, but they should never turn into personal attacks.
|
||||||
|
Don't insult, demean, or belittle others.
|
||||||
|
|
||||||
|
* **Unwelcome Attention or Contact**: Avoid unwelcome sexual attention, inappropriate physical
|
||||||
|
contact (or simulation thereof), sexualized comments, jokes, or imagery.
|
||||||
|
|
||||||
|
* **Disruption**: Do not engage in sustained disruption of discussions, events, or other
|
||||||
|
community activities.
|
||||||
|
|
||||||
|
* **Bad Faith Actions**: Do not intentionally make false reports or otherwise abuse the reporting
|
||||||
|
process.
|
||||||
|
|
||||||
|
This is not an exhaustive list. Any behaviour that makes others feel unsafe or unwelcome may be
|
||||||
|
subject to enforcement action.
|
||||||
|
|
||||||
|
## Matrix Community
|
||||||
|
|
||||||
|
These Community Guidelines apply to the entire
|
||||||
|
[Continuwuity Matrix Space](https://matrix.to/#/#space:continuwuity.org) and its rooms, including:
|
||||||
|
|
||||||
|
### [#continuwuity:continuwuity.org](https://matrix.to/#/#continuwuity:continuwuity.org)
|
||||||
|
|
||||||
|
This room is for support and discussions about Continuwuity. Ask questions, share insights, and help
|
||||||
|
each other out while adhering to these guidelines.
|
||||||
|
|
||||||
|
We ask that this room remain focused on the Continuwuity software specifically: the team are
|
||||||
|
typically happy to engage in conversations about related subjects in the off-topic room.
|
||||||
|
|
||||||
|
### [#offtopic:continuwuity.org](https://matrix.to/#/#offtopic:continuwuity.org)
|
||||||
|
|
||||||
|
For off-topic community conversations about any subject. While this room allows for a wide range of
|
||||||
|
topics, the same guidelines apply. Please keep discussions respectful and inclusive, and avoid
|
||||||
|
divisive or stressful subjects like specific country/world politics unless handled with exceptional
|
||||||
|
care and respect for diverse viewpoints.
|
||||||
|
|
||||||
|
General topics, such as world events, are welcome as long as they follow the guidelines. If a member
|
||||||
|
of the team asks for the conversation to end, please respect their decision.
|
||||||
|
|
||||||
|
### [#dev:continuwuity.org](https://matrix.to/#/#dev:continuwuity.org)
|
||||||
|
|
||||||
|
This room is dedicated to discussing active development of Continuwuity, including ongoing issues or
|
||||||
|
code development. Collaboration here must follow these guidelines, and please consider raising
|
||||||
|
[an issue](https://forgejo.ellis.link/continuwuation/continuwuity/issues) on the repository to help
|
||||||
|
track progress.
|
||||||
|
|
||||||
|
## Reporting and Enforcement
|
||||||
|
|
||||||
|
We take these Community Guidelines seriously to protect our community members. If you witness or
|
||||||
|
experience unacceptable behaviour, or have any other concerns, please report it.
|
||||||
|
|
||||||
|
**How to Report:**
|
||||||
|
|
||||||
|
* **Alert Moderators in the Room:** If you feel comfortable doing so, you can address the issue
|
||||||
|
publicly in the relevant room by mentioning the moderation bot, `@rock:continuwuity.org`, which
|
||||||
|
will immediately alert all available moderators.
|
||||||
|
* **Direct Message:** If you're not comfortable raising the issue publicly, please send a direct
|
||||||
|
message (DM) to one of the room moderators.
|
||||||
|
|
||||||
|
Reports will be handled with discretion. We will investigate promptly and thoroughly.
|
||||||
|
|
||||||
|
**Enforcement Actions:**
|
||||||
|
|
||||||
|
Anyone asked to stop unacceptable behaviour is expected to comply immediately. Failure to do so, or
|
||||||
|
engaging in prohibited behaviour, may result in enforcement action. Moderators may take actions they
|
||||||
|
deem appropriate, including but not limited to:
|
||||||
|
|
||||||
|
1. **Warning**: A direct message or public warning identifying the violation and requesting
|
||||||
|
corrective action.
|
||||||
|
2. **Temporary Mute**: Temporary restriction from participating in discussions for a specified
|
||||||
|
period.
|
||||||
|
3. **Kick or Ban**: Removal from a room (kick) or the entire community space (ban). Egregious or
|
||||||
|
repeated violations may result in an immediate ban. Bans are typically permanent and reviewed
|
||||||
|
only in exceptional circumstances.
|
||||||
|
|
||||||
|
Retaliation against those who report concerns in good faith will not be tolerated and will be
|
||||||
|
subject to the same enforcement actions.
|
||||||
|
|
||||||
|
Together, let's build and maintain a community where everyone feels valued, safe, and respected.
|
||||||
|
|
||||||
|
— The Continuwuity Moderation Team
|
|
@ -1,93 +0,0 @@
|
||||||
# Continuwuity Community Code of Conduct
|
|
||||||
|
|
||||||
Welcome to the Continuwuity community! We’re excited to have you here. Continuwuity is
|
|
||||||
a hard-fork of the Conduit homeserver, aimed at making Matrix more accessible
|
|
||||||
and inclusive for everyone.
|
|
||||||
|
|
||||||
This space is dedicated to fostering a positive, supportive, and inclusive
|
|
||||||
environment for everyone. This Code of Conduct applies to all Continuwuity spaces,
|
|
||||||
including any further community rooms that reference this CoC. Here are our
|
|
||||||
guidelines to help maintain the welcoming atmosphere that sets Continuwuity apart.
|
|
||||||
|
|
||||||
For the general foundational rules, please refer to the [Contributor's
|
|
||||||
Covenant](https://forgejo.ellis.link/continuwuation/continuwuity/src/branch/main/CODE_OF_CONDUCT.md).
|
|
||||||
Below are additional guidelines specific to the Continuwuity community.
|
|
||||||
|
|
||||||
## Our Values and Guidelines
|
|
||||||
|
|
||||||
1. **Respect and Inclusivity**: We are committed to maintaining a community
|
|
||||||
where everyone feels safe and respected. Discrimination, harassment, or hate
|
|
||||||
speech of any kind will not be tolerated. Recognise that each community member
|
|
||||||
experiences the world differently based on their past experiences, background,
|
|
||||||
and identity. Share your own experiences and be open to learning about others'
|
|
||||||
diverse perspectives.
|
|
||||||
|
|
||||||
2. **Positivity and Constructiveness**: Engage in constructive discussions and
|
|
||||||
support each other. If you feel angry, negative, or aggressive, take a break
|
|
||||||
until you can participate in a positive and constructive manner. Process intense
|
|
||||||
feelings with a friend or in a private setting before engaging in community
|
|
||||||
conversations to help maintain a supportive and focused environment.
|
|
||||||
|
|
||||||
3. **Clarity and Understanding**: Our community includes neurodivergent
|
|
||||||
individuals and those who may not appreciate sarcasm or subtlety. Communicate
|
|
||||||
clearly and kindly, avoiding sarcasm and ensuring your messages are easily
|
|
||||||
understood by all. Additionally, avoid putting the burden of education on
|
|
||||||
marginalized groups by doing your own research before asking for explanations.
|
|
||||||
|
|
||||||
4. **Be Open to Inclusivity**: Actively engage in conversations about making our
|
|
||||||
community more inclusive. Report discriminatory behavior to the moderators
|
|
||||||
and be open to constructive feedback that aims to improve our community.
|
|
||||||
Understand that discussing discrimination and negative experiences can be
|
|
||||||
emotionally taxing, so focus on the message rather than critiquing the tone
|
|
||||||
used.
|
|
||||||
|
|
||||||
5. **Commit to Inclusivity**: Building an inclusive community requires time,
|
|
||||||
energy, and resources. Recognise that addressing discrimination and bias is
|
|
||||||
an ongoing process that necessitates commitment and action from all community
|
|
||||||
members.
|
|
||||||
|
|
||||||
## Matrix Community
|
|
||||||
|
|
||||||
This Code of Conduct applies to the entire [Continuwuity Matrix
|
|
||||||
Space](https://matrix.to/#/#space:continuwuity.org) and its rooms,
|
|
||||||
including:
|
|
||||||
|
|
||||||
### [#continuwuity:continuwuity.org](https://matrix.to/#/#continuwuity:continuwuity.org)
|
|
||||||
|
|
||||||
This room is for support and discussions about Continuwuity. Ask questions, share
|
|
||||||
insights, and help each other out.
|
|
||||||
|
|
||||||
### [#offtopic:continuwuity.org](https://matrix.to/#/#offtopic:continuwuity.org)
|
|
||||||
|
|
||||||
For off-topic community conversations about any subject. While this room allows
|
|
||||||
for a wide range of topics, the same CoC applies. Keep discussions respectful
|
|
||||||
and inclusive, and avoid divisive subjects like country/world politics. General
|
|
||||||
topics, such as world events, are welcome as long as they follow the CoC.
|
|
||||||
|
|
||||||
### [#dev:continuwuity.org](https://matrix.to/#/#dev:continuwuity.org)
|
|
||||||
|
|
||||||
This room is dedicated to discussing active development of Continuwuity. Posting
|
|
||||||
requires an elevated power level, which can be requested in one of the other
|
|
||||||
rooms. Use this space to collaborate and innovate.
|
|
||||||
|
|
||||||
## Enforcement
|
|
||||||
|
|
||||||
We have a zero-tolerance policy for violations of this Code of Conduct. If
|
|
||||||
someone’s behavior makes you uncomfortable, please report it to the moderators.
|
|
||||||
Actions we may take include:
|
|
||||||
|
|
||||||
1. **Warning**: A warning given directly in the room or via a private message
|
|
||||||
from the moderators, identifying the violation and requesting corrective
|
|
||||||
action.
|
|
||||||
2. **Temporary Mute**: Temporary restriction from participating in discussions
|
|
||||||
for a specified period to allow for reflection and cooling off.
|
|
||||||
3. **Kick or Ban**: Egregious behavior may result in an immediate kick or ban to
|
|
||||||
protect other community members. Bans are considered permanent and will only
|
|
||||||
be reversed in exceptional circumstances after proven good behavior.
|
|
||||||
|
|
||||||
Please highlight issues directly in rooms when possible, but if you don't feel
|
|
||||||
comfortable doing that, then please send a DM to one of the moderators directly.
|
|
||||||
|
|
||||||
Together, let’s build a community where everyone feels valued and respected.
|
|
||||||
|
|
||||||
— The Continuwuity Moderation Team
|
|
|
@ -1855,7 +1855,7 @@ pub async fn leave_room(
|
||||||
|
|
||||||
// Ask a remote server if we don't have this room and are not knocking on it
|
// Ask a remote server if we don't have this room and are not knocking on it
|
||||||
if dont_have_room.and(not_knocked).await {
|
if dont_have_room.and(not_knocked).await {
|
||||||
if let Err(e) = remote_leave_room(services, user_id, room_id).boxed().await {
|
if let Err(e) = remote_leave_room(services, user_id, room_id, reason.clone()).boxed().await {
|
||||||
warn!(%user_id, "Failed to leave room {room_id} remotely: {e}");
|
warn!(%user_id, "Failed to leave room {room_id} remotely: {e}");
|
||||||
// Don't tell the client about this error
|
// Don't tell the client about this error
|
||||||
}
|
}
|
||||||
|
@ -1940,6 +1940,7 @@ async fn remote_leave_room(
|
||||||
services: &Services,
|
services: &Services,
|
||||||
user_id: &UserId,
|
user_id: &UserId,
|
||||||
room_id: &RoomId,
|
room_id: &RoomId,
|
||||||
|
reason: Option<String>,
|
||||||
) -> Result<()> {
|
) -> Result<()> {
|
||||||
let mut make_leave_response_and_server =
|
let mut make_leave_response_and_server =
|
||||||
Err!(BadServerResponse("No remote server available to assist in leaving {room_id}."));
|
Err!(BadServerResponse("No remote server available to assist in leaving {room_id}."));
|
||||||
|
@ -2056,6 +2057,12 @@ async fn remote_leave_room(
|
||||||
.expect("Timestamp is valid js_int value"),
|
.expect("Timestamp is valid js_int value"),
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
|
// Inject the reason key into the event content dict if it exists
|
||||||
|
if let Some(reason) = reason {
|
||||||
|
if let Some(CanonicalJsonValue::Object(content)) = leave_event_stub.get_mut("content") {
|
||||||
|
content.insert("reason".to_owned(), CanonicalJsonValue::String(reason));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// room v3 and above removed the "event_id" field from remote PDU format
|
// room v3 and above removed the "event_id" field from remote PDU format
|
||||||
match room_version_id {
|
match room_version_id {
|
||||||
|
|
|
@ -4,13 +4,8 @@ use base64::{Engine as _, engine::general_purpose};
|
||||||
use conduwuit::{
|
use conduwuit::{
|
||||||
Err, Error, PduEvent, Result, err, pdu::gen_event_id, utils, utils::hash::sha256, warn,
|
Err, Error, PduEvent, Result, err, pdu::gen_event_id, utils, utils::hash::sha256, warn,
|
||||||
};
|
};
|
||||||
use ruma::{
|
use ruma::{CanonicalJsonValue, OwnedUserId, UserId, api::{client::error::ErrorKind, federation::membership::create_invite}, events::room::member::{MembershipState, RoomMemberEventContent}, serde::JsonObject, RoomId, OwnedRoomId};
|
||||||
CanonicalJsonValue, OwnedUserId, UserId,
|
use ruma::api::OutgoingRequest;
|
||||||
api::{client::error::ErrorKind, federation::membership::create_invite},
|
|
||||||
events::room::member::{MembershipState, RoomMemberEventContent},
|
|
||||||
serde::JsonObject,
|
|
||||||
};
|
|
||||||
|
|
||||||
use crate::Ruma;
|
use crate::Ruma;
|
||||||
|
|
||||||
/// # `PUT /_matrix/federation/v2/invite/{roomId}/{eventId}`
|
/// # `PUT /_matrix/federation/v2/invite/{roomId}/{eventId}`
|
||||||
|
@ -113,6 +108,22 @@ pub(crate) async fn create_invite_route(
|
||||||
|
|
||||||
invite_state.push(pdu.to_stripped_state_event());
|
invite_state.push(pdu.to_stripped_state_event());
|
||||||
|
|
||||||
|
// Check the invite against any user_may_invite callbacks
|
||||||
|
// let mut user_may_invite = UserMayInvitePayload {
|
||||||
|
// inviter: sender.to_owned(),
|
||||||
|
// invitee: invited_user,
|
||||||
|
// room_id: body.room_id.clone(),
|
||||||
|
// };
|
||||||
|
for appservice in services.appservice.read().await.values() {
|
||||||
|
if let Some(callbacks) = &appservice.registration.callbacks {
|
||||||
|
if callbacks.user_may_invite.is_some() {
|
||||||
|
// let resp = services.sending.send_appservice_request(appservice.registration.clone(),
|
||||||
|
// &user_may_invite
|
||||||
|
// );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// If we are active in the room, the remote server will notify us about the
|
// If we are active in the room, the remote server will notify us about the
|
||||||
// join/invite through /send. If we are not in the room, we need to manually
|
// join/invite through /send. If we are not in the room, we need to manually
|
||||||
// record the invited state for client /sync through update_membership(), and
|
// record the invited state for client /sync through update_membership(), and
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue