fossasia/knittingpattern

View on GitHub

Showing 65 of 166 total issues

Similar blocks of code found in 20 locations. Consider refactoring.
Open

    def test_i_4_3_produced(self, i_3, i_4):
        assert i_4[3].producing_instructions == [i_3[2]]
Severity: Major
Found in knittingpattern/convert/test/test_layout.py and 19 other locations - About 35 mins to fix
knittingpattern/convert/test/test_layout.py on lines 168..169
knittingpattern/convert/test/test_layout.py on lines 171..172
knittingpattern/convert/test/test_layout.py on lines 174..175
knittingpattern/convert/test/test_layout.py on lines 177..178
knittingpattern/convert/test/test_layout.py on lines 182..183
knittingpattern/convert/test/test_layout.py on lines 185..186
knittingpattern/convert/test/test_layout.py on lines 188..189
knittingpattern/convert/test/test_layout.py on lines 191..192
knittingpattern/convert/test/test_layout.py on lines 199..200
knittingpattern/convert/test/test_layout.py on lines 202..203
knittingpattern/convert/test/test_layout.py on lines 205..206
knittingpattern/convert/test/test_layout.py on lines 216..217
knittingpattern/convert/test/test_layout.py on lines 219..220
knittingpattern/convert/test/test_layout.py on lines 222..223
knittingpattern/convert/test/test_layout.py on lines 227..228
knittingpattern/convert/test/test_layout.py on lines 230..231
knittingpattern/convert/test/test_layout.py on lines 233..234
knittingpattern/convert/test/test_layout.py on lines 241..242
knittingpattern/convert/test/test_layout.py on lines 244..245

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 33.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 20 locations. Consider refactoring.
Open

    def test_i_3_2_produced(self, i_2, i_3):
        assert i_3[2].producing_instructions == [i_2[2]]
Severity: Major
Found in knittingpattern/convert/test/test_layout.py and 19 other locations - About 35 mins to fix
knittingpattern/convert/test/test_layout.py on lines 168..169
knittingpattern/convert/test/test_layout.py on lines 171..172
knittingpattern/convert/test/test_layout.py on lines 174..175
knittingpattern/convert/test/test_layout.py on lines 177..178
knittingpattern/convert/test/test_layout.py on lines 182..183
knittingpattern/convert/test/test_layout.py on lines 185..186
knittingpattern/convert/test/test_layout.py on lines 188..189
knittingpattern/convert/test/test_layout.py on lines 191..192
knittingpattern/convert/test/test_layout.py on lines 199..200
knittingpattern/convert/test/test_layout.py on lines 202..203
knittingpattern/convert/test/test_layout.py on lines 205..206
knittingpattern/convert/test/test_layout.py on lines 216..217
knittingpattern/convert/test/test_layout.py on lines 219..220
knittingpattern/convert/test/test_layout.py on lines 227..228
knittingpattern/convert/test/test_layout.py on lines 230..231
knittingpattern/convert/test/test_layout.py on lines 233..234
knittingpattern/convert/test/test_layout.py on lines 241..242
knittingpattern/convert/test/test_layout.py on lines 244..245
knittingpattern/convert/test/test_layout.py on lines 247..248

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 33.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 20 locations. Consider refactoring.
Open

    def test_i_3_2_consumed(self, i_3, i_4):
        assert i_3[2].consuming_instructions == [i_4[3]]
Severity: Major
Found in knittingpattern/convert/test/test_layout.py and 19 other locations - About 35 mins to fix
knittingpattern/convert/test/test_layout.py on lines 168..169
knittingpattern/convert/test/test_layout.py on lines 171..172
knittingpattern/convert/test/test_layout.py on lines 174..175
knittingpattern/convert/test/test_layout.py on lines 177..178
knittingpattern/convert/test/test_layout.py on lines 182..183
knittingpattern/convert/test/test_layout.py on lines 185..186
knittingpattern/convert/test/test_layout.py on lines 188..189
knittingpattern/convert/test/test_layout.py on lines 191..192
knittingpattern/convert/test/test_layout.py on lines 199..200
knittingpattern/convert/test/test_layout.py on lines 202..203
knittingpattern/convert/test/test_layout.py on lines 205..206
knittingpattern/convert/test/test_layout.py on lines 216..217
knittingpattern/convert/test/test_layout.py on lines 219..220
knittingpattern/convert/test/test_layout.py on lines 222..223
knittingpattern/convert/test/test_layout.py on lines 227..228
knittingpattern/convert/test/test_layout.py on lines 230..231
knittingpattern/convert/test/test_layout.py on lines 241..242
knittingpattern/convert/test/test_layout.py on lines 244..245
knittingpattern/convert/test/test_layout.py on lines 247..248

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 33.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 2 locations. Consider refactoring.
Open

    def relative_folder(self, module, folder):
        """Load a folder located relative to a module and return the processed
        result.

        :param str module: can be
Severity: Minor
Found in knittingpattern/Loader.py and 1 other location - About 30 mins to fix
knittingpattern/Loader.py on lines 122..136

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 32.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Similar blocks of code found in 2 locations. Consider refactoring.
Open

    def relative_file(self, module, file):
        """Load a file relative to a module.

        :param str module: can be

Severity: Minor
Found in knittingpattern/Loader.py and 1 other location - About 30 mins to fix
knittingpattern/Loader.py on lines 100..120

Duplicated Code

Duplicated code can lead to software that is hard to understand and difficult to change. The Don't Repeat Yourself (DRY) principle states:

Every piece of knowledge must have a single, unambiguous, authoritative representation within a system.

When you violate DRY, bugs and maintenance problems are sure to follow. Duplicated code has a tendency to both continue to replicate and also to diverge (leaving bugs as two similar implementations differ in subtle ways).

Tuning

This issue has a mass of 32.

We set useful threshold defaults for the languages we support but you may want to adjust these settings based on your project guidelines.

The threshold configuration represents the minimum mass a code block must have to be analyzed for duplication. The lower the threshold, the more fine-grained the comparison.

If the engine is too easily reporting duplication, try raising the threshold. If you suspect that the engine isn't catching enough duplication, try lowering the threshold. The best setting tends to differ from language to language.

See codeclimate-duplication's documentation for more information about tuning the mass threshold in your .codeclimate.yml.

Refactorings

Further Reading

Severity
Category
Status
Source
Language