Describe the bug
The architecture rule architecture_025 doesn't have a solution. This leads to a Traceback error when JUnit or code quality reporting is enabled.
Terminal output without JUnit or code quality reporting:
$ vsg -c my_rule.yaml -f testfile.vhd
================================================================================
File: testfile.vhd
================================================================================
Phase 7 of 7... Reporting
Total Rules Checked: 717
Total Violations: 1
Error : 1
Warning : 0
----------------------------+------------+------------+--------------------------------------
Rule | severity | line(s) | Solution
----------------------------+------------+------------+--------------------------------------
architecture_025 | Error | 8 | None
----------------------------+------------+------------+--------------------------------------
NOTE: Refer to online documentation at https://vhdl-style-guide.readthedocs.io/en/latest/index.html for more information.
Terminal output with JUnit and code quality reporting:
$ vsg -c my_rule.yaml -f testfile.vhd --junit junit.xml --quality_report quality_report.json
multiprocessing.pool.RemoteTraceback:
"""
Traceback (most recent call last):
File "/usr/local/lib/python3.6/multiprocessing/pool.py", line 119, in worker
result = (True, func(*args, **kwds))
File "/home/my_user/.local/lib/python3.6/site-packages/vsg/apply_rules.py", line 121, in apply_rules
testCase = oRules.extract_junit_testcase(sFileName)
File "/home/my_user/.local/lib/python3.6/site-packages/vsg/rule_list.py", line 350, in extract_junit_testcase
sLine += dViolation.get_solution()
TypeError: must be str, not NoneType
"""
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/home/my_user/.local/bin/vsg", line 8, in <module>
sys.exit(main())
File "/home/my_user/.local/lib/python3.6/site-packages/vsg/__main__.py", line 142, in main
for tResult in pool.imap(f, enumerate(commandLineArguments.filename)):
File "/usr/local/lib/python3.6/multiprocessing/pool.py", line 699, in next
raise value
TypeError: must be str, not NoneType
To Reproduce
Steps to reproduce the behavior:
use following my_rule.yaml file:
Environment Version 3.15.0 OS: CentOS
Describe the bug The architecture rule
architecture_025
doesn't have a solution. This leads to a Traceback error when JUnit or code quality reporting is enabled.Terminal output without JUnit or code quality reporting:
Terminal output with JUnit and code quality reporting:
To Reproduce Steps to reproduce the behavior: use following
my_rule.yaml
file:and following VHDL file,
testfile.vhd
:Expected behavior I expect following message as a solution: "Architecture identifier must be from this list: arch"
This message should be generated by
_get_solution()
but somehow this function is not called.