{"id":59845,"name":"data-safe-haven","description":null,"url":"https://github.com/alan-turing-institute/data-safe-haven","last_synced_at":"2025-09-05T15:41:32.596Z","repository":{"id":61584644,"uuid":"139710733","full_name":"alan-turing-institute/data-safe-haven","owner":"alan-turing-institute","description":null,"archived":false,"fork":false,"pushed_at":"2025-09-01T03:50:59.000Z","size":164956,"stargazers_count":66,"open_issues_count":80,"forks_count":16,"subscribers_count":17,"default_branch":"develop","last_synced_at":"2025-09-01T05:53:03.993Z","etag":null,"topics":["data-safe-haven","hacktoberfest","hut23","hut23-1304","hut23-190","hut23-448","hut23-612"],"latest_commit_sha":null,"homepage":"https://data-safe-haven.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alan-turing-institute.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":"CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2018-07-04T11:05:36.000Z","updated_at":"2025-08-11T12:24:09.000Z","dependencies_parsed_at":"2023-09-27T22:06:51.714Z","dependency_job_id":"b93fef59-54c8-4e45-9601-c6e5d9186826","html_url":"https://github.com/alan-turing-institute/data-safe-haven","commit_stats":{"total_commits":5199,"total_committers":56,"mean_commits":92.83928571428571,"dds":0.5529909597999616,"last_synced_commit":"fc4dc129c92f028f5bc02585e6b7208f9061349c"},"previous_names":[],"tags_count":37,"template":false,"template_full_name":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alan-turing-institute","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273779744,"owners_count":25166865,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-05T02:00:09.113Z","response_time":402,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"alan-turing-institute","name":"The Alan Turing Institute","uuid":"18304793","kind":"organization","description":"The UK's national institute for data science and artificial intelligence.","email":"info@turing.ac.uk","website":"https://turing.ac.uk","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/18304793?v=4","repositories_count":477,"last_synced_at":"2024-03-20T20:54:47.403Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/alan-turing-institute","funding_links":[],"total_stars":6118,"followers":null,"following":null,"created_at":"2022-11-09T04:45:51.433Z","updated_at":"2024-03-20T20:56:49.775Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alan-turing-institute","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alan-turing-institute/repositories"},"packages":[{"id":11700259,"name":"github.com/alan-turing-institute/data-safe-haven","ecosystem":"go","description":null,"homepage":null,"licenses":"bsd-3-clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/alan-turing-institute/data-safe-haven","keywords_array":[],"namespace":null,"versions_count":34,"first_release_published_at":"2019-02-22T15:59:31.000Z","latest_release_published_at":"2025-07-18T13:15:31.000Z","latest_release_number":"v5.5.0+incompatible","last_synced_at":"2025-09-01T06:25:13.356Z","created_at":"2025-05-28T10:05:01.443Z","updated_at":"2025-09-01T06:28:23.534Z","registry_url":"https://pkg.go.dev/github.com/alan-turing-institute/data-safe-haven","install_command":"go get github.com/alan-turing-institute/data-safe-haven","documentation_url":"https://pkg.go.dev/github.com/alan-turing-institute/data-safe-haven#section-documentation","metadata":{},"repo_metadata":{"id":61584644,"uuid":"139710733","full_name":"alan-turing-institute/data-safe-haven","owner":"alan-turing-institute","description":null,"archived":false,"fork":false,"pushed_at":"2025-09-01T03:50:59.000Z","size":164956,"stargazers_count":66,"open_issues_count":80,"forks_count":16,"subscribers_count":17,"default_branch":"develop","last_synced_at":"2025-09-01T05:53:03.993Z","etag":null,"topics":["data-safe-haven","hacktoberfest","hut23","hut23-1304","hut23-190","hut23-448","hut23-612"],"latest_commit_sha":null,"homepage":"https://data-safe-haven.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alan-turing-institute.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":"CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":"ROADMAP.md","authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2018-07-04T11:05:36.000Z","updated_at":"2025-08-11T12:24:09.000Z","dependencies_parsed_at":"2023-09-27T22:06:51.714Z","dependency_job_id":"b93fef59-54c8-4e45-9601-c6e5d9186826","html_url":"https://github.com/alan-turing-institute/data-safe-haven","commit_stats":{"total_commits":5199,"total_committers":56,"mean_commits":92.83928571428571,"dds":0.5529909597999616,"last_synced_commit":"fc4dc129c92f028f5bc02585e6b7208f9061349c"},"previous_names":[],"tags_count":36,"template":false,"template_full_name":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alan-turing-institute","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273082158,"owners_count":25042281,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-01T02:00:09.058Z","response_time":120,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"alan-turing-institute","name":"The Alan Turing Institute","uuid":"18304793","kind":"organization","description":"The UK's national institute for data science and artificial intelligence.","email":"info@turing.ac.uk","website":"https://turing.ac.uk","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/18304793?v=4","repositories_count":477,"last_synced_at":"2024-03-20T20:54:47.403Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/alan-turing-institute","funding_links":[],"total_stars":6118,"followers":null,"following":null,"created_at":"2022-11-09T04:45:51.433Z","updated_at":"2024-03-20T20:56:49.775Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alan-turing-institute","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alan-turing-institute/repositories"},"tags":[{"name":"v5.5.0","sha":"9257214bd131f26d57e5a51fc3b9cc8ca75639d0","kind":"commit","published_at":"2025-07-18T13:15:31.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v5.5.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v5.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v5.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.5.0/manifests"},{"name":"v5.4.1","sha":"a800151ba42fd3dca358f7db227eea59288d9a16","kind":"commit","published_at":"2025-04-04T13:25:27.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v5.4.1","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v5.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v5.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.4.1/manifests"},{"name":"v5.4.0","sha":"4e5e077f2cfc5713cb6e0970efe966632f36ab84","kind":"commit","published_at":"2025-03-03T14:36:14.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v5.4.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v5.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v5.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.4.0/manifests"},{"name":"v5.3.1","sha":"4a237a98c4aec244bc5fc3e214f710631873b7c8","kind":"commit","published_at":"2025-01-28T12:17:32.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v5.3.1","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v5.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v5.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.3.1/manifests"},{"name":"v5.3.0","sha":"de563f88cf2c292b704ba033b4c91d9495e2a66e","kind":"commit","published_at":"2025-01-20T14:19:08.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v5.3.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v5.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v5.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.3.0/manifests"},{"name":"v5.2.1","sha":"bf91ec0e40cce1d51d370cf7ba56797b46ddcd23","kind":"commit","published_at":"2025-01-13T11:56:52.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v5.2.1","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v5.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v5.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.2.1/manifests"},{"name":"v5.2.0","sha":"3dfa5ced5e33572e38ee3a60e23e64c1d59a0958","kind":"tag","published_at":"2024-12-05T14:12:42.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v5.2.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v5.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v5.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.2.0/manifests"},{"name":"v5.1.0","sha":"72711c573708b8032b8e15793a05bd794c057016","kind":"commit","published_at":"2024-11-21T15:16:33.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v5.1.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v5.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v5.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.1.0/manifests"},{"name":"v5.0.1","sha":"2e915efe8b4b6446c9ef7702469c99d4aac3fddb","kind":"tag","published_at":"2024-10-24T12:29:03.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v5.0.1","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v5.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v5.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.0.1/manifests"},{"name":"v5.0.0","sha":"3003ca421f3474653666db110c360d1fab5f872c","kind":"tag","published_at":"2024-08-20T15:19:56.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v5.0.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v5.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v5.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.0.0/manifests"},{"name":"v5.0.0-rc2","sha":"996f54f1fdd039fc2372a428fdee911e25baeb11","kind":"tag","published_at":"2024-07-26T13:50:37.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v5.0.0-rc2","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v5.0.0-rc2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v5.0.0-rc2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.0.0-rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.0.0-rc2/manifests"},{"name":"v4.2.2","sha":"008d3469a48e9570efe1b418b154f7d165fc0880","kind":"commit","published_at":"2024-07-15T14:51:18.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.2.2","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v4.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.2.2/manifests"},{"name":"v4.2.1","sha":"bee9fc495a4af8b8b9c33d1f76fafd97744a520d","kind":"commit","published_at":"2024-05-31T14:41:24.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.2.1","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v4.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.2.1/manifests"},{"name":"v4.2.0","sha":"9f6fe58ac788cabab9db9d6e0b770ef42c02df48","kind":"tag","published_at":"2024-03-28T14:26:00.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.2.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v4.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.2.0/manifests"},{"name":"v5.0.0-rc.1","sha":"afb29b42510af9fa261b891348fb08d8baddca2b","kind":"commit","published_at":"2023-09-27T14:05:21.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v5.0.0-rc.1","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v5.0.0-rc.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v5.0.0-rc.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.0.0-rc.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.0.0-rc.1/manifests"},{"name":"v4.1.0","sha":"e9f4a1a05d8ea403a5e436f995c2bb6650c6e9f9","kind":"tag","published_at":"2023-09-06T10:11:16.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.1.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v4.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.1.0/manifests"},{"name":"v4.0.0_docs","sha":"5d691b2ded84583fbc6f7df3d08764cd3e2f7483","kind":"commit","published_at":"2023-05-15T08:32:04.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.0.0_docs","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.0.0_docs","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v4.0.0_docs","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.0_docs","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.0_docs/manifests"},{"name":"v4.0.4","sha":"13fd75169372e004d231b30018853b5051a96642","kind":"commit","published_at":"2023-04-19T09:14:50.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.0.4","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v4.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.4/manifests"},{"name":"v4.0.3","sha":"21d520e530292adeb6c98ec782a9959121dd767b","kind":"commit","published_at":"2023-01-27T08:45:02.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.0.3","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v4.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.3/manifests"},{"name":"v4.0.2","sha":"08eb68503367616dde1d284198b776488d5bb348","kind":"commit","published_at":"2023-01-05T10:06:12.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.0.2","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v4.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.2/manifests"},{"name":"v4.0.1","sha":"af03c91474b736d72b59905ecf8af33cd82dae96","kind":"commit","published_at":"2022-10-24T09:58:07.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.0.1","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v4.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.1/manifests"},{"name":"v4.0.0","sha":"427fbad431ebf218a7bea9973f720a4b8248f884","kind":"commit","published_at":"2022-10-06T10:58:03.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.0.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v4.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.0/manifests"},{"name":"v3.4.0","sha":"692a5e41e79c815aa25c74f6234863a8993ca5dc","kind":"commit","published_at":"2022-02-26T16:43:08.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v3.4.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v3.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v3.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.4.0/manifests"},{"name":"v3.3.1","sha":"ac51a45ffda361565e920c8ea067d7c2544c5fc5","kind":"commit","published_at":"2021-12-10T11:21:25.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v3.3.1","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v3.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v3.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.3.1/manifests"},{"name":"v3.3.0","sha":"2561163a751197a2bba90d83cfe60d7db4e578f9","kind":"commit","published_at":"2021-06-16T12:39:45.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v3.3.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v3.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v3.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.3.0/manifests"},{"name":"v3.2.0","sha":"78c2657f6747d16d3fb07035b0a5d132185493ea","kind":"commit","published_at":"2021-03-23T12:28:26.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v3.2.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v3.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v3.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.2.0/manifests"},{"name":"v3.1.0","sha":"1aea15ef13f551822bb5e72dd0aef417172fa599","kind":"commit","published_at":"2020-07-13T20:07:19.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v3.1.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v3.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.1.0/manifests"},{"name":"v3.0.1-beta","sha":"d6fbbfa315ccc2aca974e5fa58f413f60e2ef58e","kind":"tag","published_at":"2020-07-02T11:42:32.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v3.0.1-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v3.0.1-beta","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v3.0.1-beta","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.0.1-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.0.1-beta/manifests"},{"name":"v3.0.0-beta","sha":"268623218062eb5c072745d8d5048a52cf53298f","kind":"tag","published_at":"2020-07-02T11:18:44.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v3.0.0-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v3.0.0-beta","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v3.0.0-beta","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.0.0-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.0.0-beta/manifests"},{"name":"v2.0.0-beta","sha":"8f5d2d5fe56b75fb148f60961ee3fa0fd886a479","kind":"tag","published_at":"2020-07-01T18:57:34.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v2.0.0-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v2.0.0-beta","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v2.0.0-beta","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v2.0.0-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v2.0.0-beta/manifests"},{"name":"v1.1.0-beta","sha":"dde1bd6a653d30f4d713256601d8831c4832fb8b","kind":"tag","published_at":"2020-07-01T18:57:22.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v1.1.0-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v1.1.0-beta","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v1.1.0-beta","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v1.1.0-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v1.1.0-beta/manifests"},{"name":"v1.0.1-beta","sha":"e892991ce9e43092f420b7e2e8fdb26243450cfa","kind":"tag","published_at":"2020-07-01T18:57:15.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v1.0.1-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v1.0.1-beta","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v1.0.1-beta","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v1.0.1-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v1.0.1-beta/manifests"},{"name":"v1.0.0-beta","sha":"f53a140005db388f60584802b7e4176939a5ecf9","kind":"tag","published_at":"2020-07-01T18:57:08.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v1.0.0-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v1.0.0-beta","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v1.0.0-beta","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v1.0.0-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v1.0.0-beta/manifests"},{"name":"v0.3.0-beta","sha":"8aa46baa5bed5739069974327af04ffd670615f2","kind":"tag","published_at":"2020-07-01T18:56:57.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v0.3.0-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v0.3.0-beta","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v0.3.0-beta","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v0.3.0-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v0.3.0-beta/manifests"},{"name":"v0.2.0-beta","sha":"900c001f4f717751ff23cb01b7ba7b2e30bbb022","kind":"tag","published_at":"2020-07-01T18:56:49.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v0.2.0-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v0.2.0-beta","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v0.2.0-beta","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v0.2.0-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v0.2.0-beta/manifests"},{"name":"v0.1.0-beta","sha":"7bfd757e2113a819a42add6c072de4dbd6fa5c5d","kind":"tag","published_at":"2020-07-01T18:55:56.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v0.1.0-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v0.1.0-beta","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/alan-turing-institute/data-safe-haven@v0.1.0-beta","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v0.1.0-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v0.1.0-beta/manifests"}]},"repo_metadata_updated_at":"2025-09-01T06:28:23.534Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":5.796978855198666,"dependent_packages_count":5.432117933329229,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":5.614548394263947},"purl":"pkg:golang/github.com/alan-turing-institute/data-safe-haven","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/alan-turing-institute/data-safe-haven","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/alan-turing-institute/data-safe-haven","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/alan-turing-institute/data-safe-haven/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-09-01T06:01:33.057Z","issues_count":297,"pull_requests_count":496,"avg_time_to_close_issue":12922363.677083334,"avg_time_to_close_pull_request":644669.6820175438,"issues_closed_count":192,"pull_requests_closed_count":456,"pull_request_authors_count":8,"issue_authors_count":16,"avg_comments_per_issue":3.2794612794612794,"avg_comments_per_pull_request":1.6653225806451613,"merged_pull_requests_count":411,"bot_issues_count":0,"bot_pull_requests_count":181,"past_year_issues_count":92,"past_year_pull_requests_count":238,"past_year_avg_time_to_close_issue":1278153.56,"past_year_avg_time_to_close_pull_request":442483.3714285714,"past_year_issues_closed_count":50,"past_year_pull_requests_closed_count":210,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":2.967391304347826,"past_year_avg_comments_per_pull_request":1.7899159663865547,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":108,"past_year_merged_pull_requests_count":186,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/issues","maintainers":[{"login":"jemrobinson","count":224,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jemrobinson"},{"login":"JimMadge","count":143,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/JimMadge"},{"login":"martintoreilly","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/martintoreilly"}],"active_maintainers":[{"login":"JimMadge","count":61,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/JimMadge"},{"login":"jemrobinson","count":44,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jemrobinson"},{"login":"martintoreilly","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/martintoreilly"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Falan-turing-institute%2Fdata-safe-haven/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Falan-turing-institute%2Fdata-safe-haven/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Falan-turing-institute%2Fdata-safe-haven/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Falan-turing-institute%2Fdata-safe-haven/related_packages","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":1952122,"maintainers_count":0,"namespaces_count":741275,"keywords_count":109185,"github":"golang","metadata":{"funded_packages_count":49011},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2025-09-05T05:14:06.439Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/namespaces"}},{"id":10843182,"name":"data-safe-haven","ecosystem":"pypi","description":"An open-source framework for creating secure environments to analyse sensitive data.","homepage":null,"licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/alan-turing-institute/data-safe-haven","keywords_array":[],"namespace":null,"versions_count":11,"first_release_published_at":"2024-08-29T12:30:30.000Z","latest_release_published_at":"2025-09-04T15:38:54.000Z","latest_release_number":"5.5.1","last_synced_at":"2025-09-04T15:48:32.342Z","created_at":"2024-08-29T12:35:18.775Z","updated_at":"2025-09-04T15:48:32.624Z","registry_url":"https://pypi.org/project/data-safe-haven/","install_command":"pip install data-safe-haven --index-url https://pypi.org/simple","documentation_url":"https://data-safe-haven.readthedocs.io","metadata":{"funding":null,"documentation":"https://data-safe-haven.readthedocs.io","classifiers":["Development Status :: 5 - Production/Stable","Environment :: Console","Intended Audience :: Science/Research","License :: OSI Approved :: BSD License","Operating System :: OS Independent","Programming Language :: Python :: 3","Programming Language :: Python :: 3.12","Topic :: Security","Topic :: System :: Systems Administration"],"normalized_name":"data-safe-haven","project_status":null},"repo_metadata":{"id":61584644,"uuid":"139710733","full_name":"alan-turing-institute/data-safe-haven","owner":"alan-turing-institute","description":null,"archived":false,"fork":false,"pushed_at":"2024-10-29T11:27:42.000Z","size":153252,"stargazers_count":59,"open_issues_count":63,"forks_count":15,"subscribers_count":17,"default_branch":"develop","last_synced_at":"2024-10-29T13:19:47.566Z","etag":null,"topics":["data-safe-haven","hacktoberfest","hut23","hut23-1304","hut23-190","hut23-448","hut23-612"],"latest_commit_sha":null,"homepage":"https://data-safe-haven.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alan-turing-institute.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":"CODEOWNERS","security":".github/security_checklist_template.md","support":null,"governance":null,"roadmap":"ROADMAP.md","authors":null,"dei":null}},"created_at":"2018-07-04T11:05:36.000Z","updated_at":"2024-10-29T11:21:05.000Z","dependencies_parsed_at":"2023-09-27T22:06:51.714Z","dependency_job_id":"b93fef59-54c8-4e45-9601-c6e5d9186826","html_url":"https://github.com/alan-turing-institute/data-safe-haven","commit_stats":{"total_commits":5199,"total_committers":56,"mean_commits":92.83928571428571,"dds":0.5529909597999616,"last_synced_commit":"fc4dc129c92f028f5bc02585e6b7208f9061349c"},"previous_names":[],"tags_count":23,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alan-turing-institute","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222081527,"owners_count":16928110,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"alan-turing-institute","name":"The Alan Turing Institute","uuid":"18304793","kind":"organization","description":"The UK's national institute for data science and artificial intelligence.","email":"info@turing.ac.uk","website":"https://turing.ac.uk","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/18304793?v=4","repositories_count":477,"last_synced_at":"2024-03-20T20:54:47.403Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/alan-turing-institute","funding_links":[],"total_stars":6118,"followers":null,"following":null,"created_at":"2022-11-09T04:45:51.433Z","updated_at":"2024-03-20T20:56:49.775Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alan-turing-institute","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alan-turing-institute/repositories"},"tags":[{"name":"v4.2.0","sha":"9f6fe58ac788cabab9db9d6e0b770ef42c02df48","kind":"tag","published_at":"2024-03-28T14:26:00.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.2.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.2.0/manifests"},{"name":"v5.0.0-rc.1","sha":"afb29b42510af9fa261b891348fb08d8baddca2b","kind":"commit","published_at":"2023-09-27T14:05:21.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v5.0.0-rc.1","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v5.0.0-rc.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.0.0-rc.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v5.0.0-rc.1/manifests"},{"name":"v4.1.0","sha":"e9f4a1a05d8ea403a5e436f995c2bb6650c6e9f9","kind":"tag","published_at":"2023-09-06T10:11:16.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.1.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.1.0/manifests"},{"name":"v4.0.0_docs","sha":"5d691b2ded84583fbc6f7df3d08764cd3e2f7483","kind":"commit","published_at":"2023-05-15T08:32:04.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.0.0_docs","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.0.0_docs","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.0_docs","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.0_docs/manifests"},{"name":"v4.0.4","sha":"13fd75169372e004d231b30018853b5051a96642","kind":"commit","published_at":"2023-04-19T09:14:50.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.0.4","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.4/manifests"},{"name":"v4.0.3","sha":"21d520e530292adeb6c98ec782a9959121dd767b","kind":"commit","published_at":"2023-01-27T08:45:02.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.0.3","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.3/manifests"},{"name":"v4.0.2","sha":"08eb68503367616dde1d284198b776488d5bb348","kind":"commit","published_at":"2023-01-05T10:06:12.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.0.2","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.2/manifests"},{"name":"v4.0.1","sha":"af03c91474b736d72b59905ecf8af33cd82dae96","kind":"commit","published_at":"2022-10-24T09:58:07.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.0.1","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.1/manifests"},{"name":"v4.0.0","sha":"427fbad431ebf218a7bea9973f720a4b8248f884","kind":"commit","published_at":"2022-10-06T10:58:03.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v4.0.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v4.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v4.0.0/manifests"},{"name":"v3.4.0","sha":"692a5e41e79c815aa25c74f6234863a8993ca5dc","kind":"commit","published_at":"2022-02-26T16:43:08.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v3.4.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v3.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.4.0/manifests"},{"name":"v3.3.1","sha":"ac51a45ffda361565e920c8ea067d7c2544c5fc5","kind":"commit","published_at":"2021-12-10T11:21:25.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v3.3.1","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v3.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.3.1/manifests"},{"name":"v3.3.0","sha":"2561163a751197a2bba90d83cfe60d7db4e578f9","kind":"commit","published_at":"2021-06-16T12:39:45.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v3.3.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v3.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.3.0/manifests"},{"name":"v3.2.0","sha":"78c2657f6747d16d3fb07035b0a5d132185493ea","kind":"commit","published_at":"2021-03-23T12:28:26.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v3.2.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v3.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.2.0/manifests"},{"name":"v3.1.0","sha":"1aea15ef13f551822bb5e72dd0aef417172fa599","kind":"commit","published_at":"2020-07-13T20:07:19.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v3.1.0","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.1.0/manifests"},{"name":"v3.0.1-beta","sha":"d6fbbfa315ccc2aca974e5fa58f413f60e2ef58e","kind":"tag","published_at":"2020-07-02T11:42:32.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v3.0.1-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v3.0.1-beta","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.0.1-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.0.1-beta/manifests"},{"name":"v3.0.0-beta","sha":"268623218062eb5c072745d8d5048a52cf53298f","kind":"tag","published_at":"2020-07-02T11:18:44.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v3.0.0-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v3.0.0-beta","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.0.0-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v3.0.0-beta/manifests"},{"name":"v2.0.0-beta","sha":"8f5d2d5fe56b75fb148f60961ee3fa0fd886a479","kind":"tag","published_at":"2020-07-01T18:57:34.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v2.0.0-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v2.0.0-beta","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v2.0.0-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v2.0.0-beta/manifests"},{"name":"v1.1.0-beta","sha":"dde1bd6a653d30f4d713256601d8831c4832fb8b","kind":"tag","published_at":"2020-07-01T18:57:22.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v1.1.0-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v1.1.0-beta","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v1.1.0-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v1.1.0-beta/manifests"},{"name":"v1.0.1-beta","sha":"e892991ce9e43092f420b7e2e8fdb26243450cfa","kind":"tag","published_at":"2020-07-01T18:57:15.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v1.0.1-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v1.0.1-beta","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v1.0.1-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v1.0.1-beta/manifests"},{"name":"v1.0.0-beta","sha":"f53a140005db388f60584802b7e4176939a5ecf9","kind":"tag","published_at":"2020-07-01T18:57:08.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v1.0.0-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v1.0.0-beta","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v1.0.0-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v1.0.0-beta/manifests"},{"name":"v0.3.0-beta","sha":"8aa46baa5bed5739069974327af04ffd670615f2","kind":"tag","published_at":"2020-07-01T18:56:57.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v0.3.0-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v0.3.0-beta","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v0.3.0-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v0.3.0-beta/manifests"},{"name":"v0.2.0-beta","sha":"900c001f4f717751ff23cb01b7ba7b2e30bbb022","kind":"tag","published_at":"2020-07-01T18:56:49.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v0.2.0-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v0.2.0-beta","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v0.2.0-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v0.2.0-beta/manifests"},{"name":"v0.1.0-beta","sha":"7bfd757e2113a819a42add6c072de4dbd6fa5c5d","kind":"tag","published_at":"2020-07-01T18:55:56.000Z","download_url":"https://codeload.github.com/alan-turing-institute/data-safe-haven/tar.gz/v0.1.0-beta","html_url":"https://github.com/alan-turing-institute/data-safe-haven/releases/tag/v0.1.0-beta","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v0.1.0-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/tags/v0.1.0-beta/manifests"}]},"repo_metadata_updated_at":"2024-10-29T16:26:20.763Z","dependent_packages_count":0,"downloads":42,"downloads_period":"last-month","dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":58.63784797601149,"dependent_packages_count":10.416878724217279,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":34.527363350114385},"purl":"pkg:pypi/data-safe-haven","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/data-safe-haven","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/data-safe-haven","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/data-safe-haven/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2024-09-29T17:35:49.582Z","issues_count":191,"pull_requests_count":197,"avg_time_to_close_issue":16342665.80357143,"avg_time_to_close_pull_request":383099.6808510638,"issues_closed_count":112,"pull_requests_closed_count":188,"pull_request_authors_count":6,"issue_authors_count":15,"avg_comments_per_issue":3.2198952879581153,"avg_comments_per_pull_request":1.6852791878172588,"merged_pull_requests_count":171,"bot_issues_count":0,"bot_pull_requests_count":69,"past_year_issues_count":94,"past_year_pull_requests_count":134,"past_year_avg_time_to_close_issue":3210244.789473684,"past_year_avg_time_to_close_pull_request":358204.64,"past_year_issues_closed_count":38,"past_year_pull_requests_closed_count":125,"past_year_pull_request_authors_count":6,"past_year_issue_authors_count":9,"past_year_avg_comments_per_issue":2.648936170212766,"past_year_avg_comments_per_pull_request":1.9701492537313432,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":54,"past_year_merged_pull_requests_count":115,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/issues","maintainers":[{"login":"jemrobinson","count":133,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jemrobinson"},{"login":"JimMadge","count":73,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/JimMadge"},{"login":"martintoreilly","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/martintoreilly"}],"active_maintainers":[{"login":"jemrobinson","count":58,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jemrobinson"},{"login":"JimMadge","count":45,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/JimMadge"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/data-safe-haven/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/data-safe-haven/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/data-safe-haven/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/data-safe-haven/related_packages","maintainers":[{"uuid":"jemrobinson","login":"jemrobinson","name":null,"email":null,"url":null,"packages_count":7,"html_url":"https://pypi.org/user/jemrobinson/","role":null,"created_at":"2024-08-29T12:44:47.542Z","updated_at":"2024-08-29T12:44:47.542Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/jemrobinson/packages"},{"uuid":"craddm","login":"craddm","name":null,"email":null,"url":null,"packages_count":2,"html_url":"https://pypi.org/user/craddm/","role":"Maintainer","created_at":"2025-01-28T15:06:07.462Z","updated_at":"2025-01-28T15:06:07.462Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/craddm/packages"},{"uuid":"JimMadge","login":"JimMadge","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://pypi.org/user/JimMadge/","role":"Maintainer","created_at":"2024-09-29T17:35:35.563Z","updated_at":"2024-09-29T17:35:35.563Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/JimMadge/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":725194,"maintainers_count":308369,"namespaces_count":0,"keywords_count":238006,"github":"pypi","metadata":{"funded_packages_count":50519},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-09-05T05:40:58.860Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}}],"commits":{"id":1338124,"full_name":"alan-turing-institute/data-safe-haven","default_branch":"develop","committers":[{"name":"James Robinson","email":"james.em.robinson@gmail.com","login":"jemrobinson","count":3917},{"name":"Jim Madge","email":"jmadge@turing.ac.uk","login":"JimMadge","count":1542},{"name":"Martin O'Reilly","email":"developer@mtspace.net","login":"martintoreilly","count":1173},{"name":"Matt Craddock","email":"5796417+craddm","login":"craddm","count":949},{"name":"Ed Chalstrey","email":"edwardchalstrey@gmail.com","login":"edwardchalstrey1","count":308},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":122},{"name":"Tom Doel","email":"tom.doel@codechoreography.co.uk","login":"tomdoel","count":83},{"name":"Oscar Giles","email":"ogiles@turing.ac.uk","login":"OscartGiles","count":77},{"name":"James Cunningham","email":"j.a.cunningham@gmail.com","login":"james-c","count":67},{"name":"Daniel","email":"dan@sysd.io","login":null,"count":53},{"name":"Miguel Morin","email":"32396311+miguelmorin","login":"miguelmorin","count":49},{"name":"cathiest","email":"38755168+cathiest","login":"cathiest","count":47},{"name":"Rob Clarke","email":"rob.clarke@coriniumtech.com","login":"RobC-CTL","count":36},{"name":"Carlos Gavidia-Calderon","email":"cgavidia-calderon@turing.ac.uk","login":"cptanalatriste","count":36},{"name":"bw-faststream","email":"54804128+bw-faststream","login":"bw-faststream","count":33},{"name":"wwood","email":"wood@turing.ac.uk","login":null,"count":31},{"name":"warwick26_wood","email":"wwood@turing.ac.uk","login":"warwick26","count":29},{"name":"oforrest","email":"49275282+oforrest","login":"oforrest","count":29},{"name":"James Hetherington","email":"jamespjh@googlemail.com","login":"jamespjh","count":28},{"name":"Kirstie Whitaker","email":"kw401@cam.ac.uk","login":"KirstieJane","count":22},{"name":"Tim Hobson","email":"thobson@turing.ac.uk","login":"thobson88","count":20},{"name":"George Holmes","email":"george.holmes@ensono.com","login":"ens-george-holmes","count":18},{"name":"fedenanni","email":"nanni.federico@gmail.com","login":"fedenanni","count":13},{"name":"Tomas Lazauskas","email":"12182911+tomaslaz","login":"tomaslaz","count":11},{"name":"rwinstanley1","email":"56362072+rwinstanley1","login":"rwinstanley1","count":7},{"name":"Alvaro Cabrejas Egea","email":"a.cabrejas-egea@warwick.ac.uk","login":"ACabrejas","count":6},{"name":"harisood","email":"67151373+harisood","login":"harisood","count":6},{"name":"daniel","email":"dallen@turing.ac.uk","login":"sysdan","count":6},{"name":"icarter2","email":"icarter@turing.ac.uk","login":"getcarter21","count":5},{"name":"JulesMarz","email":"jmanserturing@gmail.com","login":null,"count":4},{"name":"Brett Todd","email":"brett.todd@ensono.com","login":"ens-brett-todd","count":4},{"name":"Diego Arenas","email":"darenasc@gmail.com","login":"darenasc","count":4},{"name":"kevinxufs","email":"48526846+kevinxufs","login":"kevinxufs","count":4},{"name":"vollmersj","email":"s.vollmer.4@warwick.ac.uk","login":"vollmersj","count":3},{"name":"James Hetherington","email":"jhetherington@iMac.local","login":null,"count":3},{"name":"Chris Edsall","email":"chris.edsall@bristol.ac.uk","login":"christopheredsall","count":2},{"name":"Jules M","email":"40864686+JulesMarz","login":"JulesMarz","count":2},{"name":"David Salvador Jasin","email":"dsalvadorjasin@turing.ac.uk","login":"dsj976","count":2},{"name":"Ed Chalstrey","email":"echalstrey@MAC-ATI0379.corp.turing.ac.uk","login":null,"count":2},{"name":"David Beavan","email":"6524799+DavidBeavan","login":"DavidBeavan","count":1},{"name":"callummole","email":"cmole@turing.ac.uk","login":null,"count":1},{"name":"Guillaume Noell","email":"50482094+gn5","login":"gn5","count":1},{"name":"Jack Roberts","email":"jroberts@turing.ac.uk","login":"jack89roberts","count":1}],"total_commits":8757,"total_committers":43,"total_bot_commits":122,"total_bot_committers":1,"mean_commits":203.65116279069767,"dds":0.5527006965855887,"past_year_committers":[{"name":"James Robinson","email":"james.em.robinson@gmail.com","login":"jemrobinson","count":679},{"name":"Jim Madge","email":"jmadge@turing.ac.uk","login":"JimMadge","count":630},{"name":"Matt Craddock","email":"5796417+craddm","login":"craddm","count":504},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":105},{"name":"Carlos Gavidia-Calderon","email":"cgavidia-calderon@turing.ac.uk","login":"cptanalatriste","count":36},{"name":"David Salvador Jasin","email":"dsalvadorjasin@turing.ac.uk","login":"dsj976","count":2}],"past_year_total_commits":1956,"past_year_total_committers":6,"past_year_total_bot_commits":105,"past_year_total_bot_committers":1,"past_year_mean_commits":326.0,"past_year_dds":0.6528629856850716,"last_synced_at":"2025-05-20T13:21:09.021Z","last_synced_commit":"478c55471b2bfc9ec62f0df720cbf1bdda095387","created_at":"2023-09-12T08:00:07.065Z","updated_at":"2025-05-20T13:21:09.047Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-08-27T00:00:29.048Z","repositories_count":5479765,"commits_count":853308191,"contributors_count":31095157,"owners_count":906558,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"alan-turing-institute/data-safe-haven","html_url":"https://github.com/alan-turing-institute/data-safe-haven","last_synced_at":"2025-09-01T09:02:23.937Z","status":null,"issues_count":298,"pull_requests_count":506,"avg_time_to_close_issue":12632137.91919192,"avg_time_to_close_pull_request":642431.8660907127,"issues_closed_count":198,"pull_requests_closed_count":463,"pull_request_authors_count":8,"issue_authors_count":16,"avg_comments_per_issue":3.3557046979865772,"avg_comments_per_pull_request":1.6482213438735178,"merged_pull_requests_count":418,"bot_issues_count":0,"bot_pull_requests_count":186,"past_year_issues_count":92,"past_year_pull_requests_count":239,"past_year_avg_time_to_close_issue":1278153.56,"past_year_avg_time_to_close_pull_request":442483.3714285714,"past_year_issues_closed_count":50,"past_year_pull_requests_closed_count":210,"past_year_pull_request_authors_count":7,"past_year_issue_authors_count":12,"past_year_avg_comments_per_issue":2.967391304347826,"past_year_avg_comments_per_pull_request":1.7824267782426777,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":109,"past_year_merged_pull_requests_count":186,"created_at":"2023-09-12T08:00:43.550Z","updated_at":"2025-09-03T06:37:26.629Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/alan-turing-institute%2Fdata-safe-haven/issues","issue_labels_count":{"bug":96,"enhancement":78,"type: enhancement":45,"type: deployment bug":32,"type: functionality bug":22,"release: non-essential":21,"documentation":21,"good first issue":18,"severity: minor":17,"affected: developers":17,"type: documentation":15,"affected: users":13,"needs decision":13,"release candidate":11,"closing: will not fix":10,"affected: deployment":9,"severity: medium":9,"severity: embarrassing":5,"hotfix":5,"release-candidate":3,"closing: could not reproduce":2,"dependencies":2,"python":2,"type: question":1,"type: workaround":1,"meta: release candidate":1,"closing: duplicate":1},"pull_request_labels_count":{"dependencies":173,"python":124,"severity: minor":104,"type: enhancement":104,"affected: developers":104,"github_actions":42,"enhancement":8,"bug":8,"closing: will not fix":2,"release: non-essential":2,"hotfix":1,"closing: duplicate":1},"issue_author_associations_count":{"MEMBER":225,"CONTRIBUTOR":103,"NONE":44},"pull_request_author_associations_count":{"MEMBER":399,"CONTRIBUTOR":320,"NONE":108},"issue_authors":{"jemrobinson":146,"JimMadge":76,"craddm":64,"edwardchalstrey1":22,"helendduncan":21,"cptanalatriste":10,"dsj976":10,"mattwestby":6,"DDelbarre":3,"martintoreilly":3,"edchapman88":3,"dependabot[bot]":2,"callummole":1,"J0shev":1,"FruityND":1,"llewelld":1,"cmougan":1,"kevinxufs":1},"pull_request_authors":{"jemrobinson":237,"dependabot[bot]":173,"JimMadge":162,"craddm":120,"github-actions[bot]":104,"cptanalatriste":21,"edwardchalstrey1":6,"llewelld":3,"dsj976":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-05T00:00:10.444Z","repositories_count":10083752,"issues_count":31254324,"pull_requests_count":96222393,"authors_count":10694625,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{"bug":48,"enhancement":22,"documentation":12,"release candidate":8,"hotfix":5,"good first issue":5,"needs decision":2,"closing: could not reproduce":1,"closing: will not fix":1,"closing: duplicate":1,"dependencies":1,"python":1},"past_year_pull_request_labels_count":{"dependencies":108,"python":74,"github_actions":34,"affected: developers":22,"severity: minor":22,"type: enhancement":22,"enhancement":3,"hotfix":1},"past_year_issue_author_associations_count":{"MEMBER":36,"CONTRIBUTOR":31,"NONE":31},"past_year_pull_request_author_associations_count":{"CONTRIBUTOR":186,"MEMBER":108,"NONE":25},"past_year_issue_authors":{"JimMadge":25,"craddm":21,"helendduncan":19,"jemrobinson":10,"cptanalatriste":9,"mattwestby":6,"edchapman88":2,"DDelbarre":1,"dependabot[bot]":1,"dsj976":1,"edwardchalstrey1":1,"llewelld":1,"martintoreilly":1},"past_year_pull_request_authors":{"dependabot[bot]":108,"JimMadge":67,"craddm":57,"jemrobinson":41,"github-actions[bot]":22,"cptanalatriste":21,"llewelld":3},"maintainers":[{"login":"jemrobinson","count":383,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jemrobinson"},{"login":"JimMadge","count":238,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/JimMadge"},{"login":"martintoreilly","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/martintoreilly"}],"active_maintainers":[{"login":"JimMadge","count":92,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/JimMadge"},{"login":"jemrobinson","count":51,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jemrobinson"},{"login":"martintoreilly","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/martintoreilly"}]},"events":{"total":{"CreateEvent":107,"ReleaseEvent":7,"IssuesEvent":121,"WatchEvent":7,"DeleteEvent":88,"IssueCommentEvent":476,"PushEvent":346,"PullRequestReviewCommentEvent":278,"PullRequestReviewEvent":362,"PullRequestEvent":305,"ForkEvent":1},"last_year":{"CreateEvent":107,"ReleaseEvent":7,"IssuesEvent":121,"WatchEvent":7,"DeleteEvent":88,"IssueCommentEvent":476,"PushEvent":346,"PullRequestReviewCommentEvent":278,"PullRequestReviewEvent":362,"PullRequestEvent":305,"ForkEvent":1}},"keywords":["data-safe-haven","hacktoberfest","hut23","hut23-1304","hut23-190","hut23-448","hut23-612"],"dependencies":[{"ecosystem":"pypi","filepath":".github/scripts/requirements.txt","sha":null,"kind":"manifest","created_at":"2022-10-19T23:30:13.939Z","updated_at":"2022-10-19T23:30:13.939Z","repository_link":"https://github.com/alan-turing-institute/data-safe-haven/blob/develop/.github/scripts/requirements.txt","dependencies":[{"id":6428969207,"package_name":"lxml","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":6428969208,"package_name":"natsort","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":6428969209,"package_name":"requests","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"docs/build/requirements.txt","sha":null,"kind":"manifest","created_at":"2022-10-19T23:30:14.141Z","updated_at":"2022-10-19T23:30:14.141Z","repository_link":"https://github.com/alan-turing-institute/data-safe-haven/blob/develop/docs/build/requirements.txt","dependencies":[{"id":6428969264,"package_name":"emoji","ecosystem":"pypi","requirements":"==2.1.0","direct":true,"kind":"runtime","optional":false},{"id":6428969265,"package_name":"GitPython","ecosystem":"pypi","requirements":"==3.1.28","direct":true,"kind":"runtime","optional":false},{"id":6428969266,"package_name":"Jinja2","ecosystem":"pypi","requirements":"==3.1.2","direct":true,"kind":"runtime","optional":false},{"id":6428969267,"package_name":"myst-parser","ecosystem":"pypi","requirements":"==0.18.1","direct":true,"kind":"runtime","optional":false},{"id":6428969268,"package_name":"Pygments","ecosystem":"pypi","requirements":"==2.13.0","direct":true,"kind":"runtime","optional":false},{"id":6428969269,"package_name":"pydata-sphinx-theme","ecosystem":"pypi","requirements":"==0.11.0","direct":true,"kind":"runtime","optional":false},{"id":6428969270,"package_name":"rinohtype","ecosystem":"pypi","requirements":"==0.5.4","direct":true,"kind":"runtime","optional":false},{"id":6428969271,"package_name":"rinoh-typeface-symbola","ecosystem":"pypi","requirements":"==0.1.1","direct":true,"kind":"runtime","optional":false},{"id":6428969272,"package_name":"Sphinx","ecosystem":"pypi","requirements":"==5.2.3","direct":true,"kind":"runtime","optional":false}]}],"score":12.551469227172218,"created_at":"2025-09-04T15:51:36.538Z","updated_at":"2025-10-07T08:23:31.124Z","avatar_url":"https://github.com/alan-turing-institute.png","language":"Python","category":null,"sub_category":null,"monthly_downloads":42,"funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":["distribution","standardization","interactive","predictive-modeling","stack","packaging","build-tool","network-simulation","hacking","pipelines"],"project_url":"https://science.ecosyste.ms/api/v1/projects/59845","html_url":"https://science.ecosyste.ms/projects/59845","bibtex_url":"https://science.ecosyste.ms/projects/59845/export.bibtex","apalike_url":"https://science.ecosyste.ms/projects/59845/export.apalike"}