f8a-jobs.py
    F 88:0 api_v1 - A (3)
    C 23:0 SafeJSONEncoder - A (3)
    M 26:4 SafeJSONEncoder.default - A (3)
    F 36:0 init_logging - A (1)
    F 81:0 base_url - A (1)
    F 101:0 initjobs - A (1)
    F 112:0 runserver - A (1)
setup.py
    F 9:0 get_requirements - A (2)
tests/test_models.py
    C 9:0 TestModels - A (2)
    M 12:4 TestModels.setup_method - A (2)
    M 16:4 TestModels.teardown_method - A (2)
tests/test_api_v1.py
    C 7:0 TestApiV1Functions - A (2)
    M 10:4 TestApiV1Functions.setup_method - A (2)
    M 14:4 TestApiV1Functions.teardown_method - A (2)
tests/test_auth.py
    C 7:0 TestAuthFunctions - A (2)
    M 10:4 TestAuthFunctions.setup_method - A (2)
    M 14:4 TestAuthFunctions.teardown_method - A (2)
tests/test_defaults.py
    C 9:0 TestDefaults - A (2)
    M 12:4 TestDefaults.setup_method - A (2)
    M 16:4 TestDefaults.teardown_method - A (2)
tests/test_utils.py
    M 49:4 TestUtilFunctions.test_parse_dates_return_value - B (6)
    C 9:0 TestUtilFunctions - A (3)
    M 20:4 TestUtilFunctions.test_parse_dates - A (3)
    M 12:4 TestUtilFunctions.setup_method - A (2)
    M 16:4 TestUtilFunctions.teardown_method - A (2)
tests/test_graph_sync.py
    C 9:0 TestGraphSync - A (2)
    M 12:4 TestGraphSync.setup_method - A (2)
    M 16:4 TestGraphSync.teardown_method - A (2)
tests/test_scheduler.py
    C 9:0 TestScheduler - A (2)
    M 12:4 TestScheduler.setup_method - A (2)
    M 16:4 TestScheduler.teardown_method - A (2)
    M 20:4 TestScheduler.test_schedule_job_error_class - A (2)
    M 26:4 TestScheduler.test_schedule_job_method_state - A (2)
    M 31:4 TestScheduler.test_schedule_job_method_handler_name - A (2)
    M 36:4 TestScheduler.test_schedule_job_method_when_parsing - A (2)
    M 41:4 TestScheduler.test_schedule_job_method_missfirre_grace_time_parsing - A (2)
    M 47:4 TestScheduler.test_schedule_job_method_misfire_grace_time_parsing_2 - A (2)
    M 53:4 TestScheduler.test_schedule_job_method_periodically_parsing - A (2)
tests/test_error.py
    M 20:4 TestError.token_expired - A (3)
    C 9:0 TestError - A (2)
    M 12:4 TestError.setup_method - A (2)
    M 16:4 TestError.teardown_method - A (2)
tests/test_analyses_report.py
    C 7:0 TestAnalysesReport - A (2)
    M 10:4 TestAnalysesReport.setup_method - A (2)
    M 14:4 TestAnalysesReport.teardown_method - A (2)
tests/handlers/test_kronos_data_update.py
    C 9:0 TestKronosDataUpdater - A (2)
    M 12:4 TestKronosDataUpdater.setup_method - A (2)
    M 16:4 TestKronosDataUpdater.teardown_method - A (2)
tests/handlers/test_selective_flow.py
    C 8:0 TestSelectiveFlowScheduling - A (3)
    M 11:4 TestSelectiveFlowScheduling.test_constructor - A (3)
tests/handlers/test_book_keeping.py
    C 9:0 TestBookKeeping - A (2)
    M 12:4 TestBookKeeping.setup_method - A (2)
    M 16:4 TestBookKeeping.teardown_method - A (2)
tests/handlers/test_nuget_popular_analyses.py
    C 8:0 TestNugetPopularAnalyses - A (3)
    M 11:4 TestNugetPopularAnalyses.test_constructor - A (3)
tests/handlers/test_github_manifests.py
    C 9:0 TestGitHubManifests - A (2)
    M 12:4 TestGitHubManifests.setup_method - A (2)
    M 16:4 TestGitHubManifests.teardown_method - A (2)
tests/handlers/test_maven_releases.py
    C 9:0 TestMavenReleasesAnalyses - A (2)
    M 12:4 TestMavenReleasesAnalyses.setup_method - A (2)
    M 16:4 TestMavenReleasesAnalyses.teardown_method - A (2)
tests/handlers/test_clean_postgres.py
    C 9:0 TestCleanPostgres - A (2)
    M 12:4 TestCleanPostgres.setup_method - A (2)
    M 16:4 TestCleanPostgres.teardown_method - A (2)
tests/handlers/test_aggregate_github_manifest_pkgs.py
    C 9:0 TestAggreateGithubManifestPkgs - A (2)
    M 12:4 TestAggreateGithubManifestPkgs.setup_method - A (2)
    M 16:4 TestAggreateGithubManifestPkgs.teardown_method - A (2)
tests/handlers/test_aggregate_topics.py
    C 9:0 TestAggreateTopics - A (2)
    M 12:4 TestAggreateTopics.setup_method - A (2)
    M 16:4 TestAggreateTopics.teardown_method - A (2)
tests/handlers/test_sync_to_graph.py
    C 8:0 TestSyncToGraph - A (3)
    M 11:4 TestSyncToGraph.test_constructor - A (3)
tests/handlers/test_invoke_graph_sync.py
    C 9:0 TestInvokeGraphSync - A (2)
    M 12:4 TestInvokeGraphSync.setup_method - A (2)
    M 16:4 TestInvokeGraphSync.teardown_method - A (2)
tests/handlers/test_golang_popular_analyses.py
    C 8:0 TestGolangPopularAnalyses - A (3)
    M 11:4 TestGolangPopularAnalyses.test_constructor - A (3)
tests/handlers/test_flow.py
    C 9:0 TestFlowScheduling - A (2)
    M 12:4 TestFlowScheduling.setup_method - A (2)
    M 16:4 TestFlowScheduling.teardown_method - A (2)
tests/handlers/test_github_most_starred.py
    C 9:0 TestGitHubMostStarred - A (2)
    M 12:4 TestGitHubMostStarred.setup_method - A (2)
    M 16:4 TestGitHubMostStarred.teardown_method - A (2)
tests/handlers/test_python_popular_analyses.py
    C 8:0 TestPythonPopularAnalyses - A (3)
    M 11:4 TestPythonPopularAnalyses.test_constructor - A (3)
tests/handlers/test_base_handler.py
    C 7:0 TestAnalysesBaseHandler - A (2)
    M 10:4 TestAnalysesBaseHandler.test_parse_count - A (2)
tests/handlers/test_aggregate_crowd_source_tags.py
    M 43:4 TestCrowdSourceTags.test_filter_user_tags_double_pkg - B (7)
    C 8:0 TestCrowdSourceTags - A (5)
    M 11:4 TestCrowdSourceTags.test_filter_user_tags_single_pkg - A (4)
    M 27:4 TestCrowdSourceTags.test_filter_user_tags_multiple_user_tags - A (4)
tests/handlers/test_npm_popular_analyses.py
    C 8:0 TestNpmPopularAnalyses - A (3)
    M 11:4 TestNpmPopularAnalyses.test_constructor - A (3)
tests/handlers/test_error.py
    C 9:0 TestErrorHandler - A (2)
    M 12:4 TestErrorHandler.setup_method - A (2)
    M 16:4 TestErrorHandler.teardown_method - A (2)
tests/handlers/test_maven_popular_analyses.py
    C 8:0 TestMavenPopularAnalyses - A (3)
    M 11:4 TestMavenPopularAnalyses.test_constructor - A (3)
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)
f8a_jobs/auth.py
    F 21:0 get_github_oauth_token - A (1)
f8a_jobs/models.py
    M 54:4 JobToken.verify - B (6)
    M 88:4 JobToken._invalidate_tokens - A (5)
    M 136:4 JobToken.get_info - A (4)
    C 31:0 JobToken - A (3)
    M 109:4 JobToken.store_token - A (2)
    F 19:0 create_models - A (1)
    F 25:0 get_session - A (1)
    M 43:4 JobToken.to_dict - A (1)
f8a_jobs/scheduler.py
    M 126:4 Scheduler.schedule_job - C (18)
    M 228:4 Scheduler.register_default_jobs - B (8)
    C 30:0 Scheduler - A (5)
    F 263:0 job_execute - A (4)
    M 59:4 Scheduler.get_scheduler - A (4)
    M 100:4 Scheduler.process_when_parameter - A (4)
    M 113:4 Scheduler.process_misfire_grace_time - A (3)
    M 73:4 Scheduler.get_paused_scheduler - A (2)
    M 88:4 Scheduler.check_job_state - A (2)
    M 94:4 Scheduler.check_handler_name - A (2)
    F 295:0 uses_scheduler - A (1)
    C 24:0 ScheduleJobError - A (1)
    M 55:4 Scheduler.__init__ - A (1)
f8a_jobs/utils.py
    F 180:0 purge_queues - B (6)
    F 65:0 job2raw_dict - A (5)
    F 214:0 parse_dates - A (5)
    F 128:0 _get_queues - A (4)
    F 24:0 get_service_state_str - A (3)
    F 34:0 get_job_state_str - A (3)
    F 161:0 construct_queue_attributes - A (3)
    F 110:0 is_organization_member - A (2)
    F 45:0 is_failed_job - A (1)
    F 54:0 is_failed_job_handler_name - A (1)
    F 87:0 requires_auth - A (1)
    F 123:0 get_gh_token - A (1)
    F 146:0 requires_aws_sqs_access - A (1)
f8a_jobs/error.py
    C 4:0 TokenExpired - A (1)
f8a_jobs/analyses_report.py
    F 10:0 _add_query_datetime_constrains - A (3)
    F 78:0 construct_analyses_report - A (3)
    F 35:0 _count - A (2)
    F 22:0 _get_base_query - A (1)
    F 43:0 _get_finished_analyses_count - A (1)
    F 48:0 _get_unfinished_analyses_count - A (1)
    F 53:0 _get_unique_analyses_count - A (1)
    F 58:0 _get_unique_finished_analyses_count - A (1)
    F 63:0 _get_packages_count - A (1)
    F 68:0 _get_finished_packages_count - A (1)
    F 73:0 _get_versions_count - A (1)
f8a_jobs/api_v1.py
    F 148:0 get_jobs - B (9)
    F 45:0 authorized - B (8)
    F 91:0 put_service_state - A (4)
    F 131:0 put_jobs - A (4)
    F 119:0 delete_clean_failed - A (3)
    F 36:0 logout - A (2)
    F 108:0 delete_jobs - A (2)
    F 189:0 post_schedule_job - A (2)
    F 202:0 post_show_select_query - A (2)
    F 215:0 post_expand_filter_query - A (2)
    F 226:0 get_analyses_report - A (2)
    F 236:0 get_queue_attributes - A (2)
    F 247:0 get_gh_tokens_rate_limits - A (2)
    F 278:0 post_analyses - A (2)
    F 291:0 github_most_starred - A (2)
    F 324:0 post_clean_postgres - A (2)
    F 356:0 post_queue_purge - A (2)
    F 30:0 generate_token - A (1)
    F 84:0 get_service_state - A (1)
    F 172:0 get_readiness - A (1)
    F 177:0 get_liveness - A (1)
    F 264:0 post_flow_scheduling - A (1)
    F 271:0 post_selective_flow_scheduling - A (1)
    F 303:0 github_manifests - A (1)
    F 310:0 aggregate_crowd_source_tags - A (1)
    F 317:0 aggregate_github_manifest_pkgs - A (1)
    F 335:0 post_sync_to_graph - A (1)
    F 342:0 post_invoke_graph_sync - A (1)
    F 349:0 post_aggregate_topics - A (1)
    F 366:0 post_maven_releases - A (1)
    F 373:0 get_maven_releases - A (1)
    F 380:0 put_maven_releases - A (1)
    F 388:0 bookkeeping_all - A (1)
    F 395:0 bookkeeping_ecosystem - A (1)
    F 402:0 bookkeeping_ecosystem_package - A (1)
    F 409:0 bookkeeping_epv - A (1)
    F 416:0 bookkeeping_upstreams_all - A (1)
    F 423:0 bookkeeping_upstreams_ecosystem - A (1)
    F 430:0 bookkeeping_upstreams_ecosystem_package - A (1)
    F 437:0 post_kronos_data_update - A (1)
    F 445:0 retrieve_graphsync_all - A (1)
    F 452:0 retrieve_graphsync_ecosystem - A (1)
    F 459:0 retrieve_graphsync_ecosystem_package - A (1)
    F 470:0 retrieve_graphsync_epv - A (1)
    F 483:0 invoke_graphsync_all - A (1)
    F 490:0 invoke_graphsync_ecosystem - A (1)
    F 497:0 invoke_graphsync_ecosystem_package - A (1)
    F 508:0 invoke_graphsync_epv - A (1)
f8a_jobs/graph_sync.py
    F 14:0 _api_call - A (3)
    F 27:0 fetch_pending - A (3)
    F 40:0 invoke_sync - A (3)
f8a_jobs/handlers/aggregate_crowd_source_tags.py
    M 14:4 AggregateCrowdSourceTags.execute - B (6)
    M 114:4 AggregateCrowdSourceTags._update_tags_from_graph - A (4)
    M 148:4 AggregateCrowdSourceTags.filter_user_tags - A (3)
    C 11:0 AggregateCrowdSourceTags - A (2)
    M 48:4 AggregateCrowdSourceTags._execute_query - A (2)
    M 75:4 AggregateCrowdSourceTags._set_user_tags_query - A (2)
    M 95:4 AggregateCrowdSourceTags._set_usercount_query - A (2)
    M 40:4 AggregateCrowdSourceTags._get_graph_url - A (1)
    M 60:4 AggregateCrowdSourceTags._get_usertags_query - A (1)
    M 166:4 AggregateCrowdSourceTags.process_tags - A (1)
f8a_jobs/handlers/npm_popular_analyses.py
    M 35:4 NpmPopularAnalyses._use_npm_registry - A (5)
    C 9:0 NpmPopularAnalyses - A (4)
    M 16:4 NpmPopularAnalyses._schedule_from_npm_registry - A (4)
    M 66:4 NpmPopularAnalyses._use_npm_popular - A (4)
    M 80:4 NpmPopularAnalyses.do_execute - A (2)
f8a_jobs/handlers/maven_popular_analyses.py
    M 53:4 MavenPopularAnalyses._projects_from - B (9)
    M 129:4 MavenPopularAnalyses._use_maven_index_checker - B (8)
    M 29:4 MavenPopularAnalyses._find_versions - B (6)
    M 194:4 MavenPopularAnalyses.do_execute - A (5)
    C 17:0 MavenPopularAnalyses - A (4)
    M 99:4 MavenPopularAnalyses._top_categories_projects - A (4)
    M 113:4 MavenPopularAnalyses._top_tags_projects - A (3)
    M 23:4 MavenPopularAnalyses.__init__ - A (1)
    M 94:4 MavenPopularAnalyses._top_projects - A (1)
f8a_jobs/handlers/github_manifests.py
    C 8:0 GitHubManifests - B (6)
    M 13:4 GitHubManifests.execute - B (6)
f8a_jobs/handlers/github_most_starred.py
    M 48:4 GitHubMostStarred.get_most_starred_repositories - B (7)
    M 122:4 GitHubMostStarred.do_execute - B (6)
    M 40:4 GitHubMostStarred._get_stars_filter - A (5)
    C 10:0 GitHubMostStarred - A (4)
    M 95:4 GitHubMostStarred.execute - A (2)
    M 27:4 GitHubMostStarred.__init__ - A (1)
f8a_jobs/handlers/error.py
    C 8:0 ErrorHandler - A (1)
    M 11:4 ErrorHandler.execute - A (1)
f8a_jobs/handlers/nuget_popular_analyses.py
    M 17:4 NugetPopularAnalyses._scrape_nuget_org - C (14)
    C 11:0 NugetPopularAnalyses - B (8)
    M 60:4 NugetPopularAnalyses.do_execute - A (1)
f8a_jobs/handlers/flow.py
    C 6:0 FlowScheduling - A (4)
    M 9:4 FlowScheduling.execute - A (4)
f8a_jobs/handlers/python_popular_analyses.py
    M 58:4 PythonPopularAnalyses._use_pypi_ranking - B (7)
    C 12:0 PythonPopularAnalyses - A (4)
    M 18:4 PythonPopularAnalyses._parse_version_stats - A (3)
    M 41:4 PythonPopularAnalyses._use_pypi_xml_rpc - A (3)
    M 96:4 PythonPopularAnalyses.do_execute - A (2)
f8a_jobs/handlers/sync_to_graph.py
    C 10:0 SyncToGraph - B (7)
    M 15:4 SyncToGraph.execute - B (7)
f8a_jobs/handlers/kronos_data_update.py
    M 97:4 KronosDataUpdater._processing - B (9)
    M 78:4 KronosDataUpdater._append_package_topic - A (5)
    C 9:0 KronosDataUpdater - A (3)
    M 61:4 KronosDataUpdater._append_manifest - A (3)
    M 12:4 KronosDataUpdater.__init__ - A (1)
    M 24:4 KronosDataUpdater.execute - A (1)
    M 40:4 KronosDataUpdater._generate_query - A (1)
    M 55:4 KronosDataUpdater._execute_query - A (1)
f8a_jobs/handlers/aggregate_github_manifest_pkgs.py
    M 11:4 AggregateGitHubManifestPackages.execute - B (9)
    C 8:0 AggregateGitHubManifestPackages - A (4)
    M 113:4 AggregateGitHubManifestPackages._create_manifest_entry - A (3)
    M 82:4 AggregateGitHubManifestPackages._create_tagger_list - A (2)
    M 95:4 AggregateGitHubManifestPackages._create_data_structure - A (1)
f8a_jobs/handlers/clean_postgres.py
    M 27:4 CleanPostgres._clean_package_version_data - C (15)
    M 92:4 CleanPostgres._clean_package_data - C (15)
    C 12:0 CleanPostgres - C (11)
    M 156:4 CleanPostgres.execute - A (2)
f8a_jobs/handlers/book_keeping.py
    M 136:4 BookKeeping.retrieve_bookkeeping_upstreams - B (7)
    M 69:4 BookKeeping.retrieve_bookkeeping_for_ecosystem_package - A (3)
    C 31:0 BookKeeping - A (2)
    M 39:4 BookKeeping.retrieve_bookkeeping_all - A (2)
    M 104:4 BookKeeping.retrieve_bookkeeping_for_epv - A (2)
    F 13:0 handle_sqlalchemy - A (1)
    M 34:4 BookKeeping.__init__ - A (1)
    M 56:4 BookKeeping.retrieve_bookkeeping_for_ecosystem - A (1)
f8a_jobs/handlers/base.py
    M 209:4 AnalysesBaseHandler.parse_count - B (8)
    M 164:4 AnalysesBaseHandler.ecosystem2handler_name - B (6)
    M 54:4 BaseHandler._normalize_package_name - A (4)
    M 232:4 AnalysesBaseHandler.check_arguments - A (4)
    M 81:4 BaseHandler.run_selinon_flow_selective - A (3)
    M 115:4 BaseHandler.expand_filter_query - A (3)
    C 147:0 AnalysesBaseHandler - A (3)
    C 25:0 BaseHandler - A (2)
    M 48:4 BaseHandler._init_celery - A (2)
    M 65:4 BaseHandler.run_selinon_flow - A (2)
    M 106:4 BaseHandler.is_filter_query - A (2)
    M 188:4 AnalysesBaseHandler.analyses_selinon_flow - A (2)
    M 248:4 AnalysesBaseHandler.execute - A (2)
    M 30:4 BaseHandler.__init__ - A (1)
    M 38:4 BaseHandler.construct_select_query - A (1)
    M 142:4 BaseHandler.execute - A (1)
    M 153:4 AnalysesBaseHandler.__init__ - A (1)
    M 269:4 AnalysesBaseHandler.do_execute - A (1)
f8a_jobs/handlers/golang_popular_analyses.py
    M 31:4 GolangPopularAnalyses._popular_packages - B (10)
    M 14:4 GolangPopularAnalyses._get_latest_commit - B (7)
    C 8:0 GolangPopularAnalyses - B (6)
    M 76:4 GolangPopularAnalyses._packages - A (3)
    M 93:4 GolangPopularAnalyses.do_execute - A (3)
f8a_jobs/handlers/selective_flow.py
    C 6:0 SelectiveFlowScheduling - A (4)
    M 9:4 SelectiveFlowScheduling.execute - A (4)
f8a_jobs/handlers/aggregate_topics.py
    M 28:4 AggregateTopics.execute - C (11)
    C 13:0 AggregateTopics - B (6)
    M 16:4 AggregateTopics._store_topics - A (1)
f8a_jobs/handlers/invoke_graph_sync.py
    M 68:4 InvokeGraphSync.execute - B (6)
    C 11:0 InvokeGraphSync - A (3)
    M 31:4 InvokeGraphSync._fetch_all_counts - A (2)
    M 44:4 InvokeGraphSync._fetch_package_versions - A (2)
    M 57:4 InvokeGraphSync._perform_sync - A (2)
f8a_jobs/handlers/maven_releases.py
    C 15:0 MavenReleasesAnalyses - B (8)
    M 18:4 MavenReleasesAnalyses.execute - B (8)

306 blocks (classes, functions, methods) analyzed.
Average complexity: A (2.8986928104575163)