59
We have a lot of PTE's that all have a ruleset file in their workspace.
Now and then the AL Language extension gets an update that adds new rules, sometimes adding hundreds of new warnings the next time a developer needs to update the app. This would cause quite a lot extra work if everything would need to be handled right away, even if you were about to only do a small change. So now all developers have to decide whether or not to fix a problem right away, or skipping it through the ruleset file. Some problems are ok to skip forever in an existing, but some must be handled in the upcoming major or so, making it a challenge for all to do the proper decisions and also be sure that nothing being missed moving forward.
We also have quite a few AppSource apps that has similar challenges with rules, but now with AppSourceCop rules. And now that https://bcartifacts.azureedge.net/rulesets/appsource.default.ruleset.json is published we've got a list of rules that could be omitted.
We need a way to handle warnings in a centralized and efficient way and was thinking about the includeRuleSets property in the ruleset file (https://docs.microsoft.com/en-us/dynamics365/business-central/dev-itpro/developer/devenv-rule-set-syntax-for-code-analysis-tools) to somehow have one company wide ruleset file where we can handle this in one place.
But the big issue with includeRuleSets is that it only support file paths, making it quite impossible to make use of in an efficient way.
Now to the suggestion: implement support for URLs in includeRuleSets!
In that way we could use https://bcartifacts.azureedge.net/rulesets/appsource.default.ruleset.json for AppSource apps and publish our own centralized ruleset somewhere and have one place to update instead of hundreds!
References:
https://www.yammer.com/dynamicsnavdev/#/Threads/show?threadId=898650889617408
https://www.yammer.com/dynamicsnavdev/#/Threads/show?threadId=990943319785472
Now and then the AL Language extension gets an update that adds new rules, sometimes adding hundreds of new warnings the next time a developer needs to update the app. This would cause quite a lot extra work if everything would need to be handled right away, even if you were about to only do a small change. So now all developers have to decide whether or not to fix a problem right away, or skipping it through the ruleset file. Some problems are ok to skip forever in an existing, but some must be handled in the upcoming major or so, making it a challenge for all to do the proper decisions and also be sure that nothing being missed moving forward.
We also have quite a few AppSource apps that has similar challenges with rules, but now with AppSourceCop rules. And now that https://bcartifacts.azureedge.net/rulesets/appsource.default.ruleset.json is published we've got a list of rules that could be omitted.
We need a way to handle warnings in a centralized and efficient way and was thinking about the includeRuleSets property in the ruleset file (https://docs.microsoft.com/en-us/dynamics365/business-central/dev-itpro/developer/devenv-rule-set-syntax-for-code-analysis-tools) to somehow have one company wide ruleset file where we can handle this in one place.
But the big issue with includeRuleSets is that it only support file paths, making it quite impossible to make use of in an efficient way.
Now to the suggestion: implement support for URLs in includeRuleSets!
In that way we could use https://bcartifacts.azureedge.net/rulesets/appsource.default.ruleset.json for AppSource apps and publish our own centralized ruleset somewhere and have one place to update instead of hundreds!
References:
https://www.yammer.com/dynamicsnavdev/#/Threads/show?threadId=898650889617408
https://www.yammer.com/dynamicsnavdev/#/Threads/show?threadId=990943319785472
STATUS DETAILS
Planned
2023 Release Wave 1
Business Central Team (administrator)