intersystems / intersystems/git-source-control
Exceptions opening Analytics Architect
- Dominant language
- ObjectScript
- Stars
- 22
- Forks
- 14
- Avg merge
- 1d 9h
- Merged PRs (30d)
- 5
Description
So far, no one has created any analytics cubes yet in our system. When I opened the architect for the first time, I saw this exception:
> Error invoking Source Control: ERROR #5002 ObjectScript error: IsProductionClass+1^SourceControl.Git.Production *(No name)
IsProductionClass() does not have any null input safety checks:
```ObjectScript
SHCDF>zw $system.CLS.IsMthd("", "%Extends")
ZW $SYSTEM.CLS.IsMthd("", "%Extends")
^
*(No name)
```
I would think this function should return 0-false if `className` is blank:
```ObjectScript
ClassMethod IsProductionClass(className As %String, nameMethod As %String) As %Boolean
{
quit:(className = "") 0
if $system.CLS.IsMthd(className, "%Extends") {
try {
return $classmethod(className, "%Extends", "Ens.Production")
} catch err {
if '(err.AsStatus() [ "CLASS DOES NOT EXIST") throw err
}
} else {
```
While I was reading the code where this gets called from, I also noticed that `Git.Utils.Type()` also has weird behavior when it's input is blank:
```ObjectScript
SHCDF>zw ##class(SourceControl.Git.Utils).Type("")
"csp"
```
It should probably return `""`, though I did not analyze the implication of this.
Contributor guide
Assessment
This issue has not been assessed yet.