{"id":428,"date":"2019-11-06T07:29:45","date_gmt":"2019-11-06T07:29:45","guid":{"rendered":"https:\/\/sdf-docs.mansystems.com\/docs\/acr\/how-to-use-acr\/find-potential-bugs\/"},"modified":"2022-05-25T13:16:14","modified_gmt":"2022-05-25T13:16:14","slug":"find-potential-bugs","status":"publish","type":"docs","link":"https:\/\/sdf-docs.clevr.com\/?docs=acr\/how-to-use-acr\/find-potential-bugs","title":{"rendered":"Find potential bugs"},"content":{"rendered":"\n<h4 class=\"wp-block-heading\">Many rules in ACR detect either wrong code, or code that is more likely to result in bugs or other problems. <\/h4>\n\n\n\n<p>ACR is a static analysis tool that scans your Mendix model and compares it against a database of rules based on Mendix best practices and other developer guidelines. It then reports when a rule is violated. These violations are grouped into categories that helps you find bugs, code smells, and security vulnerabilities.<\/p>\n\n\n\n<p><strong>Bugs<\/strong><\/p>\n\n\n\n<p>Violations that fall under the <em>Reliability<\/em> category often point to buggy code. Buggy code is code that is likely not working as intended. For example, referring to the <code>currentUser<\/code> in a system process will result in an error during runtime.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"485\" src=\"https:\/\/sdf-docs.clevr.com\/wp-content\/uploads\/2022\/05\/image-117-1024x485.png\" alt=\"\" class=\"wp-image-2743\" srcset=\"https:\/\/sdf-docs.clevr.com\/wp-content\/uploads\/2022\/05\/image-117-980x464.png 980w, https:\/\/sdf-docs.clevr.com\/wp-content\/uploads\/2022\/05\/image-117-480x227.png 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw\" \/><\/figure>\n\n\n\n<p><strong>Code smells<\/strong><\/p>\n\n\n\n<p>Smelly code probably does what it should, but it is hard to maintain. As new features are built, smelly code tends to develop into real issues. Violations in the <em>Maintainability<\/em> category point to different code smells such as large microflows or entities.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"584\" src=\"https:\/\/sdf-docs.clevr.com\/wp-content\/uploads\/2022\/05\/image-118-1024x584.png\" alt=\"\" class=\"wp-image-2745\" srcset=\"https:\/\/sdf-docs.clevr.com\/wp-content\/uploads\/2022\/05\/image-118-980x559.png 980w, https:\/\/sdf-docs.clevr.com\/wp-content\/uploads\/2022\/05\/image-118-480x274.png 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw\" \/><\/figure>\n\n\n\n<p><strong>Security vulnerabilities<\/strong><\/p>\n\n\n\n<p>See detailed descriptions of potential security vulnerabilities in your project. By fixing the <em>Security<\/em> violations you can secure your app and it&#8217;s data.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"621\" src=\"https:\/\/sdf-docs.clevr.com\/wp-content\/uploads\/2022\/05\/image-119-1024x621.png\" alt=\"\" class=\"wp-image-2746\" srcset=\"https:\/\/sdf-docs.clevr.com\/wp-content\/uploads\/2022\/05\/image-119-980x594.png 980w, https:\/\/sdf-docs.clevr.com\/wp-content\/uploads\/2022\/05\/image-119-480x291.png 480w\" sizes=\"(min-width: 0px) and (max-width: 480px) 480px, (min-width: 481px) and (max-width: 980px) 980px, (min-width: 981px) 1024px, 100vw\" \/><\/figure>\n","protected":false},"featured_media":0,"parent":418,"menu_order":0,"comment_status":"open","ping_status":"closed","template":"","doc_tag":[],"class_list":["post-428","docs","type-docs","status-publish","hentry"],"comment_count":0,"_links":{"self":[{"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=\/wp\/v2\/docs\/428"}],"collection":[{"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=\/wp\/v2\/docs"}],"about":[{"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=\/wp\/v2\/types\/docs"}],"replies":[{"embeddable":true,"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=428"}],"version-history":[{"count":3,"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=\/wp\/v2\/docs\/428\/revisions"}],"predecessor-version":[{"id":2747,"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=\/wp\/v2\/docs\/428\/revisions\/2747"}],"up":[{"embeddable":true,"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=\/wp\/v2\/docs\/418"}],"next":[{"title":"Highlight hot spots","link":"https:\/\/sdf-docs.clevr.com\/?docs=acr\/how-to-use-acr\/highlight-hot-spots","href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=\/wp\/v2\/docs\/434"}],"wp:attachment":[{"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=428"}],"wp:term":[{"taxonomy":"doc_tag","embeddable":true,"href":"https:\/\/sdf-docs.clevr.com\/index.php?rest_route=%2Fwp%2Fv2%2Fdoc_tag&post=428"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}