From 5a3794957e42505d5885b6017d7707fc7e27e2e5 Mon Sep 17 00:00:00 2001 From: Alexandre Aubin Date: Sun, 21 Feb 2021 18:31:06 +0100 Subject: [PATCH] Report legacy permission stuff (as info) --- package_linter.py | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/package_linter.py b/package_linter.py index 779bfd0..db95acd 100755 --- a/package_linter.py +++ b/package_linter.py @@ -1382,6 +1382,21 @@ class Script(TestSuite): "Use grep -q 'id: $appname' to check a specific app is installed" ) + @test() + def set_is_public_setting(self): + if self.containsregex(r'ynh_app_setting_set .*is_public.*'): + yield Info("permission system: it should not be needed to save is_public with ynh_app_setting_set ... this setting should only be used during installation to initialize the permission. The admin is likely to manually tweak the permission using Yunohost's interface later.") + + @test(ignore=["install", "_common.sh"]) + def get_is_public_setting(self): + if self.contains('is_public=') or self.contains('$is_public'): + yield Info("permission system: there should be no need to fetch or use $is_public ... is_public should only be used during installation to initialize the permission. The admin is likely to manually tweak the permission using Yunohost's interface later.") + + @test() + def set_legacy_permissions(self): + if self.containsregex(r'ynh_app_setting_set .*protected_') or self.containsregex(r'ynh_app_setting_set .*skipped_'): + yield Info("permission system: it looks like the app is still using the legacy permission system (unprotected/protected/skipped uris/regexes setting). Please check https://yunohost.org/packaging_apps_permissions for a documentation on how to migrate the app to the new permission system.") + @test() def normalize_url_path(self): if self.contains("ynh_normalize_url_path"):