Purpose: to find runtime errors and warnings, including warnings from things like ti-api-deprecation-finder Goals/Features:
- Fast runs
- Report errors and warnings only. No other information should be reported
- This information will be reported in the "problems" tab in studio
- Single profile/set of options for all runs Profile:
- Options:
- invokeMethods = false
- evaluateLoops = false
- logConsoleCalls = false
- processUnvisitedCode = true
- Plugins w/ their options:
- common-globals
- require-provider
- platform
- modules
- ti-api-processor
- platform
- sdkPath
- ti-api-deprecation-finder
- ti-api-platform-validator
- platform
Purpose: To allow users to investigate their projects using any/all available features of the code processor Goals/Features:
- Provide a set of "use cases", such as "API usage", "Platform portability" (a.k.a. port score), "Find Problems" (as in automatic runs)
- Defines which plugins to use
- Each "use case" should have "profiles", a.k.a. "process everything", "process accurately", etc
- Each profile will be a collection of options
- Use cases and profiles should be configurable
- Users should be able to create new use cases and profiles
- Output varies
- There will be information reported in the "problems" tab, as in automatic runs
- There will be other information to report via an HTML page (Path to results html file is set in plugin configuration)
- There will be annotated code to show (v3.2, not necessary to implement now)
###Use cases
- API usage - High Speed, Low Accuracy, High Coverage
- common-globals
- require-provider
- platform
- ti-api-processor
- SDK path
- platform
- ti-api-usage-finder
- Find Problems (Fast) - High Speed, Low Accuracy, High Coverage
- common-globals
- require-provider
- platform
- ti-api-processor
- SDK path
- platform
- ti-api-platform-validator
- ti-api-deprecation-finder
- Find Problems (Slow) - Low Speed, Medium Accuracy, High Coverage
- common-globals
- require-provider
- platform
- ti-api-processor
- SDK path
- platform
- ti-api-platform-validator
- platform
- ti-api-deprecation-finder
- Project score - Medium Speed, High Accuracy, Low Coverage
- common-globals
- require-provider
- platform
- ti-api-processor
- SDK path
- platform
- ti-api-project-score
###Profiles
- High Speed, Low Accuracy, High Coverage
- invokeMethods = false
- evaluateLoops = false
- maxLoopIterations = 1000000 (default)
- maxRecursionLimit = 1000 (default)
- logConsoleCalls = false
- nativeExceptionRecovery = true (default)
- executionTimeLimit = 0 (default)
- exactMode = false (default)
- processUnvisitedCode = true
- Medium Speed, High Accuracy, Low Coverage
- invokeMethods = true (default)
- evaluateLoops = true (default)
- maxLoopIterations = 1000000 (default)
- maxRecursionLimit = 1000 (default)
- logConsoleCalls = false
- nativeExceptionRecovery = true (default)
- executionTimeLimit = 0 (default)
- exactMode = false (default)
- processUnvisitedCode = false (default)
- Low Speed, Medium Accuracy, High Coverage
- invokeMethods = true (default)
- evaluateLoops = true (default)
- maxLoopIterations = 1000000 (default)
- maxRecursionLimit = 1000 (default)
- logConsoleCalls = false
- nativeExceptionRecovery = true (default)
- executionTimeLimit = 0 (default)
- exactMode = false (default)
- processUnvisitedCode = true
{
"errors": [],
"warnings": [],
"resultsPath": ""
"plugins": {
"ti-api-project-score": {
}
}
}