@@ -2925,8 +2925,248 @@ var configurations = []Type{
29252925 ProjectType : projecttype .PackageIndex ,
29262926 SuperprojectType : projecttype .All ,
29272927 Category : "data" ,
2928- Subcategory : "package " ,
2928+ Subcategory : "root " ,
29292929 ID : "ID003" ,
2930+ Brief : "Additional properties in root" ,
2931+ Description : "" ,
2932+ MessageTemplate : "Unknown properties found in package index root." ,
2933+ DisableModes : nil ,
2934+ EnableModes : []rulemode.Type {rulemode .Default },
2935+ InfoModes : nil ,
2936+ WarningModes : nil ,
2937+ ErrorModes : []rulemode.Type {rulemode .Default },
2938+ RuleFunction : rulefunction .PackageIndexAdditionalProperties ,
2939+ },
2940+ {
2941+ ProjectType : projecttype .PackageIndex ,
2942+ SuperprojectType : projecttype .All ,
2943+ Category : "data" ,
2944+ Subcategory : "package" ,
2945+ ID : "IA001" ,
2946+ Brief : "packages[] missing" ,
2947+ Description : "" ,
2948+ MessageTemplate : "Missing packages property." ,
2949+ DisableModes : nil ,
2950+ EnableModes : []rulemode.Type {rulemode .Default },
2951+ InfoModes : nil ,
2952+ WarningModes : nil ,
2953+ ErrorModes : []rulemode.Type {rulemode .Default },
2954+ RuleFunction : rulefunction .PackageIndexPackagesMissing ,
2955+ },
2956+ {
2957+ ProjectType : projecttype .PackageIndex ,
2958+ SuperprojectType : projecttype .All ,
2959+ Category : "data" ,
2960+ Subcategory : "package" ,
2961+ ID : "IA002" ,
2962+ Brief : "Incorrect packages type" ,
2963+ Description : "" ,
2964+ MessageTemplate : "packages property has incorrect type." ,
2965+ DisableModes : nil ,
2966+ EnableModes : []rulemode.Type {rulemode .Default },
2967+ InfoModes : nil ,
2968+ WarningModes : nil ,
2969+ ErrorModes : []rulemode.Type {rulemode .Default },
2970+ RuleFunction : rulefunction .PackageIndexPackagesIncorrectType ,
2971+ },
2972+ {
2973+ ProjectType : projecttype .PackageIndex ,
2974+ SuperprojectType : projecttype .All ,
2975+ Category : "data" ,
2976+ Subcategory : "root" ,
2977+ ID : "IA003" ,
2978+ Brief : "Additional properties in packages" ,
2979+ Description : "" ,
2980+ MessageTemplate : "Unknown properties found in package(s): {{.}}" ,
2981+ DisableModes : nil ,
2982+ EnableModes : []rulemode.Type {rulemode .Default },
2983+ InfoModes : nil ,
2984+ WarningModes : nil ,
2985+ ErrorModes : []rulemode.Type {rulemode .Default },
2986+ RuleFunction : rulefunction .PackageIndexPackagesAdditionalProperties ,
2987+ },
2988+ {
2989+ ProjectType : projecttype .PackageIndex ,
2990+ SuperprojectType : projecttype .All ,
2991+ Category : "data" ,
2992+ Subcategory : "package" ,
2993+ ID : "IA004" ,
2994+ Brief : "packages[].name missing" ,
2995+ Description : "" ,
2996+ MessageTemplate : "Missing packages[].name property in package(s): {{.}}" ,
2997+ DisableModes : nil ,
2998+ EnableModes : []rulemode.Type {rulemode .Default },
2999+ InfoModes : nil ,
3000+ WarningModes : nil ,
3001+ ErrorModes : []rulemode.Type {rulemode .Default },
3002+ RuleFunction : rulefunction .PackageIndexPackagesNameMissing ,
3003+ },
3004+ {
3005+ ProjectType : projecttype .PackageIndex ,
3006+ SuperprojectType : projecttype .All ,
3007+ Category : "data" ,
3008+ Subcategory : "package" ,
3009+ ID : "IA005" ,
3010+ Brief : "Incorrect packages[].name type" ,
3011+ Description : "The name value must be a string." ,
3012+ MessageTemplate : "packages[].name property has incorrect type in package(s): {{.}}" ,
3013+ DisableModes : nil ,
3014+ EnableModes : []rulemode.Type {rulemode .Default },
3015+ InfoModes : nil ,
3016+ WarningModes : nil ,
3017+ ErrorModes : []rulemode.Type {rulemode .Default },
3018+ RuleFunction : rulefunction .PackageIndexPackagesNameIncorrectType ,
3019+ },
3020+ {
3021+ ProjectType : projecttype .PackageIndex ,
3022+ SuperprojectType : projecttype .All ,
3023+ Category : "data" ,
3024+ Subcategory : "package" ,
3025+ ID : "IA006" ,
3026+ Brief : "packages[].name < min length" ,
3027+ Description : "" ,
3028+ MessageTemplate : "packages[].name value less than the minimum length in package(s): {{.}}" ,
3029+ DisableModes : nil ,
3030+ EnableModes : []rulemode.Type {rulemode .Default },
3031+ InfoModes : nil ,
3032+ WarningModes : nil ,
3033+ ErrorModes : []rulemode.Type {rulemode .Default },
3034+ RuleFunction : rulefunction .PackageIndexPackagesNameLTMinLength ,
3035+ },
3036+ {
3037+ ProjectType : projecttype .PackageIndex ,
3038+ SuperprojectType : projecttype .All ,
3039+ Category : "data" ,
3040+ Subcategory : "package" ,
3041+ ID : "IA007" ,
3042+ Brief : "packages[].name is arduino" ,
3043+ Description : "Case insensitive." ,
3044+ MessageTemplate : "packages[].name value is \" arduino\" in package {{.}}. This name is reserved for official packages." ,
3045+ DisableModes : []rulemode.Type {rulemode .Official },
3046+ EnableModes : []rulemode.Type {rulemode .Default },
3047+ InfoModes : nil ,
3048+ WarningModes : []rulemode.Type {rulemode .Permissive },
3049+ ErrorModes : []rulemode.Type {rulemode .Default },
3050+ RuleFunction : rulefunction .PackageIndexPackagesNameIsArduino ,
3051+ },
3052+ {
3053+ ProjectType : projecttype .PackageIndex ,
3054+ SuperprojectType : projecttype .All ,
3055+ Category : "data" ,
3056+ Subcategory : "package" ,
3057+ ID : "IA008" ,
3058+ Brief : "packages[].maintainer missing" ,
3059+ Description : "" ,
3060+ MessageTemplate : "Missing packages[].maintainer property in package(s): {{.}}" ,
3061+ DisableModes : nil ,
3062+ EnableModes : []rulemode.Type {rulemode .Default },
3063+ InfoModes : nil ,
3064+ WarningModes : nil ,
3065+ ErrorModes : []rulemode.Type {rulemode .Default },
3066+ RuleFunction : rulefunction .PackageIndexPackagesMaintainerMissing ,
3067+ },
3068+ {
3069+ ProjectType : projecttype .PackageIndex ,
3070+ SuperprojectType : projecttype .All ,
3071+ Category : "data" ,
3072+ Subcategory : "package" ,
3073+ ID : "IA009" ,
3074+ Brief : "Incorrect packages[].maintainer type" ,
3075+ Description : "The maintainer value must be a string." ,
3076+ MessageTemplate : "packages[].maintainer property has incorrect type in package(s): {{.}}" ,
3077+ DisableModes : nil ,
3078+ EnableModes : []rulemode.Type {rulemode .Default },
3079+ InfoModes : nil ,
3080+ WarningModes : nil ,
3081+ ErrorModes : []rulemode.Type {rulemode .Default },
3082+ RuleFunction : rulefunction .PackageIndexPackagesMaintainerIncorrectType ,
3083+ },
3084+ {
3085+ ProjectType : projecttype .PackageIndex ,
3086+ SuperprojectType : projecttype .All ,
3087+ Category : "data" ,
3088+ Subcategory : "package" ,
3089+ ID : "IA010" ,
3090+ Brief : "packages[].maintainer < min length" ,
3091+ Description : "" ,
3092+ MessageTemplate : "packages[].maintainer value less than the minimum length in package(s): {{.}}" ,
3093+ DisableModes : nil ,
3094+ EnableModes : []rulemode.Type {rulemode .Default },
3095+ InfoModes : nil ,
3096+ WarningModes : nil ,
3097+ ErrorModes : []rulemode.Type {rulemode .Default },
3098+ RuleFunction : rulefunction .PackageIndexPackagesMaintainerLTMinLength ,
3099+ },
3100+ {
3101+ ProjectType : projecttype .PackageIndex ,
3102+ SuperprojectType : projecttype .All ,
3103+ Category : "data" ,
3104+ Subcategory : "package" ,
3105+ ID : "IA011" ,
3106+ Brief : "packages[].maintainer starts with \" arduino\" " ,
3107+ Description : "Case insensitive." ,
3108+ MessageTemplate : "packages[].maintainer value starts with \" arduino\" in package(s): {{.}}. 3rd party packages are not maintained by Arduino." ,
3109+ DisableModes : []rulemode.Type {rulemode .Official },
3110+ EnableModes : []rulemode.Type {rulemode .Default },
3111+ InfoModes : nil ,
3112+ WarningModes : []rulemode.Type {rulemode .Default },
3113+ ErrorModes : []rulemode.Type {rulemode .Strict },
3114+ RuleFunction : rulefunction .PackageIndexPackagesMaintainerStartsWithArduino ,
3115+ },
3116+ {
3117+ ProjectType : projecttype .PackageIndex ,
3118+ SuperprojectType : projecttype .All ,
3119+ Category : "data" ,
3120+ Subcategory : "package" ,
3121+ ID : "IA012" ,
3122+ Brief : "packages[].websiteURL missing" ,
3123+ Description : "" ,
3124+ MessageTemplate : "Missing packages[].websiteURL property in package(s): {{.}}" ,
3125+ DisableModes : nil ,
3126+ EnableModes : []rulemode.Type {rulemode .Default },
3127+ InfoModes : nil ,
3128+ WarningModes : nil ,
3129+ ErrorModes : []rulemode.Type {rulemode .Default },
3130+ RuleFunction : rulefunction .PackageIndexPackagesWebsiteURLMissing ,
3131+ },
3132+ {
3133+ ProjectType : projecttype .PackageIndex ,
3134+ SuperprojectType : projecttype .All ,
3135+ Category : "data" ,
3136+ Subcategory : "package" ,
3137+ ID : "IA013" ,
3138+ Brief : "Incorrect packages[].websiteURL type" ,
3139+ Description : "Must be a string." ,
3140+ MessageTemplate : "packages[].websiteURL property has incorrect type in package(s): {{.}}" ,
3141+ DisableModes : nil ,
3142+ EnableModes : []rulemode.Type {rulemode .Default },
3143+ InfoModes : nil ,
3144+ WarningModes : nil ,
3145+ ErrorModes : []rulemode.Type {rulemode .Default },
3146+ RuleFunction : rulefunction .PackageIndexPackagesWebsiteURLIncorrectType ,
3147+ },
3148+ {
3149+ ProjectType : projecttype .PackageIndex ,
3150+ SuperprojectType : projecttype .All ,
3151+ Category : "data" ,
3152+ Subcategory : "package" ,
3153+ ID : "IA014" ,
3154+ Brief : "Invalid packages[].websiteURL format" ,
3155+ Description : "" ,
3156+ MessageTemplate : "packages[].websiteURL property does not have a valid URL format in package(s): {{.}}" ,
3157+ DisableModes : nil ,
3158+ EnableModes : []rulemode.Type {rulemode .Default },
3159+ InfoModes : nil ,
3160+ WarningModes : nil ,
3161+ ErrorModes : []rulemode.Type {rulemode .Default },
3162+ RuleFunction : rulefunction .PackageIndexPackagesWebsiteURLInvalidFormat ,
3163+ },
3164+ {
3165+ ProjectType : projecttype .PackageIndex ,
3166+ SuperprojectType : projecttype .All ,
3167+ Category : "data" ,
3168+ Subcategory : "package" ,
3169+ ID : "IA015" ,
29303170 Brief : "dead packages[].websiteURL" ,
29313171 Description : "" ,
29323172 MessageTemplate : "Unable to load the packages[].websiteURL URL for package(s): {{.}}" ,
@@ -2942,7 +3182,119 @@ var configurations = []Type{
29423182 SuperprojectType : projecttype .All ,
29433183 Category : "data" ,
29443184 Subcategory : "package" ,
2945- ID : "ID004" ,
3185+ ID : "IA016" ,
3186+ Brief : "packages[].email missing" ,
3187+ Description : "" ,
3188+ MessageTemplate : "Missing packages[].email property in package(s): {{.}}" ,
3189+ DisableModes : nil ,
3190+ EnableModes : []rulemode.Type {rulemode .Default },
3191+ InfoModes : nil ,
3192+ WarningModes : nil ,
3193+ ErrorModes : []rulemode.Type {rulemode .Default },
3194+ RuleFunction : rulefunction .PackageIndexPackagesEmailMissing ,
3195+ },
3196+ {
3197+ ProjectType : projecttype .PackageIndex ,
3198+ SuperprojectType : projecttype .All ,
3199+ Category : "data" ,
3200+ Subcategory : "package" ,
3201+ ID : "IA017" ,
3202+ Brief : "Incorrect packages[].email type" ,
3203+ Description : "Must be a string." ,
3204+ MessageTemplate : "packages[].email property has incorrect type in package(s): {{.}}" ,
3205+ DisableModes : nil ,
3206+ EnableModes : []rulemode.Type {rulemode .Default },
3207+ InfoModes : nil ,
3208+ WarningModes : nil ,
3209+ ErrorModes : []rulemode.Type {rulemode .Default },
3210+ RuleFunction : rulefunction .PackageIndexPackagesEmailIncorrectType ,
3211+ },
3212+ {
3213+ ProjectType : projecttype .PackageIndex ,
3214+ SuperprojectType : projecttype .All ,
3215+ Category : "data" ,
3216+ Subcategory : "package" ,
3217+ ID : "IA018" ,
3218+ Brief : "Incorrect packages[].help type" ,
3219+ Description : "Must be a string." ,
3220+ MessageTemplate : "packages[].help property has incorrect type in package(s): {{.}}" ,
3221+ DisableModes : nil ,
3222+ EnableModes : []rulemode.Type {rulemode .Default },
3223+ InfoModes : nil ,
3224+ WarningModes : nil ,
3225+ ErrorModes : []rulemode.Type {rulemode .Default },
3226+ RuleFunction : rulefunction .PackageIndexPackagesHelpIncorrectType ,
3227+ },
3228+ {
3229+ ProjectType : projecttype .PackageIndex ,
3230+ SuperprojectType : projecttype .All ,
3231+ Category : "data" ,
3232+ Subcategory : "root" ,
3233+ ID : "IA019" ,
3234+ Brief : "Additional properties in packages[].help" ,
3235+ Description : "" ,
3236+ MessageTemplate : "Unknown properties under packages[].help found in package(s): {{.}}" ,
3237+ DisableModes : nil ,
3238+ EnableModes : []rulemode.Type {rulemode .Default },
3239+ InfoModes : nil ,
3240+ WarningModes : nil ,
3241+ ErrorModes : []rulemode.Type {rulemode .Default },
3242+ RuleFunction : rulefunction .PackageIndexPackagesHelpAdditionalProperties ,
3243+ },
3244+ {
3245+ ProjectType : projecttype .PackageIndex ,
3246+ SuperprojectType : projecttype .All ,
3247+ Category : "data" ,
3248+ Subcategory : "package" ,
3249+ ID : "IA020" ,
3250+ Brief : "packages[].help.online missing" ,
3251+ Description : "" ,
3252+ MessageTemplate : "Missing packages[].help.online property in package(s): {{.}}" ,
3253+ DisableModes : nil ,
3254+ EnableModes : []rulemode.Type {rulemode .Default },
3255+ InfoModes : nil ,
3256+ WarningModes : nil ,
3257+ ErrorModes : []rulemode.Type {rulemode .Default },
3258+ RuleFunction : rulefunction .PackageIndexPackagesHelpOnlineMissing ,
3259+ },
3260+ {
3261+ ProjectType : projecttype .PackageIndex ,
3262+ SuperprojectType : projecttype .All ,
3263+ Category : "data" ,
3264+ Subcategory : "package" ,
3265+ ID : "IA021" ,
3266+ Brief : "Incorrect packages[].help.online type" ,
3267+ Description : "Must be a string." ,
3268+ MessageTemplate : "packages[].help.online property has incorrect type in package(s): {{.}}" ,
3269+ DisableModes : nil ,
3270+ EnableModes : []rulemode.Type {rulemode .Default },
3271+ InfoModes : nil ,
3272+ WarningModes : nil ,
3273+ ErrorModes : []rulemode.Type {rulemode .Default },
3274+ RuleFunction : rulefunction .PackageIndexPackagesHelpOnlineIncorrectType ,
3275+ },
3276+ {
3277+ ProjectType : projecttype .PackageIndex ,
3278+ SuperprojectType : projecttype .All ,
3279+ Category : "data" ,
3280+ Subcategory : "package" ,
3281+ ID : "IA022" ,
3282+ Brief : "Invalid packages[].help.online format" ,
3283+ Description : "" ,
3284+ MessageTemplate : "packages[].help.online property does not have a valid URL format in package(s): {{.}}" ,
3285+ DisableModes : nil ,
3286+ EnableModes : []rulemode.Type {rulemode .Default },
3287+ InfoModes : nil ,
3288+ WarningModes : nil ,
3289+ ErrorModes : []rulemode.Type {rulemode .Default },
3290+ RuleFunction : rulefunction .PackageIndexPackagesHelpOnlineInvalidFormat ,
3291+ },
3292+ {
3293+ ProjectType : projecttype .PackageIndex ,
3294+ SuperprojectType : projecttype .All ,
3295+ Category : "data" ,
3296+ Subcategory : "package" ,
3297+ ID : "IA023" ,
29463298 Brief : "dead packages[].help.online" ,
29473299 Description : "" ,
29483300 MessageTemplate : "Unable to load the packages[].help.online URL for package(s): {{.}}" ,
0 commit comments