OpenJij/cimod

View on GitHub

Showing 247 of 247 total issues

Avoid too many return statements within this function.
Open

                    return super().get_polynomial(*args, **kwargs)
Severity: Major
Found in cimod/model/binary_polynomial_model.py - About 30 mins to fix

    Avoid too many return statements within this function.
    Open

                        return super().get_polynomial(args)
    Severity: Major
    Found in cimod/model/binary_polynomial_model.py - About 30 mins to fix

      Avoid too many return statements within this function.
      Open

                          return _BinaryPolynomialModel_from_dict(
      Severity: Major
      Found in cimod/model/binary_polynomial_model.py - About 30 mins to fix

        Avoid too many return statements within this function.
        Open

                            return super().remove_interactions_from(*args, **kwargs)
        Severity: Major
        Found in cimod/model/binary_polynomial_model.py - About 30 mins to fix

          Avoid too many return statements within this function.
          Open

                          return _BinaryPolynomialModel_from_list(
          Severity: Major
          Found in cimod/model/binary_polynomial_model.py - About 30 mins to fix

            Avoid too many return statements within this function.
            Open

                                return super().remove_interaction(args)
            Severity: Major
            Found in cimod/model/binary_polynomial_model.py - About 30 mins to fix

              Avoid too many return statements within this function.
              Open

                              return cxxcimod.BinaryPolynomialModel_tuple4, "IndexType.INT_TUPLE_4"
              Severity: Major
              Found in cimod/model/binary_polynomial_model.py - About 30 mins to fix

                Function BinaryQuadraticModel has a Cognitive Complexity of 6 (exceeds 5 allowed). Consider refactoring.
                Open

                def BinaryQuadraticModel(linear, quadratic, *args, **kwargs):
                    Model = make_BinaryQuadraticModel(linear, quadratic)
                
                    if len(args) == 2:
                        [offset, vartype] = args
                Severity: Minor
                Found in cimod/model/legacy/binary_quadratic_model.py - About 25 mins to fix

                Cognitive Complexity

                Cognitive Complexity is a measure of how difficult a unit of code is to intuitively understand. Unlike Cyclomatic Complexity, which determines how difficult your code will be to test, Cognitive Complexity tells you how difficult your code will be to read and comprehend.

                A method's cognitive complexity is based on a few simple rules:

                • Code is not considered more complex when it uses shorthand that the language provides for collapsing multiple statements into one
                • Code is considered more complex for each "break in the linear flow of the code"
                • Code is considered more complex when "flow breaking structures are nested"

                Further reading

                Trailing spaces
                Open

                # From Source 
                Severity: Info
                Found in README.md by markdownlint

                MD009 - Trailing spaces

                Tags: whitespace

                Aliases: no-trailing-spaces

                Parameters: br_spaces (number; default: 0)

                This rule is triggered on any lines that end with whitespace. To fix this, find the line that is triggered and remove any trailing spaces from the end.

                The brspaces parameter allows an exception to this rule for a specific amount of trailing spaces used to insert an explicit line break/br element. For example, set brspaces to 2 to allow exactly 2 spaces at the end of a line.

                Note: you have to set brspaces to 2 or higher for this exception to take effect - you can't insert a br element with just a single trailing space, so if you set brspaces to 1, the exception will be disabled, just as if it was set to the default of 0.

                Line length
                Open

                | **Sunburst**                                                                                                                                                     | **Grid**                                                                                                                                                     | **Icicle**                                                                                                                                                     |
                Severity: Info
                Found in README.md by markdownlint

                MD013 - Line length

                Tags: line_length

                Aliases: line-length Parameters: linelength, codeblocks, tables (number; default 80, boolean; default true)

                This rule is triggered when there are lines that are longer than the configured line length (default: 80 characters). To fix this, split the line up into multiple lines.

                This rule has an exception where there is no whitespace beyond the configured line length. This allows you to still include items such as long URLs without being forced to break them in the middle.

                You also have the option to exclude this rule for code blocks and tables. To do this, set the code_blocks and/or tables parameters to false.

                Code blocks are included in this rule by default since it is often a requirement for document readability, and tentatively compatible with code rules. Still, some languages do not lend themselves to short lines.

                Line length
                Open

                | ---------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------------- |
                Severity: Info
                Found in README.md by markdownlint

                MD013 - Line length

                Tags: line_length

                Aliases: line-length Parameters: linelength, codeblocks, tables (number; default 80, boolean; default true)

                This rule is triggered when there are lines that are longer than the configured line length (default: 80 characters). To fix this, split the line up into multiple lines.

                This rule has an exception where there is no whitespace beyond the configured line length. This allows you to still include items such as long URLs without being forced to break them in the middle.

                You also have the option to exclude this rule for code blocks and tables. To do this, set the code_blocks and/or tables parameters to false.

                Code blocks are included in this rule by default since it is often a requirement for document readability, and tentatively compatible with code rules. Still, some languages do not lend themselves to short lines.

                Trailing spaces
                Open

                # pipx install pre-commit 
                Severity: Info
                Found in docs/index.md by markdownlint

                MD009 - Trailing spaces

                Tags: whitespace

                Aliases: no-trailing-spaces

                Parameters: br_spaces (number; default: 0)

                This rule is triggered on any lines that end with whitespace. To fix this, find the line that is triggered and remove any trailing spaces from the end.

                The brspaces parameter allows an exception to this rule for a specific amount of trailing spaces used to insert an explicit line break/br element. For example, set brspaces to 2 to allow exactly 2 spaces at the end of a line.

                Note: you have to set brspaces to 2 or higher for this exception to take effect - you can't insert a br element with just a single trailing space, so if you set brspaces to 1, the exception will be disabled, just as if it was set to the default of 0.

                Dollar signs used before commands without showing output
                Open

                ```sh
                Severity: Info
                Found in docs/index.md by markdownlint

                MD014 - Dollar signs used before commands without showing output

                Tags: code

                Aliases: commands-show-output

                This rule is triggered when there are code blocks showing shell commands to be typed, and the shell commands are preceded by dollar signs ($):

                $ ls
                $ cat foo
                $ less bar

                The dollar signs are unnecessary in the above situation, and should not be included:

                ls
                cat foo
                less bar

                However, an exception is made when there is a need to distinguish between typed commands and command output, as in the following example:

                $ ls
                foo bar
                $ cat foo
                Hello world
                $ cat bar
                baz

                Rationale: it is easier to copy and paste and less noisy if the dollar signs are omitted when they are not needed. See http://www.cirosantilli.com/markdown-styleguide/#dollar-signs-in-shell-code for more information.

                Multiple imports on one line
                Open

                import cimod.cxxcimod, dimod
                Severity: Minor
                Found in cimod/vartype.py by pep8

                Place imports on separate lines.

                Okay: import os\nimport sys
                E401: import sys, os
                
                Okay: from subprocess import Popen, PIPE
                Okay: from myclas import MyClass
                Okay: from foo.bar.yourclass import YourClass
                Okay: import myclass
                Okay: import foo.bar.yourclass

                Line too long (80 > 79 characters)
                Open

                                            kwargs["polynomial"], to_cxxcimod(kwargs["vartype"])
                Severity: Minor
                Found in cimod/model/binary_polynomial_model.py by pep8

                Limit all lines to a maximum of 79 characters.

                There are still many devices around that are limited to 80 character
                lines; plus, limiting windows to 80 characters makes it possible to
                have several windows side-by-side.  The default wrapping on such
                devices looks ugly.  Therefore, please limit all lines to a maximum
                of 79 characters. For flowing long blocks of text (docstrings or
                comments), limiting the length to 72 characters is recommended.
                
                Reports error E501.

                Line too long (85 > 79 characters)
                Open

                                    return Model(self.get_key_list(), self.get_value_list(), vartype)
                Severity: Minor
                Found in cimod/model/binary_polynomial_model.py by pep8

                Limit all lines to a maximum of 79 characters.

                There are still many devices around that are limited to 80 character
                lines; plus, limiting windows to 80 characters makes it possible to
                have several windows side-by-side.  The default wrapping on such
                devices looks ugly.  Therefore, please limit all lines to a maximum
                of 79 characters. For flowing long blocks of text (docstrings or
                comments), limiting the length to 72 characters is recommended.
                
                Reports error E501.

                Line too long (88 > 79 characters)
                Open

                                return _make_BinaryPolynomialModel_from_hubo_from_list(args[0], args[1])
                Severity: Minor
                Found in cimod/model/binary_polynomial_model.py by pep8

                Limit all lines to a maximum of 79 characters.

                There are still many devices around that are limited to 80 character
                lines; plus, limiting windows to 80 characters makes it possible to
                have several windows side-by-side.  The default wrapping on such
                devices looks ugly.  Therefore, please limit all lines to a maximum
                of 79 characters. For flowing long blocks of text (docstrings or
                comments), limiting the length to 72 characters is recommended.
                
                Reports error E501.

                Trailing spaces
                Open

                 http://www.apache.org/licenses/LICENSE-2.0  
                Severity: Info
                Found in README.md by markdownlint

                MD009 - Trailing spaces

                Tags: whitespace

                Aliases: no-trailing-spaces

                Parameters: br_spaces (number; default: 0)

                This rule is triggered on any lines that end with whitespace. To fix this, find the line that is triggered and remove any trailing spaces from the end.

                The brspaces parameter allows an exception to this rule for a specific amount of trailing spaces used to insert an explicit line break/br element. For example, set brspaces to 2 to allow exactly 2 spaces at the end of a line.

                Note: you have to set brspaces to 2 or higher for this exception to take effect - you can't insert a br element with just a single trailing space, so if you set brspaces to 1, the exception will be disabled, just as if it was set to the default of 0.

                Dollar signs used before commands without showing output
                Open

                ```sh
                Severity: Info
                Found in README.md by markdownlint

                MD014 - Dollar signs used before commands without showing output

                Tags: code

                Aliases: commands-show-output

                This rule is triggered when there are code blocks showing shell commands to be typed, and the shell commands are preceded by dollar signs ($):

                $ ls
                $ cat foo
                $ less bar

                The dollar signs are unnecessary in the above situation, and should not be included:

                ls
                cat foo
                less bar

                However, an exception is made when there is a need to distinguish between typed commands and command output, as in the following example:

                $ ls
                foo bar
                $ cat foo
                Hello world
                $ cat bar
                baz

                Rationale: it is easier to copy and paste and less noisy if the dollar signs are omitted when they are not needed. See http://www.cirosantilli.com/markdown-styleguide/#dollar-signs-in-shell-code for more information.

                Multiple headers with the same content
                Open

                ### C++
                Severity: Info
                Found in README.md by markdownlint

                MD024 - Multiple headers with the same content

                Tags: headers

                Aliases: no-duplicate-header

                Parameters: allowdifferentnesting (boolean; default false)

                This rule is triggered if there are multiple headers in the document that have the same text:

                # Some text
                
                ## Some text

                To fix this, ensure that the content of each header is different:

                # Some text
                
                ## Some more text

                Rationale: Some markdown parses generate anchors for headers based on the header name, and having headers with the same content can cause problems with this.

                If the parameter allow_different_nesting is set to true, header duplication under different nesting is allowed, like it usually happens in change logs:

                # Change log
                
                ## 2.0.0
                
                ### Bug fixes
                
                ### Features
                
                ## 1.0.0
                
                ### Bug fixes
                Severity
                Category
                Status
                Source
                Language