tests/test_preprocessors.py
    M 81:4 TestNLTKPreprocessor.test_tokenize - B (8)
    M 125:4 TestNLTKPreprocessor.test_fit_transform - A (4)
    C 49:0 TestNLTKPreprocessor - A (3)
    M 52:4 TestNLTKPreprocessor.test_init - A (3)
    M 175:4 TestNLTKPreprocessor.test_inverse_transform - A (1)
    M 188:4 TestNLTKPreprocessor.test_pipeline - A (1)
    C 197:0 TestNVDFeedPreprocessor - A (1)
    M 200:4 TestNVDFeedPreprocessor.test_init - A (1)
    M 213:4 TestNVDFeedPreprocessor.test_fit_transform - A (1)
    M 241:4 TestNVDFeedPreprocessor.test_filter_by_handler - A (1)
    M 265:4 TestNVDFeedPreprocessor.test_get_cve_attributes - A (1)
    M 275:4 TestNVDFeedPreprocessor.test_pipeline - A (1)
    C 284:0 TestLabelPreprocessor - A (1)
    M 287:4 TestLabelPreprocessor.test_init - A (1)
    M 298:4 TestLabelPreprocessor.test_fit_transform - A (1)
tests/test_scripts.py
    M 41:4 TestScripts.test_get_packages_by_commits - A (4)
    C 16:0 TestScripts - A (2)
    M 19:4 TestScripts.test_main_help - A (2)
    M 25:4 TestScripts.test_main_no_args - A (2)
    M 33:4 TestScripts.test_main_default - A (1)
tests/test_pipelines.py
    F 320:0 _get_test_data - A (3)
    M 228:4 TestEvaluation.test_main_help - A (2)
    M 237:4 TestEvaluation.test_main_no_args - A (2)
    M 264:4 TestPredict.test_main_help - A (2)
    M 273:4 TestPredict.test_main_no_args - A (2)
    C 292:0 TestTrain - A (2)
    M 295:4 TestTrain.test_main_help - A (2)
    M 304:4 TestTrain.test_main_no_args - A (2)
    F 343:0 _export_classifier - A (1)
    C 17:0 TestPipeline - A (1)
    M 20:4 TestPipeline.setUpClass - A (1)
    M 25:4 TestPipeline.test_preprocessing_pipeline - A (1)
    M 85:4 TestPipeline.test_training_pipeline - A (1)
    M 121:4 TestPipeline.test_full_training_pipeline - A (1)
    M 141:4 TestPipeline.test_prediction_pipeline - A (1)
    M 170:4 TestPipeline.test_extract_features - A (1)
    M 180:4 TestPipeline.test_extract_labeled_features - A (1)
    M 191:4 TestPipeline.test_evaluation - A (1)
    C 220:0 TestEvaluation - A (1)
    M 223:4 TestEvaluation.setUpClass - A (1)
    M 245:4 TestEvaluation.test_main_default - A (1)
    C 256:0 TestPredict - A (1)
    M 259:4 TestPredict.setUpClass - A (1)
    M 281:4 TestPredict.test_main_default - A (1)
    M 312:4 TestTrain.test_main_default - A (1)
tests/test_utils.py
    M 46:4 TestUtils.test_check_attributes - A (2)
    M 57:4 TestUtils.test_has_reference - A (2)
    M 72:4 TestUtils.test_get_reference - A (2)
    M 105:4 TestUtils.test_nvd_to_dataframe - A (2)
    C 21:0 TestUtils - A (1)
    M 24:4 TestUtils.test_classproperty - A (1)
    M 87:4 TestUtils.test_find_ - A (1)
tests/test_handlers.py
    M 24:4 TestGitHubHandler.test_init - A (2)
    C 60:0 TestGitHandler - A (2)
    M 63:4 TestGitHandler.test_init - A (2)
    M 73:4 TestGitHandler.test_clone - A (2)
    M 82:4 TestGitHandler.test_exec_cmd - A (2)
    C 21:0 TestGitHubHandler - A (1)
    M 41:4 TestGitHubHandler.test_strip_src_url - A (1)
    M 47:4 TestGitHubHandler.test_get_user_project - A (1)
    M 54:4 TestGitHubHandler.test_languages - A (1)
    M 97:4 TestGitHandler.test_get_modified_files - A (1)
tests/test_extras.py
    C 8:0 TestExtras - A (2)
    M 11:4 TestExtras.test_about - A (2)
tests/test_hook.py
    C 9:0 TestHook - A (2)
    M 12:4 TestHook.test_hook - A (2)
tests/test_feature_hooks.py
    M 55:4 TestFeatureHooks.test_vendor_product_match_hook - B (8)
    C 9:0 TestFeatureHooks - A (2)
    M 12:4 TestFeatureHooks.test_has_uppercase_hook - A (1)
    M 31:4 TestFeatureHooks.test_is_alnum_hook - A (1)
    M 124:4 TestFeatureHooks.test_ver_follows_hook - A (1)
    M 144:4 TestFeatureHooks.test_ver_precedes_hook - A (1)
    M 164:4 TestFeatureHooks.test_ver_pos_hook - A (1)
    M 185:4 TestFeatureHooks.test_word_len_hook - A (1)
    M 206:4 TestFeatureHooks.test_word_in_dict_hook - A (1)
tests/test_ecos.py
    M 37:4 TestMaven.test_get_package_from_spec - A (5)
    M 57:4 TestMaven.test_get_package_from_spec_exception - A (5)
    C 15:0 TestMaven - A (4)
    M 18:4 TestMaven.test_find_pom_files - A (4)
    M 84:4 TestMaven.test_find_packages - A (3)
tests/test_classifiers.py
    M 107:4 TestClassifier.test_export - A (3)
    F 200:0 _get_extracted_test_data - A (2)
    M 16:4 TestClassifier.setUpClass - A (2)
    M 67:4 TestClassifier.test_predict - A (2)
    C 13:0 TestClassifier - A (1)
    M 40:4 TestClassifier.test_fit - A (1)
    M 56:4 TestClassifier.test_features - A (1)
    M 88:4 TestClassifier.test_fit_predict - A (1)
    M 127:4 TestClassifier.test_restore - A (1)
    M 141:4 TestClassifier.test_evaluate - A (1)
    M 169:4 TestClassifier.test_cross_validate - A (1)
tests/test_extractors.py
    F 156:0 _get_preprocessed_test_data - A (4)
    M 68:4 TestFeatureExtractor.test_fit_transform - A (3)
    M 132:4 Test_FeatureExtractor.test_feed - A (2)
    C 17:0 TestFeatureExtractor - A (1)
    M 20:4 TestFeatureExtractor.setUpClass - A (1)
    M 25:4 TestFeatureExtractor.test_init - A (1)
    M 51:4 TestFeatureExtractor.test_extract_features - A (1)
    M 103:4 TestFeatureExtractor.test_pipeline - A (1)
    C 114:0 Test_FeatureExtractor - A (1)
    M 117:4 Test_FeatureExtractor.test_init - A (1)
    M 124:4 Test_FeatureExtractor.test_update - A (1)
src/toolkit/utils.py
    F 82:0 has_reference - B (9)
    F 109:0 get_reference - B (9)
    F 157:0 nvd_to_dataframe - B (9)
    F 62:0 check_attributes - B (7)
    F 138:0 find_ - A (3)
    M 35:4 classproperty.__init__ - A (3)
    M 45:4 classproperty.__get__ - A (3)
    C 10:0 BooleanAction - A (2)
    M 19:4 BooleanAction.__call__ - A (2)
    C 26:0 classproperty - A (2)
    F 232:0 clear - A (1)
    M 13:4 BooleanAction.__init__ - A (1)
    M 53:4 classproperty.__set__ - A (1)
    M 57:4 classproperty.__delete__ - A (1)
src/toolkit/pipelines/train.py
    F 74:0 main - A (4)
    F 40:0 parse_args - A (1)
src/toolkit/pipelines/predict.py
    F 41:0 main - A (2)
    F 17:0 parse_args - A (1)
src/toolkit/pipelines/pipelines.py
    F 266:0 extract_features - A (4)
    F 19:0 get_preprocessing_pipeline - A (2)
    F 112:0 get_full_training_pipeline - A (2)
    F 322:0 extract_labeled_features - A (2)
    F 78:0 get_training_pipeline - A (1)
    F 179:0 get_prediction_pipeline - A (1)
    F 223:0 get_extraction_pipeline - A (1)
src/toolkit/pipelines/evaluation.py
    F 77:0 main - B (7)
    F 23:0 parse_args - A (1)
src/toolkit/scripts/get_packages_by_commit.py
    F 70:0 main - B (6)
    F 99:0 get_packages_by_commits - A (5)
    F 155:0 _get_namespace_by_eco - A (2)
    F 22:0 parse_args - A (1)
src/toolkit/preprocessing/ecos.py
    M 152:4 Maven.find_pom_files - B (10)
    C 124:0 Maven - B (6)
    M 177:4 Maven.get_package_from_spec - B (6)
    M 80:4 Package.get_attributes - A (5)
    M 130:4 Maven.find_packages - A (3)
    C 9:0 Package - A (1)
    M 12:4 Package.__init__ - A (1)
    M 29:4 Package.ecosystem - A (1)
    M 34:4 Package.name - A (1)
    M 39:4 Package.owner - A (1)
    M 44:4 Package.version - A (1)
    M 49:4 Package.description - A (1)
    M 54:4 Package.licenses - A (1)
    M 59:4 Package.url - A (1)
    M 64:4 Package.__str__ - A (1)
    M 72:4 Package.__hash__ - A (1)
    M 76:4 Package.__eq__ - A (1)
    C 88:0 MavenPackage - A (1)
    M 91:4 MavenPackage.__init__ - A (1)
    M 103:4 MavenPackage.__str__ - A (1)
    M 113:4 MavenPackage.gid - A (1)
    M 118:4 MavenPackage.aid - A (1)
src/toolkit/preprocessing/handlers.py
    M 185:4 GitHandler.get_modified_files - A (5)
    M 205:4 GitHandler.exec_cmd - A (5)
    M 42:4 GitHubHandler.__init__ - A (2)
    M 78:4 GitHubHandler.languages - A (2)
    M 86:4 GitHubHandler.strip_src_url - A (2)
    M 115:4 GitHubHandler.get_languages - A (2)
    C 137:0 GitHandler - A (2)
    M 140:4 GitHandler.__init__ - A (2)
    C 18:0 StatusError - A (1)
    M 21:4 StatusError.__init__ - A (1)
    C 28:0 GitHubHandler - A (1)
    M 52:4 GitHubHandler.pattern - A (1)
    M 58:4 GitHubHandler.default_properties - A (1)
    M 63:4 GitHubHandler.repository - A (1)
    M 68:4 GitHubHandler.user - A (1)
    M 73:4 GitHubHandler.project - A (1)
    M 102:4 GitHubHandler.get_user_project - A (1)
    M 151:4 GitHandler.__enter__ - A (1)
    M 157:4 GitHandler.__exit__ - A (1)
    M 161:4 GitHandler.repository - A (1)
    M 166:4 GitHandler.status - A (1)
    M 171:4 GitHandler.clone - A (1)
src/toolkit/preprocessing/preprocessors.py
    M 517:4 NLTKPreprocessor.tokenize - C (14)
    M 298:4 LabelPreprocessor.transform - C (11)
    M 162:4 NVDFeedPreprocessor._validate_attributes - B (10)
    M 472:4 NLTKPreprocessor.transform - B (10)
    M 238:4 LabelPreprocessor.fit - B (9)
    C 185:0 LabelPreprocessor - B (7)
    M 373:4 NLTKPreprocessor.__init__ - B (7)
    M 127:4 NVDFeedPreprocessor._get_cve_attributes - B (6)
    M 207:4 LabelPreprocessor.__init__ - B (6)
    C 338:0 NLTKPreprocessor - B (6)
    M 429:4 NLTKPreprocessor.fit - B (6)
    C 23:0 NVDFeedPreprocessor - A (4)
    M 87:4 NVDFeedPreprocessor.transform - A (3)
    M 41:4 NVDFeedPreprocessor.__init__ - A (2)
    M 57:4 NVDFeedPreprocessor.fit - A (2)
    M 412:4 NLTKPreprocessor.inverse_transform - A (2)
    M 109:4 NVDFeedPreprocessor._filter_by_handler - A (1)
    M 232:4 LabelPreprocessor.labels - A (1)
    M 567:4 NLTKPreprocessor.stem - A (1)
    M 571:4 NLTKPreprocessor.lemmatize - A (1)
src/toolkit/transformers/extractors.py
    M 91:4 FeatureExtractor.transform - B (6)
    M 33:4 FeatureExtractor.__init__ - A (5)
    M 62:4 FeatureExtractor.fit - A (4)
    M 179:4 _FeatureExtractor.update - A (4)
    M 198:4 _FeatureExtractor.feed - A (4)
    C 18:0 FeatureExtractor - A (3)
    C 160:0 _FeatureExtractor - A (3)
    M 228:4 _FeatureExtractor._prev_ngram - A (3)
    M 240:4 _FeatureExtractor._prev_ngram_tags - A (3)
    M 252:4 _FeatureExtractor._next_ngram - A (3)
    M 264:4 _FeatureExtractor._next_ngram_tags - A (3)
    M 140:4 FeatureExtractor._extract_features - A (2)
    M 174:4 _FeatureExtractor.keys - A (2)
    M 56:4 FeatureExtractor.feature_keys - A (1)
    M 163:4 _FeatureExtractor.__init__ - A (1)
src/toolkit/transformers/classifiers.py
    M 155:4 NBClassifier.fit_predict - B (9)
    F 329:0 cross_validate - B (7)
    M 256:4 NBClassifier.export - A (5)
    M 281:4 NBClassifier.restore - A (5)
    M 114:4 NBClassifier.evaluate - A (4)
    M 214:4 NBClassifier.predict - A (4)
    M 313:4 NBClassifier._valid_candidates - A (4)
    C 26:0 NBClassifier - A (3)
    M 77:4 NBClassifier.fit - A (3)
    M 52:4 NBClassifier.__init__ - A (2)
    M 68:4 NBClassifier.features - A (2)
    M 249:4 NBClassifier.show_most_informative_features - A (2)
    F 409:0 precision - A (1)
    F 414:0 weighted_precision - A (1)
    M 109:4 NBClassifier.transform - A (1)
src/toolkit/transformers/feature_hooks.py
    F 40:0 __vendor_product_match - B (9)
    F 85:0 __ver_follows - A (5)
    F 99:0 __ver_precedes - A (5)
    F 113:0 __ver_pos - A (3)
    F 18:0 __has_uppercase - A (2)
    F 136:0 __word_len - A (2)
    F 29:0 __is_alnum - A (1)
    F 129:0 __word_in_dict - A (1)
src/toolkit/transformers/hooks.py
    M 32:4 Hook.__init__ - A (3)
    M 72:4 Hook.get_current_keys - A (2)
    C 6:0 Hook - A (1)
    M 49:4 Hook.key - A (1)
    M 54:4 Hook.default_kwargs - A (1)
    M 59:4 Hook.default_kwargs - A (1)
    M 63:4 Hook.__call__ - A (1)
    M 67:4 Hook.get_current_hooks - A (1)
    M 77:4 Hook.clear_current_instances - A (1)
tools/check_python_version.py
    F 19:0 get_expected_version - A (4)
    F 48:0 compare_versions - A (2)
    F 59:0 main - A (2)
    F 43:0 get_actual_version - A (1)

248 blocks (classes, functions, methods) analyzed.
Average complexity: A (2.4838709677419355)