diff --git a/README.md b/README.md
index 91ca0910..eed760c4 100644
--- a/README.md
+++ b/README.md
@@ -117,6 +117,16 @@ do not hesitate to reach us on [GitHub Discussions](https://github.com/stalwartl
[Reddit](https://www.reddit.com/r/stalwartlabs), [Discord](https://discord.gg/aVQr3jF8jd) or [Matrix](https://matrix.to/#/#stalwart:matrix.org).
Additionally you may purchase a subscription to obtain priority support from Stalwart Labs Ltd.
+## Sponsorship
+
+Your support is crucial in helping us continue to improve the project, add new features, and maintain the highest level of quality. By becoming a GitHub Sponsor, you help fund the development and future of Stalwart Mail Server. As a thank-you, sponsors who contribute $10 per month or more will automatically receive a [Small Business Edition](https://stalw.art/small-business/) license, which includes all the powerful features of the [Enterprise edition](https://stalw.art/enterprise/).
+
+These are some of our open-source sponsors:
+
+





+
+
If you would like to support our work, please consider [becoming a sponsor](https://github.com/sponsors/stalwartlabs).
+
## Roadmap
- [ ] JMAP Calendar, Contacts and Tasks support
@@ -131,14 +141,6 @@ Part of the development of this project was funded through the [NGI0 Entrust Fun
If you find the project useful you can help by [becoming a sponsor](https://liberapay.com/stalwartlabs). Thank you!
-## Sponsors
-
-These are some of our open-source sponsors:
-
-





-
-
If you would like to support our work, please consider [becoming a sponsor](https://github.com/sponsors/stalwartlabs).
-
## License
This project is dual-licensed under the **GNU Affero General Public License v3.0** (AGPL-3.0; as published by the Free Software Foundation) and the **Stalwart Enterprise License v1 (SELv1)**:
diff --git a/crates/directory/src/core/mod.rs b/crates/directory/src/core/mod.rs
index 50383ae9..11bc7f5c 100644
--- a/crates/directory/src/core/mod.rs
+++ b/crates/directory/src/core/mod.rs
@@ -186,3 +186,31 @@ impl Permission {
}
}
}
+
+#[cfg(test)]
+mod test {
+ use crate::Permission;
+
+ #[test]
+ #[ignore]
+ fn print_permissions() {
+ const CHECK: &str = ":white_check_mark:";
+
+ for permission in Permission::all() {
+ println!(
+ "|`{}`|{}|{}|{}|{}|",
+ permission.name(),
+ permission.description(),
+ CHECK,
+ permission
+ .is_tenant_admin_permission()
+ .then_some(CHECK)
+ .unwrap_or_default(),
+ permission
+ .is_user_permission()
+ .then_some(CHECK)
+ .unwrap_or_default()
+ );
+ }
+ }
+}