scout-browser 4.82.2__tar.gz → 4.84__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {scout-browser-4.82.2 → scout-browser-4.84}/CHANGELOG.md +41 -0
- scout-browser-4.84/PKG-INFO +300 -0
- scout-browser-4.84/scout/__version__.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/client.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/base.py +0 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/case.py +19 -37
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/case_events.py +98 -2
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/hgnc.py +39 -22
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/institute.py +3 -9
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/panel.py +2 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/variant.py +12 -2
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/variant_loader.py +156 -141
- scout-browser-4.84/scout/build/genes/hgnc_gene.py +23 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/base.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/download/ensembl.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/download/everything.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/download/exac.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/download/hgnc.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/download/hpo.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/download/omim.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/export/database.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/load/panel.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/load/report.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/update/case.py +10 -10
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/update/individual.py +6 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/update/omim.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/update/panelapp.py +1 -0
- scout-browser-4.84/scout/constants/file_types.py +90 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/export/exon.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/load/__init__.py +0 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/load/all.py +8 -5
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/load/hgnc_gene.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/load/panel.py +8 -4
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/load/setup.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/case/case_loading_models.py +6 -16
- scout-browser-4.84/scout/models/hgnc_map.py +118 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/phenotype_term.py +3 -3
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/case.py +0 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/disease_terms.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/omim.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/orpha.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/panel.py +40 -15
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/conservation.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/resources/__init__.py +3 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/app.py +4 -50
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/alignviewers/controllers.py +15 -17
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/alignviewers/templates/alignviewers/igv_viewer.html +13 -3
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/alignviewers/views.py +10 -15
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/controllers.py +70 -73
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/templates/cases/case.html +94 -71
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/templates/cases/collapsible_actionbar.html +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/templates/cases/phenotype.html +8 -6
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/templates/cases/utils.html +3 -3
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/views.py +8 -6
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/panels/forms.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/controllers.py +14 -19
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/templates/variant/acmg.html +25 -16
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/templates/variant/components.html +11 -6
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/views.py +5 -2
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/controllers.py +12 -28
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/views.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/config.py +16 -4
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/extensions/__init__.py +4 -2
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/extensions/beacon_extension.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/extensions/bionano_extension.py +1 -0
- scout-browser-4.84/scout/server/extensions/chanjo_extension.py +59 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/extensions/gens_extension.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/extensions/ldap_extension.py +5 -3
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/extensions/loqus_extension.py +16 -14
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/extensions/matchmaker_extension.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/extensions/mongo_extension.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/extensions/phenopacket_extension.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/extensions/rerunner_extension.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/links.py +4 -4
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/static/bs_styles.css +20 -2
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/utils.py +16 -2
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/utils/acmg.py +33 -20
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/utils/ensembl_rest_clients.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/utils/scout_requests.py +1 -0
- scout-browser-4.84/scout/utils/sort.py +21 -0
- scout-browser-4.84/scout/utils/track_resources.py +70 -0
- scout-browser-4.84/scout_browser.egg-info/PKG-INFO +300 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout_browser.egg-info/SOURCES.txt +6 -5
- {scout-browser-4.82.2 → scout-browser-4.84}/scout_browser.egg-info/entry_points.txt +0 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/conftest.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_case_events.py +3 -3
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_case_handling.py +40 -11
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_comment_handling.py +9 -9
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_evaluated_variants.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_event_handling.py +38 -46
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_gene_handler.py +73 -47
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_institute_handler.py +12 -12
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_query.py +6 -6
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_sanger_validation.py +3 -2
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_transcript_handler.py +13 -13
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_variant_events.py +19 -19
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_variant_handling.py +29 -16
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_variant_loader.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/build/test_build_hgnc_gene.py +4 -5
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/conftest.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/delete/test_delete_cmd.py +6 -7
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/export/test_export_cases_cmd.py +4 -4
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/export/test_export_gene.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/export/test_export_hpo_cmd.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/export/test_export_mt_report_cmd.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/export/test_export_transcripts_cmd.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/export/test_export_variant_cmd.py +2 -2
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/load/test_load_case_cmd.py +5 -5
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/load/test_load_institute_cmd.py +4 -4
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/load/test_load_user_cmd.py +2 -2
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/load/test_load_variants_cmd.py +5 -5
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/test_convert_cmd.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/update/test_update_individual_cmd.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/view/test_view_cases.py +3 -3
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/view/test_view_cases_cmd.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/view/test_view_institutes_cmd.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/view/test_view_transcripts_cmd.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/conftest.py +16 -14
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/load/test_load_exons.py +4 -4
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/load/test_load_hgnc_genes.py +4 -4
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/load/test_load_institute.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/load/test_load_panel.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/load/test_load_transcripts.py +4 -4
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/load/test_load_variant.py +14 -14
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/alignviewers/test_alignviewers_controllers.py +6 -6
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/cases/conftest.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/cases/test_cases_controllers.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/cases/test_cases_views.py +6 -8
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/cases/test_matchmaker_controllers.py +2 -4
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/dashboard/test_dashboard_controllers.py +8 -8
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/institutes/test_institute_views.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/variant/test_variant_controllers.py +4 -4
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/variant/test_variant_views.py +1 -2
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/variants/test_variants_views.py +12 -4
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/extensions/conftest.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/extensions/test_beacon_extension.py +2 -4
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/extensions/test_bionano_extension.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/extensions/test_execute_command.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/extensions/test_loqusdb_api_extension.py +2 -4
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/extensions/test_rerunner_extension.py +1 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/test_server_utils.py +30 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/update/test_update_institute.py +1 -1
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/utils/conftest.py +0 -26
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/utils/test_acmg.py +6 -0
- scout-browser-4.84/tests/utils/test_custom_tracks.py +55 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/utils/test_scout_requests.py +1 -0
- scout-browser-4.84/tests/utils/test_sort.py +36 -0
- scout-browser-4.82.2/PKG-INFO +0 -301
- scout-browser-4.82.2/scout/__version__.py +0 -1
- scout-browser-4.82.2/scout/build/genes/hgnc_gene.py +0 -152
- scout-browser-4.82.2/scout/constants/file_types.py +0 -17
- scout-browser-4.82.2/scout/load/case.py +0 -36
- scout-browser-4.82.2/scout/models/hgnc_map.py +0 -155
- scout-browser-4.82.2/scout/utils/cloud_resources.py +0 -61
- scout-browser-4.82.2/scout_browser.egg-info/PKG-INFO +0 -301
- scout-browser-4.82.2/tests/load/test_load_case.py +0 -38
- scout-browser-4.82.2/tests/utils/test_cloud_resources.py +0 -14
- {scout-browser-4.82.2 → scout-browser-4.84}/LICENSE +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/MANIFEST.in +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/README.md +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/requirements-dev.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/requirements.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/acmg.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/case_group.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/clinvar.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/cytoband.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/disease_terms.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/event.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/filter.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/hpo.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/index.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/managed_variant.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/matchmaker.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/phenomodel.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/query.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/rank_model.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/transcript.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/user.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/adapter/mongo/variant_events.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/acmg.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/case.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/disease.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/genes/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/genes/exon.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/genes/transcript.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/hpo.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/individual.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/institute.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/managed_variant.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/panel.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/user.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/variant/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/variant/clnsig.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/variant/compound.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/variant/gene.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/variant/genotype.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/variant/transcript.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/build/variant/variant.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/convert.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/delete/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/delete/delete_command.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/download/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/download/download_command.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/download/orpha.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/export/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/export/case.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/export/exon.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/export/export_command.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/export/export_handler.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/export/gene.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/export/hpo.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/export/mitochondrial_report.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/export/panel.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/export/transcript.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/export/utils.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/export/variant.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/index_command.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/load/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/load/base.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/load/case.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/load/cytoband.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/load/exons.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/load/institute.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/load/region.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/load/research.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/load/user.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/load/variants.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/serve.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/setup/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/setup/setup_scout.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/update/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/update/base.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/update/compounds.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/update/disease.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/update/genes.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/update/hpo.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/update/institute.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/update/panel.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/update/phenotype_groups.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/update/user.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/utils.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/view/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/view/aliases.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/view/base.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/view/case.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/view/collections.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/view/diseases.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/view/hgnc.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/view/hpo.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/view/index.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/view/individuals.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/view/institutes.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/view/intervals.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/view/panels.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/view/transcripts.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/view/users.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/commands/wipe_database.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/constants/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/constants/acmg.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/constants/case_tags.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/constants/clinvar.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/constants/clnsig.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/constants/disease_parsing.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/constants/filters.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/constants/gene_tags.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/constants/igv_tracks.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/constants/indexes.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/constants/phenotype.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/constants/query_terms.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/constants/so_terms.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/constants/variant_tags.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/constants/variants_export.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.clinical.SV.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.clinical.SV.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.clinical.mei.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.clinical.mei.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.clinical.str.annotated.limits.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.clinical.str.annotated.limits.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.clinical.str.annotated.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.clinical.str.annotated.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.clinical.str.stranger.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.clinical.str.stranger.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.clinical.str.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.clinical.str.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.clinical.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.clinical.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.config.yaml +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.ped +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.ped_check.csv +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.peddy.ped +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.research.SV.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.research.SV.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.research.mei.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.research.mei.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.research.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.research.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.sex_check.csv +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643594.solo.smn.tsv +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643595.clinical.SV.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643595.clinical.SV.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643595.clinical.str.stranger.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643595.clinical.str.stranger.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643595.clinical.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643595.clinical.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/643595.config.yaml +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/999-99.test.cgh +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/ACC5963A1_lanes_1234_star_sorted_sj_filtered.bigWig +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/ACC5963A1_lanes_1234_star_sorted_sj_filtered_sorted.bed.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/ACC5963A1_lanes_1234_star_sorted_sj_filtered_sorted.bed.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/ADM1059A1.d4 +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/ADM1059A1.test.cgh +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/ADM1059A2.d4 +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/ADM1059A2.test.cgh +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/ADM1059A3.d4 +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/ADM1059A3.test.cgh +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/REViewer_test_data/catalog_test.json +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/REViewer_test_data/justhusky_exphun_hugelymodelbat.vcf +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/REViewer_test_data/justhusky_exphun_hugelymodelbat_realigned.bam +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/REViewer_test_data/justhusky_exphun_hugelymodelbat_realigned.bam.bai +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/cancer.load_config.yaml +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/cancer_cnv_report.pdf +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/cancer_coverage_qc_report.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/cancer_test.ped +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/cancer_test.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/cancer_test.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/chanjo4_demo.sql +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/customannotations_one.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/customannotations_one.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/delivery_report.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/draw-fusions-example.pdf +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/empty.clinical.SV.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/empty.clinical.SV.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/exe_ver.yaml +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/fusion_data.vcf +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions1.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions10.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions11.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions12.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions13.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions14.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions15.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions16.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions17.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions18.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions19.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions2.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions20.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions21.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions22.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions3.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions4.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions5.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions6.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions7.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions8.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regions9.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regionsM.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regionsX.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/autozygous_regionsY.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage1.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage10.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage11.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage12.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage13.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage14.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage15.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage16.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage17.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage18.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage19.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage2.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage20.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage21.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage22.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage3.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage4.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage5.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage6.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage7.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage8.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverage9.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverageM.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverageX.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/coverageY.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions1.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions10.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions11.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions12.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions13.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions14.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions15.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions16.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions17.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions18.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions19.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions2.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions20.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions21.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions22.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions3.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions4.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions5.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions6.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions7.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions8.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regions9.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regionsM.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regionsX.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_regionsY.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_1.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_10.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_11.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_12.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_13.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_14.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_15.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_16.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_17.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_18.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_19.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_2.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_20.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_21.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_22.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_3.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_4.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_5.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_6.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_7.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_8.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_9.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_M.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_X.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/chromograph_demo/upd_sites_Y.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/custom_images/640x480_one.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/custom_images/640x480_three.svg +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/custom_images/640x480_two.jpg +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/custom_images/replicons/640x480_AR.svg +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/images/custom_images/replicons/640x480_ATN1.svg +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/madeline.xml +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/manta_vep_94_annotated_sv_cancer_file.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/mitodel_test_files/earlycasualcaiman_lanes_1_sorted_md_mitodel.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/mitodel_test_files/hugelymodelbat_lanes_1_sorted_md_mitodel.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/mitodel_test_files/slowlycivilbuck_lanes_1_sorted_md_mitodel.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/panel_1.csv +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/panel_1.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/panelapp_test_panel.json +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/reduced_mt.bam +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/reduced_mt.bam.bai +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/reference_info.yaml +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/chanjo4_structure.sql +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/en_product9_ages_reduced.xml +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/ensembl_exons_37_reduced.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/ensembl_exons_38_reduced.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/ensembl_genes_37_reduced.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/ensembl_genes_38_reduced.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/ensembl_transcripts_37_reduced.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/ensembl_transcripts_38_reduced.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/forweb_cleaned_exac_r03_march16_z_data_pLI_reduced.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/genemap2_reduced.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/genes_to_phenotype_reduced.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/gnomad.v4.0.constraint_metrics_reduced.tsv +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/hgnc_reduced_set.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/hpo_terms.csv +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/mim2gene_reduced.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/orphadata_en_product4_reduced.xml +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/orphadata_en_product6_reduced.xml +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/phenotype_to_genes_reduced.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/reduced.hpo.obo +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/resources/reduced.phenotype.hpoa +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/rnafusion.load_config.yaml +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/rnafusion_inspector_example.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/rnafusion_report_example.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/scout_example_tumor_only.SV.CNV.sorted.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/scout_example_tumor_only.SV.CNV.sorted.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/scout_example_tumor_only.snv.indel.sorted.vcf.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/scout_example_tumor_only.snv.indel.sorted.vcf.gz.tbi +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/vep104_annotated.vcf +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/demo/vep97_annotated_clnsig_conservation_revel.vcf +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/exceptions/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/exceptions/config.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/exceptions/database.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/exceptions/pedigree.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/exceptions/vcf.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/export/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/export/gene.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/export/panel.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/export/transcript.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/export/variant.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/load/cytoband.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/load/disease.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/load/exon.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/load/hpo.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/load/institute.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/load/report.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/load/transcript.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/log/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/log/handlers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/log/log.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/acmg_evaluation.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/case/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/case/case.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/clinvar.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/disease_term.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/event.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/institute.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/managed_variant.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/panel.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/phenomodel.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/user.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/variant/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/variant/gene.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/variant/transcript.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/models/variant/variant.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/cytoband.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/ensembl.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/exac.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/hgnc.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/hpo_mappings.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/hpo_terms.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/matchmaker.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/mitodel.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/peddy.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/smn.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/callers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/clnsig.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/compound.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/coordinates.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/deleteriousness.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/frequency.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/gene.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/genotype.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/headers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/ids.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/managed_variant.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/models.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/rank_score.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/transcript.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/parse/variant/variant.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/resources/cytoBand_hg19.txt.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/resources/cytoBand_hg38.txt.gz +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/auto.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/alignviewers/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/alignviewers/partial.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/alignviewers/templates/alignviewers/igv_sashimi_viewer.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/alignviewers/templates/alignviewers/utils.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/api/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/api/views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/static/case_images.js +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/static/case_styles.css +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/static/edit_pedigree.js +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/static/madeline.js +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/templates/cases/case_bionano.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/templates/cases/case_report.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/templates/cases/case_sma.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/templates/cases/case_tabular_view.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/templates/cases/chanjo2_form.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/templates/cases/diseases.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/templates/cases/gene_panel.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/templates/cases/index.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/templates/cases/individuals_table.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/templates/cases/institutes_sidebar.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/cases/templates/cases/matchmaker.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/clinvar/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/clinvar/controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/clinvar/form.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/clinvar/static/form_style.css +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/clinvar/templates/clinvar/clinvar_howto.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/clinvar/templates/clinvar/clinvar_submissions.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/clinvar/templates/clinvar/multistep_add_variant.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/clinvar/views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/dashboard/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/dashboard/controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/dashboard/forms.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/dashboard/static/charts.js +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/dashboard/templates/dashboard/dashboard_general.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/dashboard/views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/diagnoses/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/diagnoses/controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/diagnoses/static/diagnoses.js +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/diagnoses/templates/diagnoses/diagnoses.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/diagnoses/templates/diagnoses/disease_term.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/diagnoses/views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/genes/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/genes/controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/genes/templates/genes/gene.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/genes/templates/genes/genes.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/genes/templates/genes/layout.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/genes/views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/forms.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/static/form_scripts.js +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/static/select2_darktheme.css +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/static/timeline_styles.css +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/static/variants_list_scripts.js +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/templates/overview/cases.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/templates/overview/causatives.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/templates/overview/filters.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/templates/overview/gene_variants.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/templates/overview/institute_settings.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/templates/overview/institute_sidebar.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/templates/overview/timeline.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/templates/overview/users.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/templates/overview/utils.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/templates/overview/verified.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/institutes/views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/login/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/login/controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/login/models.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/login/static/aspirant.svg +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/login/static/commander.svg +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/login/static/commissioner.svg +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/login/static/constable.svg +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/login/static/dick_tracy.svg +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/login/static/inspector.svg +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/login/static/sergeant.svg +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/login/static/superintendent.svg +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/login/templates/login/users.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/login/views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/managed_variants/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/managed_variants/controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/managed_variants/forms.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/managed_variants/templates/managed_variants/managed_variants.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/managed_variants/views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/panels/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/panels/controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/panels/templates/panels/gene-edit.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/panels/templates/panels/panel.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/panels/templates/panels/panel_pdf_case_hits.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/panels/templates/panels/panel_pdf_simple.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/panels/templates/panels/panels.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/panels/views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/phenomodels/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/phenomodels/controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/phenomodels/forms.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/phenomodels/templates/phenomodel.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/phenomodels/templates/phenomodels.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/phenomodels/views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/phenotypes/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/phenotypes/controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/phenotypes/templates/phenotypes/hpo_terms.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/phenotypes/views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/GMS-logo-dark.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/file-earmark-x.svg +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-1.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-10.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-11.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-12.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-13.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-14.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-15.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-16.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-17.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-18.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-19.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-2.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-20.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-21.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-22.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-3.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-4.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-5.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-6.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-7.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-8.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-9.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-M.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-X.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/ideograms/chromosome-Y.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/logo-gms.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/logo-karolinska-srgb.jpg +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/logo-karolinska.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/logo-lund-university-hospital.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/logo-scilifelab.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/scout-logo.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/static/swedac-1926-iso17025.png +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/templates/public/index.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/public/views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/templates/variant/buttons.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/templates/variant/cancer-variant.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/templates/variant/gene_disease_relations.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/templates/variant/rank_score_results.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/templates/variant/sanger.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/templates/variant/str-variant-reviewer.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/templates/variant/sv-variant.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/templates/variant/tx_overview.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/templates/variant/utils.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/templates/variant/variant.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/templates/variant/variant_details.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/utils.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variant/verification_controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/forms.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/static/form_scripts.js +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/templates/variants/cancer-sv-variants.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/templates/variants/cancer-variants.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/templates/variants/components.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/templates/variants/fusion-variants.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/templates/variants/indicators.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/templates/variants/mei-variants.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/templates/variants/str-variants.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/templates/variants/sv-variants.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/templates/variants/utils.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/templates/variants/variants.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/blueprints/variants/utils.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/extensions/clinvar_extension.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/static/custom_images.js +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/static/favicon.ico +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/static/humans.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/static/robots.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/templates/bootstrap_global.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/templates/layout.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/templates/report_base.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/templates/utils.html +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/translations/sv/LC_MESSAGES/messages.mo +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/server/translations/sv/LC_MESSAGES/messages.po +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/update/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/update/panel.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/utils/__init__.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/utils/algorithms.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/utils/convert.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/utils/coordinates.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/utils/date.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/utils/dict_utils.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/utils/ensembl_biomart_clients.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/utils/gene.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/utils/handle.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/utils/hgvs.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/utils/link.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout/utils/md5.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout_browser.egg-info/dependency_links.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout_browser.egg-info/not-zip-safe +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout_browser.egg-info/requires.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/scout_browser.egg-info/top_level.txt +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/setup.cfg +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/setup.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_base.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_case_group_handling.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_clinvar.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_connect.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_cytoband.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_diagnosis_handler.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_hpo_handler.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_index_handling.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_load_adapter_case.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_matchmaker.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_panel_handler.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_rank_model.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_update_synopsis +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/adapter/mongo/test_user_handling.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/build/conftest.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/build/test_build_case.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/build/test_build_clnsig.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/build/test_build_disease.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/build/test_build_exon.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/build/test_build_gene.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/build/test_build_hgnc_transcript.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/build/test_build_hpo.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/build/test_build_individual.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/build/test_build_institute.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/build/test_build_panel.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/build/test_build_user.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/build/test_build_variant.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/download/test_download_ensembl_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/download/test_download_exac_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/download/test_download_hgnc_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/download/test_download_hpo_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/download/test_download_omim_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/download/test_download_orpha_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/export/test_export_exons.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/export/test_export_panel_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/load/test_load_cnv_report_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/load/test_load_coverage_qc_report_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/load/test_load_cytoband_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/load/test_load_delivery_report_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/load/test_load_exons_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/load/test_load_panel_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/load/test_load_region_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/load/test_load_report_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/load/test_load_research_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/test_base_command.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/test_delete_case_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/test_index_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/test_serve_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/test_setup_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/test_wipe_database.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/update/test_update_case_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/update/test_update_compounds_cli.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/update/test_update_disease_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/update/test_update_genes_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/update/test_update_groups_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/update/test_update_hpo_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/update/test_update_institute_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/update/test_update_omim_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/update/test_update_panel_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/update/test_update_panelapp_green.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/update/test_update_user_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/view/test_panels_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/view/test_view_aliases_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/view/test_view_collections_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/view/test_view_diseases_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/view/test_view_hgnc.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/view/test_view_hpo_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/view/test_view_index_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/view/test_view_individuals_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/view/test_view_intervals_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/commands/view/test_view_users_cmd.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/export/test_export_variants.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/fixtures/bams/reduced_mt.bam +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/fixtures/peds/clinvar.ped +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/fixtures/vcfs/clinvar.vcf +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/fixtures/vcfs/no_clinvar.vcf +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/load/test_load_diseases.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/load/test_load_hpo.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/load/test_setup_scout.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/models/test_disease_term.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/conftest.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_frequency.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_ids.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_callers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_case.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_clnsig.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_compounds.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_conservation.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_coordinates.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_deleteriousness.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_disease_terms.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_ensembl_exons.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_ensembl_transcripts.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_exac_genes.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_genes.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_genotype.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_headers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_hgnc.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_hpo_mappings.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_hpo_terms.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_managed_variant.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_matchmaker.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_omim.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_orpha.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_panel.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_rank_score.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_transcripts.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/test_parse_variant.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/parse/vcfs/one_cnvnator.vcf +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/alignviewers/test_alignviewers_views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/api/test_api_views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/cases/test_cases_templates.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/cases/test_cases_utils.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/clinvar/test_clinvar_views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/dashboard/test_dashboard_views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/diagnoses/test_diagnoses_views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/genes/test_genes_views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/institutes/test_institute_api.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/login/conftest.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/login/test_controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/login/test_models.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/login/test_views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/managed_variants/test_managed_variants_controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/managed_variants/test_managed_variants_views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/panels/test_panels_controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/panels/test_panels_views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/phenomodels/test_phenomodels_controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/phenomodels/test_phenomodels_views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/phenotypes/conftest.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/phenotypes/test_phenotypes_controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/phenotypes/test_phenotypes_views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/public/test_public_views.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/variant/test_variant_utils.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/variant/test_variant_verification_controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/variants/test_variants_controllers.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/blueprints/variants/test_variants_utils.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/conftest.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/extensions/test_gens_extension.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/extensions/test_loqusdb_exe_extension.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/extensions/test_matchmaker_extension.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/extensions/test_phenopacket_extension.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/test_app.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/server/test_links.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/update/test_update_compounds.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/update/test_update_panel.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/utils/test_algorithms.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/utils/test_convert.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/utils/test_date.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/utils/test_dict_utils.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/utils/test_ensembl_biomart_cients.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/utils/test_ensembl_rest_clients.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/utils/test_hgvs.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/utils/test_link_genes.py +0 -0
- {scout-browser-4.82.2 → scout-browser-4.84}/tests/utils/test_par.py +0 -0
@@ -4,6 +4,47 @@ This project adheres to [Semantic Versioning](http://semver.org/).
|
|
4
4
|
|
5
5
|
About changelog [here](https://keepachangelog.com/en/1.0.0/)
|
6
6
|
|
7
|
+
## [4.84]
|
8
|
+
### Changed
|
9
|
+
- Clearer error message when a loqusdb query fails for an instance that initially connected
|
10
|
+
- Do not load chanjo-report module if not needed and more visible message when it fails loading
|
11
|
+
- Converted the HgncGene class into a Pydantic class
|
12
|
+
- Swap menu open and collapse indicator chevrons - down is now displayed-open, right hidden-closed
|
13
|
+
- Linters and actions now all use python 3.11
|
14
|
+
### Fixed
|
15
|
+
- Safer way to update variant genes and compounds that avoids saving temporary decorators into variants' database documents
|
16
|
+
- Link to HGNC gene report on gene page
|
17
|
+
- Case file load priority so that e.g. SNV get loaded before SV, or clinical before research, for consistent variant_id collisions
|
18
|
+
|
19
|
+
## [4.83]
|
20
|
+
### Added
|
21
|
+
- Edit ACMG classifications from variant page (only for classifications with criteria)
|
22
|
+
- Events for case CLI events (load case, update case, update individual)
|
23
|
+
- Support for loading and displaying local custom IGV tracks
|
24
|
+
- MANE IGV track to be used as a local track for igv.js (see scout demo config file)
|
25
|
+
- Optional separate MT VCFs, for `nf-core/raredisease`
|
26
|
+
### Changed
|
27
|
+
- Avoid passing verbs from CaseHandler - functions for case sample and individual in CaseEventHandler
|
28
|
+
- Hide mtDNA report and coverage report links on case sidebar for cases with WTS data only
|
29
|
+
- Modified OMIM-AUTO gene panel to include genes in both genome builds
|
30
|
+
- Moved chanjo code into a dedicated extension
|
31
|
+
- Optimise the function that collects "match-safe" genes for an institute by avoiding duplicated genes from different panels
|
32
|
+
- Users must actively select "show matching causatives/managed" on a case page to see matching numbers
|
33
|
+
- Upgraded python version from 3.8 to 3.11 in Docker images
|
34
|
+
### Fixed
|
35
|
+
- Fix several tests that relied on number of events after setup to be 0
|
36
|
+
- Removed unused load case function
|
37
|
+
- Artwork logo sync sketch with png and export svg
|
38
|
+
- Clearer exception handling on chanjo-report setup - fail early and visibly
|
39
|
+
- mtDNA report crashing when one or more samples from a case is not in the chanjo database
|
40
|
+
- Case page crashing on missing phenotype terms
|
41
|
+
- ACMG benign modifiers
|
42
|
+
- Speed up tests by caching python env correctly in Github action and adding two more test groups
|
43
|
+
- Agile issue templates were added globally to the CG-org. Adding custom issue templates to avoid exposing customers
|
44
|
+
- PanelApp panel not saving genes with empty `EnsembleGeneIds` list
|
45
|
+
- Speed up checking outdated gene panels
|
46
|
+
- Do not load research variants automatically when loading a case
|
47
|
+
|
7
48
|
## [4.82.2]
|
8
49
|
### Fixed
|
9
50
|
- Warning icon in case pages for individuals where `confirmed_sex` is false
|
@@ -0,0 +1,300 @@
|
|
1
|
+
Metadata-Version: 2.1
|
2
|
+
Name: scout-browser
|
3
|
+
Version: 4.84
|
4
|
+
Summary: Clinical DNA variant visualizer and browser.
|
5
|
+
Home-page: https://github.com/Clinical-Genomics/scout
|
6
|
+
Author: Måns Magnusson
|
7
|
+
Author-email: mans.magnusson@scilifelab.se
|
8
|
+
Classifier: Environment :: Web Environment
|
9
|
+
Classifier: Intended Audience :: Developers
|
10
|
+
Classifier: License :: OSI Approved :: BSD License
|
11
|
+
Classifier: Operating System :: OS Independent
|
12
|
+
Classifier: Programming Language :: Python
|
13
|
+
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
|
14
|
+
Classifier: Topic :: Software Development :: Libraries
|
15
|
+
Classifier: Programming Language :: Python :: 3.6
|
16
|
+
Description-Content-Type: text/markdown
|
17
|
+
Provides-Extra: coverage
|
18
|
+
License-File: LICENSE
|
19
|
+
|
20
|
+
|
21
|
+
<p align="center">
|
22
|
+
<a href="https://Clinical-Genomics.github.io/scout/">
|
23
|
+
<img height="165" width="637" src="artwork/logo-display.png">
|
24
|
+
</a>
|
25
|
+
<h3 align="center">Analyze VCFs and collaborate on solving rare diseases quicker</h3>
|
26
|
+
</p>
|
27
|
+
|
28
|
+
![Build Status - GitHub][actions-build-status]
|
29
|
+
[![PyPI Version][pypi-img]][pypi-url]
|
30
|
+
![GitHub Release Date][github-release-date]
|
31
|
+
[](https://GitHub.com/Clinical-Genomics/scout/commit/)
|
32
|
+
[](https://GitHub.com/Clinical-Genomics/scout/pulse/)
|
33
|
+
[](https://GitHub.com/Clinical-Genomics/scout/commit/)
|
34
|
+
[![GitHub issues-closed][closed-issues-img]][closed-issues-url]
|
35
|
+
[![Average time to resolve an issue][ismaintained-resolve-img]][ismaintained-resolve-url]
|
36
|
+
[![Percentage of issues still open][ismaintained-open-rate-img]][ismaintained-open-rate-url]
|
37
|
+
[![Coverage Status][codecov-img]][codecov-url]
|
38
|
+
[](https://www.codefactor.io/repository/github/clinical-genomics/scout)
|
39
|
+
[![Code style: black][black-image]][black-url]
|
40
|
+
[![Woke][woke-image]][woke-url]
|
41
|
+
|
42
|
+
|
43
|
+
## What is Scout?
|
44
|
+
|
45
|
+
- **Simple** - Analyze variants in a simple to use web interface.
|
46
|
+
- **Aggregation** - Combine results from multiple analyses and VCFs into a centralized database.
|
47
|
+
- **Collaboration** - Write comments and share cases between users and institutes.
|
48
|
+
|
49
|
+
## Documentation
|
50
|
+
|
51
|
+
This README only gives a brief overview of Scout, for a more complete reference, please check out our docs: https://clinical-genomics.github.io/scout .
|
52
|
+
|
53
|
+
## Runnable demo image - does not require installing of software and database
|
54
|
+
|
55
|
+
A simple demo instance of Scout requires the installation of Docker and can be launched either by using the command:
|
56
|
+
`docker-compose up -d` or `make up`.
|
57
|
+
|
58
|
+
The repository includes a Makefile with common shortcuts to simplify setting up and working with Scout. To see a full list and description of these shortcuts run: `make help`.
|
59
|
+
|
60
|
+
This demo is consisting of 3 containers:
|
61
|
+
- a MongoDB instance, on the default port 27017 in the container, mapped to host port 27013
|
62
|
+
- scout-cli --> the Scout command line, connected to the database. Populates the database with demo data
|
63
|
+
- scout-web --> the Scout web app, that serves the app on localhost, port 8000.
|
64
|
+
|
65
|
+
Once the server has started you and open the app in the web browser at the following address: http://localhost:8000/
|
66
|
+
|
67
|
+
The command to stop the demo are either `docker-compose down` or `make down`.
|
68
|
+
|
69
|
+
Instructions on how to run a Scout image connected to your local database or a custom database are present [on this page](docs/admin-guide/containers/container-deploy.md).
|
70
|
+
|
71
|
+
## Installation
|
72
|
+
|
73
|
+
<!-- You can install the latest release of Scout using `pip`:
|
74
|
+
|
75
|
+
```bash
|
76
|
+
pip install scout-browser
|
77
|
+
|
78
|
+
# ... to include optional coverage tools you would use:
|
79
|
+
pip install scout-browser[coverage]
|
80
|
+
```
|
81
|
+
|
82
|
+
If you would like to install Scout for local development: -->
|
83
|
+
|
84
|
+
```bash
|
85
|
+
git clone https://github.com/Clinical-Genomics/scout
|
86
|
+
cd scout
|
87
|
+
pip install --editable .
|
88
|
+
```
|
89
|
+
|
90
|
+
Scout PDF reports are created using [Flask-WeasyPrint](https://pythonhosted.org/Flask-WeasyPrint/). This library requires external dependencies which need be installed separately (namely Cairo and Pango). See platform-specific instructions for Linux, macOS and Windows available on the WeasyPrint installation [pages](https://doc.courtbouillon.org/weasyprint/stable/first_steps.html#installation).
|
91
|
+
|
92
|
+
<b>NB</b>: in order to convert HTML reports into PDF reports, we have recently switched from the WeasyPrint lib to [python-pdfkit](https://github.com/JazzCore/python-pdfkit). For this reason, when upgrading to a Scout version >4.47, you need to install an additional [wkhtmltopdf system library](https://wkhtmltopdf.org/).
|
93
|
+
|
94
|
+
You also need to have an instance of MongoDB running. I've found that it's easiest to do using the official Docker image:
|
95
|
+
|
96
|
+
```bash
|
97
|
+
docker run --name mongo -p 27017:27017 mongo
|
98
|
+
```
|
99
|
+
|
100
|
+
## Usage
|
101
|
+
|
102
|
+
### Demo - requires pip-installing the app in a container and a running instance of mongodb
|
103
|
+
|
104
|
+
Once installed, you can setup Scout by running a few commands using the included command line interface. Given you have a MongoDB server listening on the default port (27017), this is how you would setup a fully working Scout demo:
|
105
|
+
|
106
|
+
```bash
|
107
|
+
scout setup demo
|
108
|
+
```
|
109
|
+
|
110
|
+
This will setup an instance of scout with a database called `scout-demo`. Now run
|
111
|
+
|
112
|
+
```bash
|
113
|
+
scout --demo serve
|
114
|
+
```
|
115
|
+
And play around with the interface. A user has been created with email clark.kent@mail.com so use that address to get access
|
116
|
+
|
117
|
+
### Initialize scout
|
118
|
+
|
119
|
+
To initialize a working instance with all genes, diseases etc run
|
120
|
+
|
121
|
+
```bash
|
122
|
+
scout setup database
|
123
|
+
```
|
124
|
+
|
125
|
+
for more info, run `scout --help`
|
126
|
+
|
127
|
+
The previous command initializes the database with a curated collection of gene definitions with links to OMIM along with HPO phenotype terms. Now we will load some example data. Scout expects the analysis to be accomplished using various gene panels so let's load one and then our first analysis case:
|
128
|
+
|
129
|
+
```bash
|
130
|
+
scout load panel scout/demo/panel_1.txt
|
131
|
+
scout load case scout/demo/643594.config.yaml
|
132
|
+
```
|
133
|
+
|
134
|
+
## Integration with chanjo and chanjo2 for coverage report visualization
|
135
|
+
|
136
|
+
Scout may be configured to visualize coverage reports produced by [Chanjo][chanjo] or [chanjo2][chanjo2]. Instructions on
|
137
|
+
how to enable this feature can be found in the document [chanjo_coverage_integration][chanjo-scout].
|
138
|
+
|
139
|
+
## Integration with loqusdb for integrating local variant frequencies
|
140
|
+
|
141
|
+
Scout may be configured to visualize local variant frequencies monitored by [Loqusdb][loqusdb].
|
142
|
+
Instructions on how to enable this feature can be found in the document
|
143
|
+
[loqusdb integration][loqusdb-scout].
|
144
|
+
|
145
|
+
## Integration with Gens for displaying copy number profiles for variants
|
146
|
+
|
147
|
+
Scout may be configured to link to a local [Gens][gens] installation.
|
148
|
+
Instructions on how to enable this feature can be found in the document
|
149
|
+
[Gens integration][gens-scout].
|
150
|
+
|
151
|
+
## Server setup
|
152
|
+
|
153
|
+
Scout needs a server config to know which databases to connect to etc. Depending on which
|
154
|
+
information you provide you activate different parts of the interface automatically,
|
155
|
+
including user authentication, coverage, and local observations.
|
156
|
+
|
157
|
+
This is an example of the config file:
|
158
|
+
|
159
|
+
```python
|
160
|
+
# scoutconfig.py
|
161
|
+
|
162
|
+
# list of email addresses to send errors to in production
|
163
|
+
ADMINS = ['paul.anderson@magnolia.com']
|
164
|
+
|
165
|
+
MONGO_HOST = 'localhost'
|
166
|
+
MONGO_PORT = 27017
|
167
|
+
MONGO_DBNAME = 'scout'
|
168
|
+
MONGO_USERNAME = 'testUser'
|
169
|
+
MONGO_PASSWORD = 'testPass'
|
170
|
+
|
171
|
+
# enable user authentication using Google OAuth 2.0
|
172
|
+
GOOGLE = dict(
|
173
|
+
client_id="client_id_string.apps.googleusercontent.com",
|
174
|
+
client_secret="client_secret_string",
|
175
|
+
discovery_url="https://accounts.google.com/.well-known/openid-configuration"
|
176
|
+
)
|
177
|
+
|
178
|
+
# enable Phenomizer gene predictions from phenotype terms
|
179
|
+
PHENOMIZER_USERNAME = '???'
|
180
|
+
PHENOMIZER_PASSWORD = '???'
|
181
|
+
|
182
|
+
# enable Chanjo coverage integration
|
183
|
+
SQLALCHEMY_DATABASE_URI = '???'
|
184
|
+
REPORT_LANGUAGE = 'en' # or 'sv'
|
185
|
+
|
186
|
+
# other interesting settings
|
187
|
+
SQLALCHEMY_TRACK_MODIFICATIONS = False # this is essential in production
|
188
|
+
TEMPLATES_AUTO_RELOAD = False # consider turning off in production
|
189
|
+
SECRET_KEY = 'secret key' # override in production!
|
190
|
+
```
|
191
|
+
|
192
|
+
Most of the config settings are optional. A minimal config would consist of SECRET_KEY and MONGO_DBNAME.
|
193
|
+
|
194
|
+
Starting the server in now really easy, for the demo and local development we will use the CLI:
|
195
|
+
|
196
|
+
```bash
|
197
|
+
scout --flask-config config.py serve
|
198
|
+
```
|
199
|
+
|
200
|
+

|
201
|
+
|
202
|
+
### Hosting a production server
|
203
|
+
|
204
|
+
When running the server in production you will likely want to use a proper Python server solution
|
205
|
+
such as Gunicorn.
|
206
|
+
This is also how we can multiprocess the server and use encrypted HTTPS connections.
|
207
|
+
|
208
|
+
```bash
|
209
|
+
SCOUT_CONFIG=./config.py gunicorn --workers 4 --bind 0.0.0.0:8080 scout.server.auto:app
|
210
|
+
```
|
211
|
+
|
212
|
+
For added security and flexibility, we recommend a reverse proxy solution like NGINX.
|
213
|
+
|
214
|
+
### Setting up a user login system
|
215
|
+
Scout currently supports 3 mutually exclusive types of login:
|
216
|
+
- Google authentication via OpenID Connect (OAuth 2.0)
|
217
|
+
- LDAP authentication
|
218
|
+
- Simple authentication using userid and password
|
219
|
+
|
220
|
+
The first 2 solutions are both suitable for a production server. A description on how to set up an advanced login system is available in the [admin guide](docs/admin-guide/login-system.md)
|
221
|
+
|
222
|
+
|
223
|
+
### Integration with Matchmaker Exchange
|
224
|
+
|
225
|
+
Starting from release 4.4, Scout offers integration for patient data sharing via Matchmaker
|
226
|
+
Exchange.
|
227
|
+
General info about Matchmaker and patient matching could be found in [this paper][matchmaker-pub].
|
228
|
+
For a technical guideline of our implementation of Matchmaker Exchange at Clinical Genomics and its
|
229
|
+
integration with Scout check scouts [matchmaker docs][matchmaker-scout].
|
230
|
+
A user-oriented guide describing how to share case and variant data to Matchmaker using Scout can
|
231
|
+
be found [here][matchmaker-scout-sharing].
|
232
|
+
|
233
|
+
|
234
|
+
## Development
|
235
|
+
|
236
|
+
To keep the code base consistent, formatting with [Black](https://github.com/psf/black) is always applied as part of the PR submission process via GitHub Actions. While not strictly required, to avoid confusion, it is suggested that developers apply Black locally.
|
237
|
+
Black defaults to 88 characters per line, we use 100.
|
238
|
+
|
239
|
+
To format all the files in the project run:
|
240
|
+
|
241
|
+
```bash
|
242
|
+
black --line-length 100 .
|
243
|
+
```
|
244
|
+
|
245
|
+
We recommend using Black with [pre-commit](https://github.com/pre-commit/pre-commit).
|
246
|
+
In `.pre-commit-config.yaml` you can find the pre-commit configuration.
|
247
|
+
To enable this configuration run:
|
248
|
+
|
249
|
+
```bash
|
250
|
+
pre-commit install
|
251
|
+
```
|
252
|
+
|
253
|
+
### Test
|
254
|
+
|
255
|
+
To run unit tests:
|
256
|
+
|
257
|
+
```bash
|
258
|
+
pytest
|
259
|
+
```
|
260
|
+
|
261
|
+
|
262
|
+
### Contributing to Scout
|
263
|
+
|
264
|
+
If you want to contribute and make Scout better, you help is very appreciated! Bug reports or
|
265
|
+
feature requests are really helpful and can be submitted via github issues.
|
266
|
+
Feel free to open a pull request to add a new functionality or fixing a bug, we welcome any help,
|
267
|
+
regardless of the amount of code provided or your skills as a programmer.
|
268
|
+
More info on how to contribute to the project and a description of the Scout branching workflow can
|
269
|
+
be found in [CONTRIBUTING](CONTRIBUTING.md).
|
270
|
+
|
271
|
+
|
272
|
+
|
273
|
+
[chanjo]: https://github.com/Clinical-Genomics/chanjo
|
274
|
+
[chanjo2]: https://github.com/Clinical-Genomics/chanjo2
|
275
|
+
[chanjo-scout]: docs/admin-guide/chanjo_coverage_integration.md
|
276
|
+
[loqusdb]: https://github.com/moonso/loqusdb
|
277
|
+
[loqusdb-scout]: docs/admin-guide/loqusdb_integration.md
|
278
|
+
[gens]: https://github.com/Clinical-Genomics-Lund/gens
|
279
|
+
[gens-scout]: docs/admin-guide/gens_integration.md
|
280
|
+
[github-release-date]: https://img.shields.io/github/release-date/Clinical-Genomics/scout
|
281
|
+
[matchmaker-pub]: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC6016856/
|
282
|
+
[matchmaker-scout]: docs/admin-guide/matchmaker_exchange_integration.md
|
283
|
+
[matchmaker-scout-sharing]: docs/user-guide/cases.md#matchmaker-exchange-integration
|
284
|
+
[travis-img]: https://img.shields.io/travis/Clinical-Genomics/scout/develop.svg?style=flat-square
|
285
|
+
[travis-url]: https://travis-ci.org/Clinical-Genomics/scout
|
286
|
+
[pypi-img]: https://img.shields.io/pypi/v/scout-browser.svg?style=flat-square
|
287
|
+
[pypi-url]: https://pypi.python.org/pypi/scout-browser/
|
288
|
+
[ismaintained-resolve-img]: http://isitmaintained.com/badge/resolution/Clinical-Genomics/scout.svg
|
289
|
+
[ismaintained-resolve-url]: http://isitmaintained.com/project/Clinical-Genomics/scout
|
290
|
+
[ismaintained-open-rate-img]: http://isitmaintained.com/badge/open/Clinical-Genomics/scout.svg
|
291
|
+
[ismaintained-open-rate-url]: http://isitmaintained.com/project/Clinical-Genomics/scout
|
292
|
+
[closed-issues-img]: https://img.shields.io/github/issues-closed/Clinical-Genomics/scout.svg
|
293
|
+
[closed-issues-url]: https://GitHub.com/Clinical-Genomics/scout/issues?q=is%3Aissue+is%3Aclosed
|
294
|
+
[codecov-img]: https://codecov.io/gh/Clinical-Genomics/scout/branch/main/graph/badge.svg?token=BOhMTZ4T3c
|
295
|
+
[codecov-url]: https://codecov.io/gh/Clinical-Genomics/scout
|
296
|
+
[actions-build-status]: https://github.com/Clinical-Genomics/scout/actions/workflows/build_and_publish.yml/badge.svg
|
297
|
+
[black-image]: https://img.shields.io/badge/code%20style-black-000000.svg
|
298
|
+
[black-url]: https://github.com/psf/black
|
299
|
+
[woke-image]: https://github.com/Clinical-Genomics/scout/actions/workflows/woke.yml/badge.svg
|
300
|
+
[woke-url]: https://github.com/Clinical-Genomics/scout/actions/workflows/woke.yml
|
@@ -0,0 +1 @@
|
|
1
|
+
__version__ = "4.84"
|
@@ -10,10 +10,11 @@ import pymongo
|
|
10
10
|
from bson import ObjectId
|
11
11
|
|
12
12
|
from scout.build.case import build_case
|
13
|
-
from scout.constants import ACMG_MAP, ID_PROJECTION
|
13
|
+
from scout.constants import ACMG_MAP, FILE_TYPE_MAP, ID_PROJECTION
|
14
14
|
from scout.exceptions import ConfigError, IntegrityError
|
15
15
|
from scout.parse.variant.ids import parse_document_id
|
16
16
|
from scout.utils.algorithms import ui_score
|
17
|
+
from scout.utils.sort import get_load_priority
|
17
18
|
|
18
19
|
LOG = logging.getLogger(__name__)
|
19
20
|
|
@@ -883,44 +884,37 @@ class CaseHandler(object):
|
|
883
884
|
self.evaluated_variants(case_obj["_id"], case_obj["owner"])
|
884
885
|
)
|
885
886
|
|
887
|
+
# load from files
|
886
888
|
files = [
|
887
|
-
{"file_name": "vcf_snv", "variant_type": "clinical", "category": "snv"},
|
888
|
-
{"file_name": "vcf_sv", "variant_type": "clinical", "category": "sv"},
|
889
889
|
{
|
890
|
-
"file_name":
|
891
|
-
"variant_type": "
|
892
|
-
"category": "
|
893
|
-
}
|
894
|
-
|
895
|
-
|
896
|
-
"variant_type": "clinical",
|
897
|
-
"category": "cancer_sv",
|
898
|
-
},
|
899
|
-
{"file_name": "vcf_str", "variant_type": "clinical", "category": "str"},
|
900
|
-
{"file_name": "vcf_mei", "variant_type": "clinical", "category": "mei"},
|
901
|
-
{
|
902
|
-
"file_name": "vcf_fusion",
|
903
|
-
"variant_type": "clinical",
|
904
|
-
"category": "fusion",
|
905
|
-
},
|
890
|
+
"file_name": file_type,
|
891
|
+
"variant_type": FILE_TYPE_MAP[file_type]["variant_type"],
|
892
|
+
"category": FILE_TYPE_MAP[file_type]["category"],
|
893
|
+
}
|
894
|
+
for file_type in FILE_TYPE_MAP.keys()
|
895
|
+
if FILE_TYPE_MAP[file_type]["variant_type"] != "research"
|
906
896
|
]
|
907
897
|
|
898
|
+
# (type, category) tuples are not unique - eg SNV, SNV_MT
|
899
|
+
load_variants = set()
|
908
900
|
try:
|
909
901
|
for vcf_file in files:
|
910
|
-
# Check if file
|
902
|
+
# Check if any file of this kind is configured for case
|
911
903
|
if not case_obj["vcf_files"].get(vcf_file["file_name"]):
|
912
904
|
LOG.debug("didn't find {}, skipping".format(vcf_file["file_name"]))
|
913
905
|
continue
|
906
|
+
load_variants.add((vcf_file["variant_type"], vcf_file["category"]))
|
914
907
|
|
915
|
-
|
916
|
-
|
908
|
+
for variant_type, category in sorted(
|
909
|
+
load_variants,
|
910
|
+
key=lambda tup: get_load_priority(variant_type=tup[0], category=tup[1]),
|
911
|
+
):
|
917
912
|
if update:
|
918
913
|
self.delete_variants(
|
919
914
|
case_id=case_obj["_id"],
|
920
915
|
variant_type=variant_type,
|
921
916
|
category=category,
|
922
917
|
)
|
923
|
-
|
924
918
|
# add variants
|
925
919
|
self.load_variants(
|
926
920
|
case_obj=case_obj,
|
@@ -948,7 +942,7 @@ class CaseHandler(object):
|
|
948
942
|
force_update_case=True,
|
949
943
|
)
|
950
944
|
|
951
|
-
self.
|
945
|
+
self.update_case_cli(case_obj, institute_obj)
|
952
946
|
# update Sanger status for the new inserted variants
|
953
947
|
self.update_case_sanger_variants(institute_obj, case_obj, old_sanger_variants)
|
954
948
|
|
@@ -957,7 +951,7 @@ class CaseHandler(object):
|
|
957
951
|
|
958
952
|
else:
|
959
953
|
LOG.info("Loading case %s into database", case_obj["display_name"])
|
960
|
-
self.
|
954
|
+
self.add_case(case_obj, institute_obj)
|
961
955
|
|
962
956
|
return case_obj
|
963
957
|
|
@@ -972,18 +966,6 @@ class CaseHandler(object):
|
|
972
966
|
"custom_images"
|
973
967
|
].get(variant_category)
|
974
968
|
|
975
|
-
def _add_case(self, case_obj):
|
976
|
-
"""Add a case to the database
|
977
|
-
If the case already exists exception is raised
|
978
|
-
|
979
|
-
Args:
|
980
|
-
case_obj(Case)
|
981
|
-
"""
|
982
|
-
if self.case(case_obj["_id"], projection=ID_PROJECTION):
|
983
|
-
raise IntegrityError("Case %s already exists in database" % case_obj["_id"])
|
984
|
-
|
985
|
-
return self.case_collection.insert_one(case_obj)
|
986
|
-
|
987
969
|
def update_case(self, case_obj, keep_date=False):
|
988
970
|
"""Update a case in the database.
|
989
971
|
While updating the case, it compares the date of the latest analysis (case_obj["analysis_date"]) against
|
@@ -1,10 +1,12 @@
|
|
1
1
|
import logging
|
2
2
|
from collections import Counter
|
3
|
+
from os import getlogin
|
3
4
|
from typing import Dict, List, Optional
|
4
5
|
|
5
6
|
import pymongo
|
6
7
|
|
7
|
-
from scout.constants import CASE_STATUSES, CASE_TAGS
|
8
|
+
from scout.constants import CASE_STATUSES, CASE_TAGS, ID_PROJECTION
|
9
|
+
from scout.exceptions import IntegrityError
|
8
10
|
|
9
11
|
LOG = logging.getLogger(__name__)
|
10
12
|
|
@@ -12,6 +14,100 @@ LOG = logging.getLogger(__name__)
|
|
12
14
|
class CaseEventHandler(object):
|
13
15
|
"""Class to handle case events for the mongo adapter"""
|
14
16
|
|
17
|
+
def get_cli_user(self) -> dict:
|
18
|
+
"""
|
19
|
+
Return a faux CLI user with a login username from OS CLI if it is available.
|
20
|
+
"""
|
21
|
+
try:
|
22
|
+
cli_user_name = getlogin()
|
23
|
+
except OSError:
|
24
|
+
# no controlling terminal
|
25
|
+
cli_user_name = "CLI user"
|
26
|
+
|
27
|
+
return {"_id": "CLI", "name": cli_user_name}
|
28
|
+
|
29
|
+
def add_case(self, case_obj: dict, institute_obj: dict):
|
30
|
+
"""Add a case to the database
|
31
|
+
If the case already exists exception is raised.
|
32
|
+
Add case will only be called from CLI, or tests, so the user will be the faux CLI user with
|
33
|
+
a login username from OS CLI if available.
|
34
|
+
"""
|
35
|
+
if self.case(case_obj["_id"], projection=ID_PROJECTION):
|
36
|
+
raise IntegrityError("Case %s already exists in database" % case_obj["_id"])
|
37
|
+
link = f"/{case_obj['owner']}/{case_obj['display_name']}"
|
38
|
+
|
39
|
+
self.create_event(
|
40
|
+
institute=institute_obj,
|
41
|
+
case=case_obj,
|
42
|
+
user=self.get_cli_user(),
|
43
|
+
link=link,
|
44
|
+
category="case",
|
45
|
+
verb="add_case",
|
46
|
+
subject=case_obj["display_name"],
|
47
|
+
)
|
48
|
+
|
49
|
+
return self.case_collection.insert_one(case_obj)
|
50
|
+
|
51
|
+
def update_case_individual(
|
52
|
+
self, case_obj: dict, user_obj: dict, institute_obj: dict, link: str, keep_date: bool = True
|
53
|
+
):
|
54
|
+
"""Update case with new individual data (age and/or Tissue type) for a case
|
55
|
+
and create an associated event"""
|
56
|
+
self._update_case_component(
|
57
|
+
case_obj, user_obj, institute_obj, link, verb="update_individual", keep_date=keep_date
|
58
|
+
)
|
59
|
+
|
60
|
+
def update_case_sample(
|
61
|
+
self, case_obj: dict, user_obj: dict, institute_obj: dict, link: str, keep_date=True
|
62
|
+
):
|
63
|
+
"""Handle update of sample data data (tissue, tumor_type, tumor_purity) for a cancer case
|
64
|
+
and create an associated event"""
|
65
|
+
self._update_case_component(
|
66
|
+
case_obj, user_obj, institute_obj, link, verb="update_sample", keep_date=keep_date
|
67
|
+
)
|
68
|
+
|
69
|
+
def _update_case_component(
|
70
|
+
self,
|
71
|
+
case_obj: dict,
|
72
|
+
user_obj: Optional[dict],
|
73
|
+
institute_obj: dict,
|
74
|
+
link: str,
|
75
|
+
verb: str,
|
76
|
+
keep_date: bool = True,
|
77
|
+
):
|
78
|
+
"""Update case with new sample data, and create an associated event"""
|
79
|
+
self.update_case(case_obj, keep_date)
|
80
|
+
|
81
|
+
if not user_obj:
|
82
|
+
user_obj = self.get_cli_user()
|
83
|
+
|
84
|
+
self.create_event(
|
85
|
+
institute=institute_obj,
|
86
|
+
case=case_obj,
|
87
|
+
user=user_obj,
|
88
|
+
link=link,
|
89
|
+
category="case",
|
90
|
+
verb=verb,
|
91
|
+
subject=case_obj["display_name"],
|
92
|
+
)
|
93
|
+
|
94
|
+
def update_case_cli(self, case_obj: dict, institute_obj: dict):
|
95
|
+
"""Update case with new case obj, and create an associated CLI user event."""
|
96
|
+
|
97
|
+
link = f"/{case_obj['owner']}/{case_obj['display_name']}"
|
98
|
+
|
99
|
+
self.create_event(
|
100
|
+
institute=institute_obj,
|
101
|
+
case=case_obj,
|
102
|
+
user=self.get_cli_user(),
|
103
|
+
link=link,
|
104
|
+
category="case",
|
105
|
+
verb="update_case",
|
106
|
+
subject=case_obj["display_name"],
|
107
|
+
)
|
108
|
+
|
109
|
+
self.update_case(case_obj)
|
110
|
+
|
15
111
|
def assign(self, institute, case, user, link):
|
16
112
|
"""Assign a user to a case.
|
17
113
|
|
@@ -550,7 +646,7 @@ class CaseEventHandler(object):
|
|
550
646
|
updated_diagnoses = []
|
551
647
|
case_diagnoses = case.get("diagnosis_phenotypes") or []
|
552
648
|
|
553
|
-
if remove
|
649
|
+
if remove: # Remove term from case diagnoses list
|
554
650
|
for case_dia in case_diagnoses:
|
555
651
|
if case_dia.get("disease_id") == disease_id:
|
556
652
|
continue
|