{"id":75973,"name":"kausal-paths","description":"Kausal Paths to predict how the emissions of cities develop","url":"https://github.com/kausaltech/kausal-paths","last_synced_at":"2025-09-08T16:47:46.662Z","repository":{"id":38195378,"uuid":"357565597","full_name":"kausaltech/kausal-paths","owner":"kausaltech","description":"Kausal Paths to predict how the emissions of cities develop","archived":false,"fork":false,"pushed_at":"2025-09-02T09:14:48.000Z","size":6558,"stargazers_count":7,"open_issues_count":14,"forks_count":9,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-09-02T10:22:00.687Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kausaltech.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":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2021-04-13T13:35:29.000Z","updated_at":"2025-09-02T09:09:50.000Z","dependencies_parsed_at":"2023-02-18T07:01:24.477Z","dependency_job_id":"e0b096f9-8c5a-4fb4-bdb3-25fd394a1c2d","html_url":"https://github.com/kausaltech/kausal-paths","commit_stats":{"total_commits":1915,"total_committers":15,"mean_commits":"127.66666666666667","dds":0.5843342036553525,"last_synced_commit":"80ba8cd5d27b09e7b48fdd2c2d0e27c5bebf99cc"},"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"purl":"pkg:github/kausaltech/kausal-paths","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kausaltech%2Fkausal-paths","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kausaltech%2Fkausal-paths/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kausaltech%2Fkausal-paths/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kausaltech%2Fkausal-paths/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kausaltech","download_url":"https://codeload.github.com/kausaltech/kausal-paths/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kausaltech%2Fkausal-paths/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274210600,"owners_count":25241790,"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-08T02:00:09.813Z","response_time":121,"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":"kausaltech","name":"Kausal Tech","uuid":"61085507","kind":"organization","description":"We help cities bridge the gap between climate goals and actions.","email":"info@kausal.tech","website":"https://kausal.tech","location":"Helsinki","twitter":"kausaltech","company":null,"icon_url":"https://avatars.githubusercontent.com/u/61085507?v=4","repositories_count":23,"last_synced_at":"2024-04-24T05:56:58.098Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/kausaltech","funding_links":[],"total_stars":47,"followers":6,"following":0,"created_at":"2022-11-15T23:35:03.324Z","updated_at":"2024-04-24T05:57:01.105Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kausaltech","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kausaltech/repositories"},"packages":[],"commits":{"id":1667925,"full_name":"kausaltech/kausal-paths","default_branch":"main","committers":[{"name":"Jouni Tuomisto","email":"jouni.tuomisto@kausal.tech","login":"jtuomist","count":1081},{"name":"Juha Yrjölä","email":"juha.yrjola@iki.fi","login":"juyrjola","count":826},{"name":"Michael Mechenich","email":"mike.mechenich@gmail.com","login":"mechenich","count":342},{"name":"Bernhard Bliem","email":"bernhard@bliem.xyz","login":"bbliem","count":176},{"name":"Timo Tuominen","email":"tituomin@gmail.com","login":"tituomin","count":145},{"name":"Matias Wargelin","email":"matias.wargelin@kausal.tech","login":"MWargelin","count":91},{"name":"Jan-Erik S.","email":"6697396+Bhavatu","login":"Bhavatu","count":29},{"name":"Joe Smallwood","email":"joe.smallwood@kausal.tech","login":"woodwoerk","count":11},{"name":"Tero Tikkanen","email":"tero.tikkanen@gmail.com","login":"terotik","count":6},{"name":"philippestolz","email":"140815035+philippestolz","login":"philippestolz","count":4},{"name":"adinhodovic","email":"hodovicadin@gmail.com","login":"adinhodovic","count":3},{"name":"DeepL","email":"noreply-mt-deepl@weblate.org","login":null,"count":2},{"name":"Lilia Sviridova","email":"svirivoda@gmail.com","login":"lilia1891","count":1},{"name":"samuelkwijaya-wong","email":"samuel.wijaya@kausal.tech","login":"samuelkwijaya-wong","count":1}],"total_commits":2718,"total_committers":14,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":194.14285714285714,"dds":0.6022810890360559,"past_year_committers":[{"name":"Jouni Tuomisto","email":"jouni.tuomisto@kausal.tech","login":"jtuomist","count":358},{"name":"Michael Mechenich","email":"mike.mechenich@gmail.com","login":"mechenich","count":223},{"name":"Juha Yrjölä","email":"juha.yrjola@iki.fi","login":"juyrjola","count":166},{"name":"Timo Tuominen","email":"tituomin@gmail.com","login":"tituomin","count":103},{"name":"Matias Wargelin","email":"matias.wargelin@kausal.tech","login":"MWargelin","count":78},{"name":"Bernhard Bliem","email":"bernhard@bliem.xyz","login":"bbliem","count":38},{"name":"Jan-Erik S.","email":"6697396+Bhavatu","login":"Bhavatu","count":26},{"name":"Joe Smallwood","email":"joe.smallwood@kausal.tech","login":"woodwoerk","count":2},{"name":"DeepL","email":"noreply-mt-deepl@weblate.org","login":null,"count":2},{"name":"samuelkwijaya-wong","email":"samuel.wijaya@kausal.tech","login":"samuelkwijaya-wong","count":1}],"past_year_total_commits":997,"past_year_total_committers":10,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":99.7,"past_year_dds":0.6409227683049148,"last_synced_at":"2025-08-09T01:30:18.372Z","last_synced_commit":"359e2619c5266548e9444245ea9b61a2ab9caf9e","created_at":"2024-08-28T00:05:46.070Z","updated_at":"2025-08-09T01:30:18.399Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/kausaltech%2Fkausal-paths/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-08-12T00:00:10.817Z","repositories_count":5467315,"commits_count":852229714,"contributors_count":31050911,"owners_count":906205,"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":"kausaltech/kausal-paths","html_url":"https://github.com/kausaltech/kausal-paths","last_synced_at":"2025-09-07T22:17:54.044Z","status":"active","issues_count":11,"pull_requests_count":269,"avg_time_to_close_issue":4443502.333333333,"avg_time_to_close_pull_request":1180150.5251141551,"issues_closed_count":3,"pull_requests_closed_count":219,"pull_request_authors_count":11,"issue_authors_count":3,"avg_comments_per_issue":0.0,"avg_comments_per_pull_request":0.5576208178438662,"merged_pull_requests_count":197,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":1,"past_year_pull_requests_count":200,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":415206.95,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":160,"past_year_pull_request_authors_count":9,"past_year_issue_authors_count":1,"past_year_avg_comments_per_issue":0.0,"past_year_avg_comments_per_pull_request":0.64,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":145,"created_at":"2024-08-28T00:06:17.763Z","updated_at":"2025-09-07T22:17:54.045Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/kausaltech%2Fkausal-paths","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/kausaltech%2Fkausal-paths/issues","issue_labels_count":{"release":3},"pull_request_labels_count":{"enhancement":2},"issue_author_associations_count":{"CONTRIBUTOR":6,"MEMBER":5},"pull_request_author_associations_count":{"CONTRIBUTOR":258,"NONE":11},"issue_authors":{"juyrjola":5,"terotik":5,"MWargelin":1},"pull_request_authors":{"jtuomist":71,"tituomin":49,"Bhavatu":46,"MWargelin":41,"bbliem":23,"mechenich":19,"woodwoerk":10,"rominf":6,"ibrahim-string":2,"samuelkwijaya-wong":1,"lilia1891":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-08T00:00:17.013Z","repositories_count":10168397,"issues_count":32020286,"pull_requests_count":100254366,"authors_count":10730288,"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":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{"CONTRIBUTOR":1},"past_year_pull_request_author_associations_count":{"CONTRIBUTOR":197,"NONE":3},"past_year_issue_authors":{"MWargelin":1},"past_year_pull_request_authors":{"tituomin":49,"Bhavatu":42,"jtuomist":39,"MWargelin":30,"bbliem":21,"mechenich":12,"woodwoerk":4,"ibrahim-string":2,"samuelkwijaya-wong":1},"maintainers":[{"login":"juyrjola","count":5,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/juyrjola"}],"active_maintainers":[]},"events":{"total":{"WatchEvent":1,"DeleteEvent":99,"IssueCommentEvent":76,"PushEvent":1171,"PullRequestReviewCommentEvent":48,"PullRequestReviewEvent":84,"PullRequestEvent":163,"ForkEvent":2,"CreateEvent":110,"CommitCommentEvent":3},"last_year":{"WatchEvent":1,"DeleteEvent":99,"IssueCommentEvent":76,"PushEvent":1171,"PullRequestReviewCommentEvent":48,"PullRequestReviewEvent":84,"PullRequestEvent":163,"ForkEvent":2,"CreateEvent":110,"CommitCommentEvent":3}},"keywords":[],"dependencies":[{"ecosystem":"pypi","filepath":"requirements-dev.in","sha":null,"kind":"manifest","created_at":"2022-08-18T18:10:54.862Z","updated_at":"2022-08-18T18:10:54.862Z","repository_link":"https://github.com/kausaltech/kausal-paths/blob/main/requirements-dev.in","dependencies":[{"id":1931763534,"package_name":"mypy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":1931763535,"package_name":"ipython","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":1931763536,"package_name":"pylint","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":1931763537,"package_name":"pip-tools","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":1931763538,"package_name":"pylint-django","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":1931763539,"package_name":"autopep8","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":1931763540,"package_name":"flake8","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":1931763541,"package_name":"pandas-stubs","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":1931763542,"package_name":"graphene-stubs","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":1931763543,"package_name":"django-stubs","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":1931763544,"package_name":"types-orjson","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false}]},{"ecosystem":"pypi","filepath":"requirements-dev.txt","sha":null,"kind":"manifest","created_at":"2022-08-18T18:10:55.094Z","updated_at":"2022-08-18T18:10:55.094Z","repository_link":"https://github.com/kausaltech/kausal-paths/blob/main/requirements-dev.txt","dependencies":[{"id":1931767912,"package_name":"asgiref","ecosystem":"pypi","requirements":"==3.5.1","direct":true,"kind":"development","optional":false},{"id":1931767913,"package_name":"astroid","ecosystem":"pypi","requirements":"==2.11.4","direct":true,"kind":"development","optional":false},{"id":1931767914,"package_name":"asttokens","ecosystem":"pypi","requirements":"==2.0.5","direct":true,"kind":"development","optional":false},{"id":1931767915,"package_name":"autopep8","ecosystem":"pypi","requirements":"==1.6.0","direct":true,"kind":"development","optional":false},{"id":1931767916,"package_name":"backcall","ecosystem":"pypi","requirements":"==0.2.0","direct":true,"kind":"development","optional":false},{"id":1931767917,"package_name":"click","ecosystem":"pypi","requirements":"==8.1.3","direct":true,"kind":"development","optional":false},{"id":1931767918,"package_name":"decorator","ecosystem":"pypi","requirements":"==5.1.1","direct":true,"kind":"development","optional":false},{"id":1931767919,"package_name":"dill","ecosystem":"pypi","requirements":"==0.3.4","direct":true,"kind":"development","optional":false},{"id":1931767920,"package_name":"django","ecosystem":"pypi","requirements":"==3.2.13","direct":true,"kind":"development","optional":false},{"id":1931767921,"package_name":"django-stubs","ecosystem":"pypi","requirements":"==1.10.1","direct":true,"kind":"development","optional":false},{"id":1931767922,"package_name":"django-stubs-ext","ecosystem":"pypi","requirements":"==0.4.0","direct":true,"kind":"development","optional":false},{"id":1931767923,"package_name":"executing","ecosystem":"pypi","requirements":"==0.8.3","direct":true,"kind":"development","optional":false},{"id":1931767924,"package_name":"flake8","ecosystem":"pypi","requirements":"==4.0.1","direct":true,"kind":"development","optional":false},{"id":1931767925,"package_name":"graphene-stubs","ecosystem":"pypi","requirements":"==0.15","direct":true,"kind":"development","optional":false},{"id":1931767926,"package_name":"ipython","ecosystem":"pypi","requirements":"==8.3.0","direct":true,"kind":"development","optional":false},{"id":1931767927,"package_name":"isort","ecosystem":"pypi","requirements":"==5.10.1","direct":true,"kind":"development","optional":false},{"id":1931767928,"package_name":"jedi","ecosystem":"pypi","requirements":"==0.18.1","direct":true,"kind":"development","optional":false},{"id":1931767929,"package_name":"lazy-object-proxy","ecosystem":"pypi","requirements":"==1.7.1","direct":true,"kind":"development","optional":false},{"id":1931767930,"package_name":"matplotlib-inline","ecosystem":"pypi","requirements":"==0.1.3","direct":true,"kind":"development","optional":false},{"id":1931767931,"package_name":"mccabe","ecosystem":"pypi","requirements":"==0.6.1","direct":true,"kind":"development","optional":false},{"id":1931767932,"package_name":"mypy","ecosystem":"pypi","requirements":"==0.942","direct":true,"kind":"development","optional":false},{"id":1931767933,"package_name":"mypy-extensions","ecosystem":"pypi","requirements":"==0.4.3","direct":true,"kind":"development","optional":false},{"id":1931767934,"package_name":"pandas-stubs","ecosystem":"pypi","requirements":"==1.2.0.58","direct":true,"kind":"development","optional":false},{"id":1931767935,"package_name":"parso","ecosystem":"pypi","requirements":"==0.8.3","direct":true,"kind":"development","optional":false},{"id":1931767936,"package_name":"pep517","ecosystem":"pypi","requirements":"==0.12.0","direct":true,"kind":"development","optional":false},{"id":1931767937,"package_name":"pexpect","ecosystem":"pypi","requirements":"==4.8.0","direct":true,"kind":"development","optional":false},{"id":1931767938,"package_name":"pickleshare","ecosystem":"pypi","requirements":"==0.7.5","direct":true,"kind":"development","optional":false},{"id":1931767939,"package_name":"pip-tools","ecosystem":"pypi","requirements":"==6.6.0","direct":true,"kind":"development","optional":false},{"id":1931767940,"package_name":"platformdirs","ecosystem":"pypi","requirements":"==2.5.2","direct":true,"kind":"development","optional":false},{"id":1931767941,"package_name":"prompt-toolkit","ecosystem":"pypi","requirements":"==3.0.29","direct":true,"kind":"development","optional":false},{"id":1931767942,"package_name":"ptyprocess","ecosystem":"pypi","requirements":"==0.7.0","direct":true,"kind":"development","optional":false},{"id":1931767943,"package_name":"pure-eval","ecosystem":"pypi","requirements":"==0.2.2","direct":true,"kind":"development","optional":false},{"id":1931767944,"package_name":"pycodestyle","ecosystem":"pypi","requirements":"==2.8.0","direct":true,"kind":"development","optional":false},{"id":1931767945,"package_name":"pyflakes","ecosystem":"pypi","requirements":"==2.4.0","direct":true,"kind":"development","optional":false},{"id":1931767946,"package_name":"pygments","ecosystem":"pypi","requirements":"==2.12.0","direct":true,"kind":"development","optional":false},{"id":1931767947,"package_name":"pylint","ecosystem":"pypi","requirements":"==2.13.8","direct":true,"kind":"development","optional":false},{"id":1931767948,"package_name":"pylint-django","ecosystem":"pypi","requirements":"==2.5.3","direct":true,"kind":"development","optional":false},{"id":1931767949,"package_name":"pylint-plugin-utils","ecosystem":"pypi","requirements":"==0.7","direct":true,"kind":"development","optional":false},{"id":1931767950,"package_name":"pytz","ecosystem":"pypi","requirements":"==2022.1","direct":true,"kind":"development","optional":false},{"id":1931767951,"package_name":"six","ecosystem":"pypi","requirements":"==1.16.0","direct":true,"kind":"development","optional":false},{"id":1931767952,"package_name":"sqlparse","ecosystem":"pypi","requirements":"==0.4.2","direct":true,"kind":"development","optional":false},{"id":1931767953,"package_name":"stack-data","ecosystem":"pypi","requirements":"==0.2.0","direct":true,"kind":"development","optional":false},{"id":1931767954,"package_name":"toml","ecosystem":"pypi","requirements":"==0.10.2","direct":true,"kind":"development","optional":false},{"id":1931767955,"package_name":"tomli","ecosystem":"pypi","requirements":"==2.0.1","direct":true,"kind":"development","optional":false},{"id":1931767956,"package_name":"traitlets","ecosystem":"pypi","requirements":"==5.1.1","direct":true,"kind":"development","optional":false},{"id":1931767957,"package_name":"types-orjson","ecosystem":"pypi","requirements":"==3.6.2","direct":true,"kind":"development","optional":false},{"id":1931767958,"package_name":"types-pytz","ecosystem":"pypi","requirements":"==2021.3.7","direct":true,"kind":"development","optional":false},{"id":1931767959,"package_name":"types-pyyaml","ecosystem":"pypi","requirements":"==6.0.7","direct":true,"kind":"development","optional":false},{"id":1931767960,"package_name":"typing-extensions","ecosystem":"pypi","requirements":"==4.2.0","direct":true,"kind":"development","optional":false},{"id":1931767961,"package_name":"wcwidth","ecosystem":"pypi","requirements":"==0.2.5","direct":true,"kind":"development","optional":false},{"id":1931767962,"package_name":"wheel","ecosystem":"pypi","requirements":"==0.37.1","direct":true,"kind":"development","optional":false},{"id":1931767963,"package_name":"wrapt","ecosystem":"pypi","requirements":"==1.14.1","direct":true,"kind":"development","optional":false}]},{"ecosystem":"pypi","filepath":"requirements-kausal.txt","sha":null,"kind":"manifest","created_at":"2022-08-18T18:10:55.367Z","updated_at":"2022-08-18T18:10:55.367Z","repository_link":"https://github.com/kausaltech/kausal-paths/blob/main/requirements-kausal.txt","dependencies":[{"id":1931770319,"package_name":"kausal_paths_extensions","ecosystem":"pypi","requirements":"==0.4.1","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"requirements-prod.in","sha":null,"kind":"manifest","created_at":"2022-08-18T18:10:55.491Z","updated_at":"2022-08-18T18:10:55.491Z","repository_link":"https://github.com/kausaltech/kausal-paths/blob/main/requirements-prod.in","dependencies":[{"id":1931771450,"package_name":"uwsgi","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"requirements-prod.txt","sha":null,"kind":"lockfile","created_at":"2022-08-18T18:10:55.572Z","updated_at":"2022-08-18T18:10:55.572Z","repository_link":"https://github.com/kausaltech/kausal-paths/blob/main/requirements-prod.txt","dependencies":[{"id":1931772918,"package_name":"uwsgi","ecosystem":"pypi","requirements":"==2.0.19.1","direct":false,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"requirements.in","sha":null,"kind":"manifest","created_at":"2022-08-18T18:10:55.691Z","updated_at":"2022-08-18T18:10:55.691Z","repository_link":"https://github.com/kausaltech/kausal-paths/blob/main/requirements.in","dependencies":[{"id":1931774444,"package_name":"psycopg2-binary","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774445,"package_name":"pandas","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774446,"package_name":"python-dotenv","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774447,"package_name":"wagtail","ecosystem":"pypi","requirements":"\u003c2.16","direct":true,"kind":"runtime","optional":false},{"id":1931774448,"package_name":"django","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774449,"package_name":"django-environ","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774450,"package_name":"django-cors-headers","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774451,"package_name":"graphene-django","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774452,"package_name":"graphene-django-optimizer","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774453,"package_name":"sentry_sdk","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774454,"package_name":"djangorestframework","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774455,"package_name":"django-extensions","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774456,"package_name":"scipy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774457,"package_name":"dvc-pandas","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774458,"package_name":"ipython","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774459,"package_name":"numba","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774460,"package_name":"pint","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774461,"package_name":"pint-pandas","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774462,"package_name":"colored","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774463,"package_name":"factory-boy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774464,"package_name":"pytest-django","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774465,"package_name":"pytest-factoryboy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774466,"package_name":"orjson","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774467,"package_name":"redis","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774468,"package_name":"wagtailfontawesome","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774469,"package_name":"django-modeltrans","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774470,"package_name":"rich","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774471,"package_name":"wagtail-grapple","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774472,"package_name":"wagtail-localize","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774473,"package_name":"Babel","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774474,"package_name":"ruamel.yaml","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":1931774475,"package_name":"pygments-graphql","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"requirements.txt","sha":null,"kind":"lockfile","created_at":"2022-08-18T18:10:55.813Z","updated_at":"2022-08-18T18:10:55.813Z","repository_link":"https://github.com/kausaltech/kausal-paths/blob/main/requirements.txt","dependencies":[{"id":1931776126,"package_name":"aiobotocore","ecosystem":"pypi","requirements":"==2.2.0","direct":false,"kind":"runtime","optional":false},{"id":1931776127,"package_name":"aiohttp","ecosystem":"pypi","requirements":"==3.8.1","direct":false,"kind":"runtime","optional":false},{"id":1931776128,"package_name":"aiohttp-retry","ecosystem":"pypi","requirements":"==2.4.6","direct":false,"kind":"runtime","optional":false},{"id":1931776129,"package_name":"aioitertools","ecosystem":"pypi","requirements":"==0.10.0","direct":false,"kind":"runtime","optional":false},{"id":1931776130,"package_name":"aiosignal","ecosystem":"pypi","requirements":"==1.2.0","direct":false,"kind":"runtime","optional":false},{"id":1931776131,"package_name":"aniso8601","ecosystem":"pypi","requirements":"==7.0.0","direct":false,"kind":"runtime","optional":false},{"id":1931776132,"package_name":"anyascii","ecosystem":"pypi","requirements":"==0.3.1","direct":false,"kind":"runtime","optional":false},{"id":1931776133,"package_name":"appdirs","ecosystem":"pypi","requirements":"==1.4.4","direct":false,"kind":"runtime","optional":false},{"id":1931776134,"package_name":"asgiref","ecosystem":"pypi","requirements":"==3.5.1","direct":false,"kind":"runtime","optional":false},{"id":1931776135,"package_name":"asttokens","ecosystem":"pypi","requirements":"==2.0.5","direct":false,"kind":"runtime","optional":false},{"id":1931776136,"package_name":"async-timeout","ecosystem":"pypi","requirements":"==4.0.2","direct":false,"kind":"runtime","optional":false},{"id":1931776137,"package_name":"asyncssh","ecosystem":"pypi","requirements":"==2.10.1","direct":false,"kind":"runtime","optional":false},{"id":1931776138,"package_name":"atpublic","ecosystem":"pypi","requirements":"==3.0.1","direct":false,"kind":"runtime","optional":false},{"id":1931776139,"package_name":"attrs","ecosystem":"pypi","requirements":"==21.4.0","direct":false,"kind":"runtime","optional":false},{"id":1931776140,"package_name":"babel","ecosystem":"pypi","requirements":"==2.10.1","direct":false,"kind":"runtime","optional":false},{"id":1931776141,"package_name":"backcall","ecosystem":"pypi","requirements":"==0.2.0","direct":false,"kind":"runtime","optional":false},{"id":1931776142,"package_name":"beautifulsoup4","ecosystem":"pypi","requirements":"==4.9.3","direct":false,"kind":"runtime","optional":false},{"id":1931776143,"package_name":"boto3","ecosystem":"pypi","requirements":"==1.21.21","direct":false,"kind":"runtime","optional":false},{"id":1931776144,"package_name":"botocore","ecosystem":"pypi","requirements":"==1.24.21","direct":false,"kind":"runtime","optional":false},{"id":1931776145,"package_name":"certifi","ecosystem":"pypi","requirements":"==2021.10.8","direct":false,"kind":"runtime","optional":false},{"id":1931776146,"package_name":"cffi","ecosystem":"pypi","requirements":"==1.15.0","direct":false,"kind":"runtime","optional":false},{"id":1931776147,"package_name":"charset-normalizer","ecosystem":"pypi","requirements":"==2.0.12","direct":false,"kind":"runtime","optional":false},{"id":1931776148,"package_name":"colorama","ecosystem":"pypi","requirements":"==0.4.4","direct":false,"kind":"runtime","optional":false},{"id":1931776149,"package_name":"colored","ecosystem":"pypi","requirements":"==1.4.3","direct":false,"kind":"runtime","optional":false},{"id":1931776150,"package_name":"commonmark","ecosystem":"pypi","requirements":"==0.9.1","direct":false,"kind":"runtime","optional":false},{"id":1931776151,"package_name":"configobj","ecosystem":"pypi","requirements":"==5.0.6","direct":false,"kind":"runtime","optional":false},{"id":1931776152,"package_name":"cryptography","ecosystem":"pypi","requirements":"==37.0.2","direct":false,"kind":"runtime","optional":false},{"id":1931776153,"package_name":"decorator","ecosystem":"pypi","requirements":"==5.1.1","direct":false,"kind":"runtime","optional":false},{"id":1931776154,"package_name":"deprecated","ecosystem":"pypi","requirements":"==1.2.13","direct":false,"kind":"runtime","optional":false},{"id":1931776155,"package_name":"dictdiffer","ecosystem":"pypi","requirements":"==0.9.0","direct":false,"kind":"runtime","optional":false},{"id":1931776156,"package_name":"diskcache","ecosystem":"pypi","requirements":"==5.4.0","direct":false,"kind":"runtime","optional":false},{"id":1931776157,"package_name":"distro","ecosystem":"pypi","requirements":"==1.7.0","direct":false,"kind":"runtime","optional":false},{"id":1931776158,"package_name":"django","ecosystem":"pypi","requirements":"==3.2.13","direct":false,"kind":"runtime","optional":false},{"id":1931776159,"package_name":"django-cors-headers","ecosystem":"pypi","requirements":"==3.11.0","direct":false,"kind":"runtime","optional":false},{"id":1931776160,"package_name":"django-environ","ecosystem":"pypi","requirements":"==0.8.1","direct":false,"kind":"runtime","optional":false},{"id":1931776161,"package_name":"django-extensions","ecosystem":"pypi","requirements":"==3.1.5","direct":false,"kind":"runtime","optional":false},{"id":1931776162,"package_name":"django-filter","ecosystem":"pypi","requirements":"==21.1","direct":false,"kind":"runtime","optional":false},{"id":1931776163,"package_name":"django-modelcluster","ecosystem":"pypi","requirements":"==5.3","direct":false,"kind":"runtime","optional":false},{"id":1931776164,"package_name":"django-modeltrans","ecosystem":"pypi","requirements":"==0.7.2","direct":false,"kind":"runtime","optional":false},{"id":1931776165,"package_name":"django-taggit","ecosystem":"pypi","requirements":"==1.5.1","direct":false,"kind":"runtime","optional":false},{"id":1931776166,"package_name":"django-treebeard","ecosystem":"pypi","requirements":"==4.5.1","direct":false,"kind":"runtime","optional":false},{"id":1931776167,"package_name":"djangorestframework","ecosystem":"pypi","requirements":"==3.13.1","direct":false,"kind":"runtime","optional":false},{"id":1931776168,"package_name":"dpath","ecosystem":"pypi","requirements":"==2.0.6","direct":false,"kind":"runtime","optional":false},{"id":1931776169,"package_name":"draftjs-exporter","ecosystem":"pypi","requirements":"==2.1.7","direct":false,"kind":"runtime","optional":false},{"id":1931776170,"package_name":"dulwich","ecosystem":"pypi","requirements":"==0.20.35","direct":false,"kind":"runtime","optional":false},{"id":1931776171,"package_name":"dvc","ecosystem":"pypi","requirements":"==2.10.2","direct":false,"kind":"runtime","optional":false},{"id":1931776172,"package_name":"dvc-pandas","ecosystem":"pypi","requirements":"==0.0.16","direct":false,"kind":"runtime","optional":false},{"id":1931776173,"package_name":"dvc-render","ecosystem":"pypi","requirements":"==0.0.5","direct":false,"kind":"runtime","optional":false},{"id":1931776174,"package_name":"dvclive","ecosystem":"pypi","requirements":"==0.7.3","direct":false,"kind":"runtime","optional":false},{"id":1931776175,"package_name":"et-xmlfile","ecosystem":"pypi","requirements":"==1.1.0","direct":false,"kind":"runtime","optional":false},{"id":1931776176,"package_name":"executing","ecosystem":"pypi","requirements":"==0.8.3","direct":false,"kind":"runtime","optional":false},{"id":1931776177,"package_name":"factory-boy","ecosystem":"pypi","requirements":"==3.2.1","direct":false,"kind":"runtime","optional":false},{"id":1931776178,"package_name":"faker","ecosystem":"pypi","requirements":"==13.7.0","direct":false,"kind":"runtime","optional":false},{"id":1931776179,"package_name":"fasteners","ecosystem":"pypi","requirements":"==0.17.3","direct":false,"kind":"runtime","optional":false},{"id":1931776180,"package_name":"flatten-dict","ecosystem":"pypi","requirements":"==0.4.2","direct":false,"kind":"runtime","optional":false},{"id":1931776181,"package_name":"flufl-lock","ecosystem":"pypi","requirements":"==7.0","direct":false,"kind":"runtime","optional":false},{"id":1931776182,"package_name":"frozenlist","ecosystem":"pypi","requirements":"==1.3.0","direct":false,"kind":"runtime","optional":false},{"id":1931776183,"package_name":"fsspec","ecosystem":"pypi","requirements":"==2022.3.0","direct":false,"kind":"runtime","optional":false},{"id":1931776184,"package_name":"ftfy","ecosystem":"pypi","requirements":"==6.1.1","direct":false,"kind":"runtime","optional":false},{"id":1931776185,"package_name":"funcy","ecosystem":"pypi","requirements":"==1.17","direct":false,"kind":"runtime","optional":false},{"id":1931776186,"package_name":"future","ecosystem":"pypi","requirements":"==0.18.2","direct":false,"kind":"runtime","optional":false},{"id":1931776187,"package_name":"gitdb","ecosystem":"pypi","requirements":"==4.0.9","direct":false,"kind":"runtime","optional":false},{"id":1931776188,"package_name":"gitpython","ecosystem":"pypi","requirements":"==3.1.27","direct":false,"kind":"runtime","optional":false},{"id":1931776189,"package_name":"grandalf","ecosystem":"pypi","requirements":"==0.6","direct":false,"kind":"runtime","optional":false},{"id":1931776190,"package_name":"graphene","ecosystem":"pypi","requirements":"==2.1.9","direct":false,"kind":"runtime","optional":false},{"id":1931776191,"package_name":"graphene-django","ecosystem":"pypi","requirements":"==2.13.0","direct":false,"kind":"runtime","optional":false},{"id":1931776192,"package_name":"graphene-django-optimizer","ecosystem":"pypi","requirements":"==0.9.1","direct":false,"kind":"runtime","optional":false},{"id":1931776193,"package_name":"graphql-core","ecosystem":"pypi","requirements":"==2.3.2","direct":false,"kind":"runtime","optional":false},{"id":1931776194,"package_name":"graphql-relay","ecosystem":"pypi","requirements":"==2.0.1","direct":false,"kind":"runtime","optional":false},{"id":1931776195,"package_name":"html5lib","ecosystem":"pypi","requirements":"==1.1","direct":false,"kind":"runtime","optional":false},{"id":1931776196,"package_name":"idna","ecosystem":"pypi","requirements":"==3.3","direct":false,"kind":"runtime","optional":false},{"id":1931776197,"package_name":"inflection","ecosystem":"pypi","requirements":"==0.5.1","direct":false,"kind":"runtime","optional":false},{"id":1931776198,"package_name":"iniconfig","ecosystem":"pypi","requirements":"==1.1.1","direct":false,"kind":"runtime","optional":false},{"id":1931776199,"package_name":"ipython","ecosystem":"pypi","requirements":"==8.3.0","direct":false,"kind":"runtime","optional":false},{"id":1931776200,"package_name":"jedi","ecosystem":"pypi","requirements":"==0.18.1","direct":false,"kind":"runtime","optional":false},{"id":1931776201,"package_name":"jmespath","ecosystem":"pypi","requirements":"==1.0.0","direct":false,"kind":"runtime","optional":false},{"id":1931776202,"package_name":"l18n","ecosystem":"pypi","requirements":"==2021.3","direct":false,"kind":"runtime","optional":false},{"id":1931776203,"package_name":"llvmlite","ecosystem":"pypi","requirements":"==0.38.1","direct":false,"kind":"runtime","optional":false},{"id":1931776204,"package_name":"mailchecker","ecosystem":"pypi","requirements":"==4.1.16","direct":false,"kind":"runtime","optional":false},{"id":1931776205,"package_name":"mako","ecosystem":"pypi","requirements":"==1.2.0","direct":false,"kind":"runtime","optional":false},{"id":1931776206,"package_name":"markupsafe","ecosystem":"pypi","requirements":"==2.1.1","direct":false,"kind":"runtime","optional":false},{"id":1931776207,"package_name":"matplotlib-inline","ecosystem":"pypi","requirements":"==0.1.3","direct":false,"kind":"runtime","optional":false},{"id":1931776208,"package_name":"multidict","ecosystem":"pypi","requirements":"==6.0.2","direct":false,"kind":"runtime","optional":false},{"id":1931776209,"package_name":"nanotime","ecosystem":"pypi","requirements":"==0.5.2","direct":false,"kind":"runtime","optional":false},{"id":1931776210,"package_name":"networkx","ecosystem":"pypi","requirements":"==2.8","direct":false,"kind":"runtime","optional":false},{"id":1931776211,"package_name":"numba","ecosystem":"pypi","requirements":"==0.55.2","direct":false,"kind":"runtime","optional":false},{"id":1931776212,"package_name":"numpy","ecosystem":"pypi","requirements":"==1.22.3","direct":false,"kind":"runtime","optional":false},{"id":1931776213,"package_name":"openpyxl","ecosystem":"pypi","requirements":"==3.0.9","direct":false,"kind":"runtime","optional":false},{"id":1931776214,"package_name":"orjson","ecosystem":"pypi","requirements":"==3.6.8","direct":false,"kind":"runtime","optional":false},{"id":1931776215,"package_name":"packaging","ecosystem":"pypi","requirements":"==21.3","direct":false,"kind":"runtime","optional":false},{"id":1931776216,"package_name":"pandas","ecosystem":"pypi","requirements":"==1.4.2","direct":false,"kind":"runtime","optional":false},{"id":1931776217,"package_name":"parso","ecosystem":"pypi","requirements":"==0.8.3","direct":false,"kind":"runtime","optional":false},{"id":1931776218,"package_name":"pathspec","ecosystem":"pypi","requirements":"==0.9.0","direct":false,"kind":"runtime","optional":false},{"id":1931776219,"package_name":"pexpect","ecosystem":"pypi","requirements":"==4.8.0","direct":false,"kind":"runtime","optional":false},{"id":1931776220,"package_name":"phonenumbers","ecosystem":"pypi","requirements":"==8.12.47","direct":false,"kind":"runtime","optional":false},{"id":1931776221,"package_name":"pickleshare","ecosystem":"pypi","requirements":"==0.7.5","direct":false,"kind":"runtime","optional":false},{"id":1931776222,"package_name":"pillow","ecosystem":"pypi","requirements":"==9.1.0","direct":false,"kind":"runtime","optional":false},{"id":1931776223,"package_name":"pint","ecosystem":"pypi","requirements":"==0.19.2","direct":false,"kind":"runtime","optional":false},{"id":1931776224,"package_name":"pint-pandas","ecosystem":"pypi","requirements":"==0.2","direct":false,"kind":"runtime","optional":false},{"id":1931776225,"package_name":"pluggy","ecosystem":"pypi","requirements":"==1.0.0","direct":false,"kind":"runtime","optional":false},{"id":1931776226,"package_name":"polib","ecosystem":"pypi","requirements":"==1.1.1","direct":false,"kind":"runtime","optional":false},{"id":1931776227,"package_name":"promise","ecosystem":"pypi","requirements":"==2.3","direct":false,"kind":"runtime","optional":false},{"id":1931776228,"package_name":"prompt-toolkit","ecosystem":"pypi","requirements":"==3.0.29","direct":false,"kind":"runtime","optional":false},{"id":1931776229,"package_name":"psutil","ecosystem":"pypi","requirements":"==5.9.0","direct":false,"kind":"runtime","optional":false},{"id":1931776230,"package_name":"psycopg2-binary","ecosystem":"pypi","requirements":"==2.9.3","direct":false,"kind":"runtime","optional":false},{"id":1931776231,"package_name":"ptyprocess","ecosystem":"pypi","requirements":"==0.7.0","direct":false,"kind":"runtime","optional":false},{"id":1931776232,"package_name":"pure-eval","ecosystem":"pypi","requirements":"==0.2.2","direct":false,"kind":"runtime","optional":false},{"id":1931776233,"package_name":"py","ecosystem":"pypi","requirements":"==1.11.0","direct":false,"kind":"runtime","optional":false},{"id":1931776234,"package_name":"pyarrow","ecosystem":"pypi","requirements":"==7.0.0","direct":false,"kind":"runtime","optional":false},{"id":1931776235,"package_name":"pycparser","ecosystem":"pypi","requirements":"==2.21","direct":false,"kind":"runtime","optional":false},{"id":1931776236,"package_name":"pydot","ecosystem":"pypi","requirements":"==1.4.2","direct":false,"kind":"runtime","optional":false},{"id":1931776237,"package_name":"pygit2","ecosystem":"pypi","requirements":"==1.9.1","direct":false,"kind":"runtime","optional":false},{"id":1931776238,"package_name":"pygments","ecosystem":"pypi","requirements":"==2.12.0","direct":false,"kind":"runtime","optional":false},{"id":1931776239,"package_name":"pygments-graphql","ecosystem":"pypi","requirements":"==1.0.0","direct":false,"kind":"runtime","optional":false},{"id":1931776240,"package_name":"pygtrie","ecosystem":"pypi","requirements":"==2.4.2","direct":false,"kind":"runtime","optional":false},{"id":1931776241,"package_name":"pyparsing","ecosystem":"pypi","requirements":"==3.0.8","direct":false,"kind":"runtime","optional":false},{"id":1931776242,"package_name":"pytest","ecosystem":"pypi","requirements":"==7.1.2","direct":false,"kind":"runtime","optional":false},{"id":1931776243,"package_name":"pytest-django","ecosystem":"pypi","requirements":"==4.5.2","direct":false,"kind":"runtime","optional":false},{"id":1931776244,"package_name":"pytest-factoryboy","ecosystem":"pypi","requirements":"==2.2.0","direct":false,"kind":"runtime","optional":false},{"id":1931776245,"package_name":"python-benedict","ecosystem":"pypi","requirements":"==0.25.1","direct":false,"kind":"runtime","optional":false},{"id":1931776246,"package_name":"python-dateutil","ecosystem":"pypi","requirements":"==2.8.2","direct":false,"kind":"runtime","optional":false},{"id":1931776247,"package_name":"python-dotenv","ecosystem":"pypi","requirements":"==0.20.0","direct":false,"kind":"runtime","optional":false},{"id":1931776248,"package_name":"python-fsutil","ecosystem":"pypi","requirements":"==0.6.0","direct":false,"kind":"runtime","optional":false},{"id":1931776249,"package_name":"python-slugify","ecosystem":"pypi","requirements":"==6.1.2","direct":false,"kind":"runtime","optional":false},{"id":1931776250,"package_name":"python-snappy","ecosystem":"pypi","requirements":"==0.6.1","direct":false,"kind":"runtime","optional":false},{"id":1931776251,"package_name":"pytz","ecosystem":"pypi","requirements":"==2022.1","direct":false,"kind":"runtime","optional":false},{"id":1931776252,"package_name":"pyyaml","ecosystem":"pypi","requirements":"==6.0","direct":false,"kind":"runtime","optional":false},{"id":1931776253,"package_name":"redis","ecosystem":"pypi","requirements":"==4.2.2","direct":false,"kind":"runtime","optional":false},{"id":1931776254,"package_name":"requests","ecosystem":"pypi","requirements":"==2.27.1","direct":false,"kind":"runtime","optional":false},{"id":1931776255,"package_name":"rich","ecosystem":"pypi","requirements":"==12.3.0","direct":false,"kind":"runtime","optional":false},{"id":1931776256,"package_name":"ruamel-yaml","ecosystem":"pypi","requirements":"==0.17.21","direct":false,"kind":"runtime","optional":false},{"id":1931776257,"package_name":"ruamel-yaml-clib","ecosystem":"pypi","requirements":"==0.2.6","direct":false,"kind":"runtime","optional":false},{"id":1931776258,"package_name":"rx","ecosystem":"pypi","requirements":"==1.6.1","direct":false,"kind":"runtime","optional":false},{"id":1931776259,"package_name":"s3fs","ecosystem":"pypi","requirements":"==2022.3.0","direct":false,"kind":"runtime","optional":false},{"id":1931776260,"package_name":"s3transfer","ecosystem":"pypi","requirements":"==0.5.2","direct":false,"kind":"runtime","optional":false},{"id":1931776261,"package_name":"scipy","ecosystem":"pypi","requirements":"==1.8.0","direct":false,"kind":"runtime","optional":false},{"id":1931776262,"package_name":"scmrepo","ecosystem":"pypi","requirements":"==0.0.19","direct":false,"kind":"runtime","optional":false},{"id":1931776263,"package_name":"sentry-sdk","ecosystem":"pypi","requirements":"==1.5.11","direct":false,"kind":"runtime","optional":false},{"id":1931776264,"package_name":"shortuuid","ecosystem":"pypi","requirements":"==1.0.8","direct":false,"kind":"runtime","optional":false},{"id":1931776265,"package_name":"shtab","ecosystem":"pypi","requirements":"==1.5.4","direct":false,"kind":"runtime","optional":false},{"id":1931776266,"package_name":"singledispatch","ecosystem":"pypi","requirements":"==3.7.0","direct":false,"kind":"runtime","optional":false},{"id":1931776267,"package_name":"six","ecosystem":"pypi","requirements":"==1.16.0","direct":false,"kind":"runtime","optional":false},{"id":1931776268,"package_name":"smmap","ecosystem":"pypi","requirements":"==5.0.0","direct":false,"kind":"runtime","optional":false},{"id":1931776269,"package_name":"soupsieve","ecosystem":"pypi","requirements":"==2.3.2.post1","direct":false,"kind":"runtime","optional":false},{"id":1931776270,"package_name":"sqlparse","ecosystem":"pypi","requirements":"==0.4.2","direct":false,"kind":"runtime","optional":false},{"id":1931776271,"package_name":"stack-data","ecosystem":"pypi","requirements":"==0.2.0","direct":false,"kind":"runtime","optional":false},{"id":1931776272,"package_name":"tablib","ecosystem":"pypi","requirements":"==3.2.1","direct":false,"kind":"runtime","optional":false},{"id":1931776273,"package_name":"tabulate","ecosystem":"pypi","requirements":"==0.8.9","direct":false,"kind":"runtime","optional":false},{"id":1931776274,"package_name":"telepath","ecosystem":"pypi","requirements":"==0.2","direct":false,"kind":"runtime","optional":false},{"id":1931776275,"package_name":"text-unidecode","ecosystem":"pypi","requirements":"==1.3","direct":false,"kind":"runtime","optional":false},{"id":1931776276,"package_name":"toml","ecosystem":"pypi","requirements":"==0.10.2","direct":false,"kind":"runtime","optional":false},{"id":1931776277,"package_name":"tomli","ecosystem":"pypi","requirements":"==2.0.1","direct":false,"kind":"runtime","optional":false},{"id":1931776278,"package_name":"tqdm","ecosystem":"pypi","requirements":"==4.64.0","direct":false,"kind":"runtime","optional":false},{"id":1931776279,"package_name":"traitlets","ecosystem":"pypi","requirements":"==5.1.1","direct":false,"kind":"runtime","optional":false},{"id":1931776280,"package_name":"typing-extensions","ecosystem":"pypi","requirements":"==4.2.0","direct":false,"kind":"runtime","optional":false},{"id":1931776281,"package_name":"unidecode","ecosystem":"pypi","requirements":"==1.3.4","direct":false,"kind":"runtime","optional":false},{"id":1931776282,"package_name":"urllib3","ecosystem":"pypi","requirements":"==1.26.9","direct":false,"kind":"runtime","optional":false},{"id":1931776283,"package_name":"voluptuous","ecosystem":"pypi","requirements":"==0.13.1","direct":false,"kind":"runtime","optional":false},{"id":1931776284,"package_name":"wagtail","ecosystem":"pypi","requirements":"==2.15.5","direct":false,"kind":"runtime","optional":false},{"id":1931776285,"package_name":"wagtail-grapple","ecosystem":"pypi","requirements":"==0.14.1","direct":false,"kind":"runtime","optional":false},{"id":1931776286,"package_name":"wagtail-headless-preview","ecosystem":"pypi","requirements":"==0.2.1","direct":false,"kind":"runtime","optional":false},{"id":1931776287,"package_name":"wagtail-localize","ecosystem":"pypi","requirements":"==1.2","direct":false,"kind":"runtime","optional":false},{"id":1931776288,"package_name":"wagtailfontawesome","ecosystem":"pypi","requirements":"==1.2.1","direct":false,"kind":"runtime","optional":false},{"id":1931776289,"package_name":"wcwidth","ecosystem":"pypi","requirements":"==0.2.5","direct":false,"kind":"runtime","optional":false},{"id":1931776290,"package_name":"webencodings","ecosystem":"pypi","requirements":"==0.5.1","direct":false,"kind":"runtime","optional":false},{"id":1931776291,"package_name":"willow","ecosystem":"pypi","requirements":"==1.4.1","direct":false,"kind":"runtime","optional":false},{"id":1931776292,"package_name":"wrapt","ecosystem":"pypi","requirements":"==1.14.1","direct":false,"kind":"runtime","optional":false},{"id":1931776293,"package_name":"xlrd","ecosystem":"pypi","requirements":"==2.0.1","direct":false,"kind":"runtime","optional":false},{"id":1931776294,"package_name":"xlsxwriter","ecosystem":"pypi","requirements":"==3.0.3","direct":false,"kind":"runtime","optional":false},{"id":1931776295,"package_name":"xlwt","ecosystem":"pypi","requirements":"==1.3.0","direct":false,"kind":"runtime","optional":false},{"id":1931776296,"package_name":"xmltodict","ecosystem":"pypi","requirements":"==0.12.0","direct":false,"kind":"runtime","optional":false},{"id":1931776297,"package_name":"yarl","ecosystem":"pypi","requirements":"==1.7.2","direct":false,"kind":"runtime","optional":false},{"id":1931776298,"package_name":"zc-lockfile","ecosystem":"pypi","requirements":"==2.0","direct":false,"kind":"runtime","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/ci.yaml","sha":null,"kind":"manifest","created_at":"2023-02-18T07:01:21.309Z","updated_at":"2023-02-18T07:01:21.309Z","repository_link":"https://github.com/kausaltech/kausal-paths/blob/main/.github/workflows/ci.yaml","dependencies":[{"id":7756079765,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7756079773,"package_name":"docker/login-action","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"docker","filepath":"docker/app/Dockerfile","sha":null,"kind":"manifest","created_at":"2023-02-18T07:01:22.297Z","updated_at":"2023-02-18T07:01:22.297Z","repository_link":"https://github.com/kausaltech/kausal-paths/blob/main/docker/app/Dockerfile","dependencies":[{"id":7756088563,"package_name":"ubuntu","ecosystem":"docker","requirements":"22.04","direct":true,"kind":"build","optional":false}]},{"ecosystem":"docker","filepath":"docker/db/Dockerfile","sha":null,"kind":"manifest","created_at":"2023-02-18T07:01:23.277Z","updated_at":"2023-02-18T07:01:23.277Z","repository_link":"https://github.com/kausaltech/kausal-paths/blob/main/docker/db/Dockerfile","dependencies":[{"id":7756095348,"package_name":"postgres","ecosystem":"docker","requirements":"13","direct":true,"kind":"build","optional":false}]},{"ecosystem":"docker","filepath":"docker-compose.yml","sha":null,"kind":"manifest","created_at":"2023-02-18T07:01:23.556Z","updated_at":"2023-02-18T07:01:23.556Z","repository_link":"https://github.com/kausaltech/kausal-paths/blob/main/docker-compose.yml","dependencies":[{"id":7756098307,"package_name":"${APP_IMAGE-kausal-paths}","ecosystem":"docker","requirements":"latest","direct":true,"kind":"runtime","optional":false},{"id":7756098075,"package_name":"${REDIS_IMAGE-redis","ecosystem":"docker","requirements":"6.0-alpine}","direct":true,"kind":"runtime","optional":false},{"id":7756097710,"package_name":"${DB_IMAGE-kausal-paths-postgres}","ecosystem":"docker","requirements":"latest","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"requirements-notebook.in","sha":null,"kind":"manifest","created_at":"2023-02-18T07:01:23.824Z","updated_at":"2023-02-18T07:01:23.824Z","repository_link":"https://github.com/kausaltech/kausal-paths/blob/main/requirements-notebook.in","dependencies":[{"id":7756100970,"package_name":"jupyterlab","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":7756100974,"package_name":"jupyterlab-lsp","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":7756101016,"package_name":"python-lsp-server","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":7756101116,"package_name":"seaborn","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"requirements-notebook.txt","sha":null,"kind":"lockfile","created_at":"2023-02-18T07:01:24.077Z","updated_at":"2023-02-18T07:01:24.077Z","repository_link":"https://github.com/kausaltech/kausal-paths/blob/main/requirements-notebook.txt","dependencies":[{"id":7756102567,"package_name":"asttokens","ecosystem":"pypi","requirements":"==2.0.8","direct":false,"kind":"runtime","optional":false},{"id":7756102554,"package_name":"anyio","ecosystem":"pypi","requirements":"==3.6.1","direct":false,"kind":"runtime","optional":false},{"id":7756102559,"package_name":"argon2-cffi","ecosystem":"pypi","requirements":"==21.3.0","direct":false,"kind":"runtime","optional":false},{"id":7756102562,"package_name":"argon2-cffi-bindings","ecosystem":"pypi","requirements":"==21.2.0","direct":false,"kind":"runtime","optional":false},{"id":7756102565,"package_name":"astroid","ecosystem":"pypi","requirements":"==2.12.10","direct":false,"kind":"runtime","optional":false},{"id":7756102569,"package_name":"attrs","ecosystem":"pypi","requirements":"==22.1.0","direct":false,"kind":"runtime","optional":false},{"id":7756102572,"package_name":"autopep8","ecosystem":"pypi","requirements":"==1.6.0","direct":false,"kind":"runtime","optional":false},{"id":7756102574,"package_name":"babel","ecosystem":"pypi","requirements":"==2.10.3","direct":false,"kind":"runtime","optional":false},{"id":7756102576,"package_name":"backcall","ecosystem":"pypi","requirements":"==0.2.0","direct":false,"kind":"runtime","optional":false},{"id":7756102578,"package_name":"beautifulsoup4","ecosystem":"pypi","requirements":"==4.11.1","direct":false,"kind":"runtime","optional":false},{"id":7756102580,"package_name":"bleach","ecosystem":"pypi","requirements":"==5.0.1","direct":false,"kind":"runtime","optional":false},{"id":7756102584,"package_name":"certifi","ecosystem":"pypi","requirements":"==2022.9.24","direct":false,"kind":"runtime","optional":false},{"id":7756102586,"package_name":"cffi","ecosystem":"pypi","requirements":"==1.15.1","direct":false,"kind":"runtime","optional":false},{"id":7756102589,"package_name":"charset-normalizer","ecosystem":"pypi","requirements":"==2.1.1","direct":false,"kind":"runtime","optional":false},{"id":7756102591,"package_name":"debugpy","ecosystem":"pypi","requirements":"==1.6.3","direct":false,"kind":"runtime","optional":false},{"id":7756102594,"package_name":"decorator","ecosystem":"pypi","requirements":"==5.1.1","direct":false,"kind":"runtime","optional":false},{"id":7756102597,"package_name":"defusedxml","ecosystem":"pypi","requirements":"==0.7.1","direct":false,"kind":"runtime","optional":false},{"id":7756102600,"package_name":"dill","ecosystem":"pypi","requirements":"==0.3.5.1","direct":false,"kind":"runtime","optional":false},{"id":7756102602,"package_name":"entrypoints","ecosystem":"pypi","requirements":"==0.4","direct":false,"kind":"runtime","optional":false},{"id":7756102605,"package_name":"executing","ecosystem":"pypi","requirements":"==1.0.0","direct":false,"kind":"runtime","optional":false},{"id":7756102608,"package_name":"fastjsonschema","ecosystem":"pypi","requirements":"==2.16.2","direct":false,"kind":"runtime","optional":false},{"id":7756102610,"package_name":"flake8","ecosystem":"pypi","requirements":"==4.0.1","direct":false,"kind":"runtime","optional":false},{"id":7756102612,"package_name":"idna","ecosystem":"pypi","requirements":"==3.4","direct":false,"kind":"runtime","optional":false},{"id":7756102614,"package_name":"ipykernel","ecosystem":"pypi","requirements":"==6.16.0","direct":false,"kind":"runtime","optional":false},{"id":7756102617,"package_name":"ipython","ecosystem":"pypi","requirements":"==8.5.0","direct":false,"kind":"runtime","optional":false},{"id":7756102619,"package_name":"ipython-genutils","ecosystem":"pypi","requirements":"==0.2.0","direct":false,"kind":"runtime","optional":false},{"id":7756102621,"package_name":"isort","ecosystem":"pypi","requirements":"==5.10.1","direct":false,"kind":"runtime","optional":false},{"id":7756102624,"package_name":"jedi","ecosystem":"pypi","requirements":"==0.18.1","direct":false,"kind":"runtime","optional":false},{"id":7756102846,"package_name":"jinja2","ecosystem":"pypi","requirements":"==3.1.2","direct":false,"kind":"runtime","optional":false},{"id":7756102850,"package_name":"json5","ecosystem":"pypi","requirements":"==0.9.10","direct":false,"kind":"runtime","optional":false},{"id":7756102851,"package_name":"jsonschema","ecosystem":"pypi","requirements":"==4.16.0","direct":false,"kind":"runtime","optional":false},{"id":7756102852,"package_name":"jupyter-client","ecosystem":"pypi","requirements":"==7.3.5","direct":false,"kind":"runtime","optional":false},{"id":7756102853,"package_name":"jupyter-core","ecosystem":"pypi","requirements":"==4.11.1","direct":false,"kind":"runtime","optional":false},{"id":7756102855,"package_name":"jupyter-lsp","ecosystem":"pypi","requirements":"==1.5.1","direct":false,"kind":"runtime","optional":false},{"id":7756103024,"package_name":"jupyter-server","ecosystem":"pypi","requirements":"==1.19.1","direct":false,"kind":"runtime","optional":false},{"id":7756103025,"package_name":"jupyterlab","ecosystem":"pypi","requirements":"==3.4.7","direct":false,"kind":"runtime","optional":false},{"id":7756103027,"package_name":"jupyterlab-lsp","ecosystem":"pypi","requirements":"==3.10.2","direct":false,"kind":"runtime","optional":false},{"id":7756103028,"package_name":"jupyterlab-pygments","ecosystem":"pypi","requirements":"==0.2.2","direct":false,"kind":"runtime","optional":false},{"id":7756103047,"package_name":"jupyterlab-server","ecosystem":"pypi","requirements":"==2.15.2","direct":false,"kind":"runtime","optional":false},{"id":7756103059,"package_name":"lazy-object-proxy","ecosystem":"pypi","requirements":"==1.7.1","direct":false,"kind":"runtime","optional":false},{"id":7756103060,"package_name":"lxml","ecosystem":"pypi","requirements":"==4.9.1","direct":false,"kind":"runtime","optional":false},{"id":7756103061,"package_name":"markupsafe","ecosystem":"pypi","requirements":"==2.1.1","direct":false,"kind":"runtime","optional":false},{"id":7756103062,"package_name":"matplotlib-inline","ecosystem":"pypi","requirements":"==0.1.6","direct":false,"kind":"runtime","optional":false},{"id":7756103063,"package_name":"mccabe","ecosystem":"pypi","requirements":"==0.6.1","direct":false,"kind":"runtime","optional":false},{"id":7756103065,"package_name":"mistune","ecosystem":"pypi","requirements":"==2.0.4","direct":false,"kind":"runtime","optional":false},{"id":7756103073,"package_name":"nbclassic","ecosystem":"pypi","requirements":"==0.4.4","direct":false,"kind":"runtime","optional":false},{"id":7756103074,"package_name":"nbclient","ecosystem":"pypi","requirements":"==0.6.8","direct":false,"kind":"runtime","optional":false},{"id":7756103075,"package_name":"nbconvert","ecosystem":"pypi","requirements":"==7.0.0","direct":false,"kind":"runtime","optional":false},{"id":7756103076,"package_name":"nbformat","ecosystem":"pypi","requirements":"==5.6.1","direct":false,"kind":"runtime","optional":false},{"id":7756103077,"package_name":"nest-asyncio","ecosystem":"pypi","requirements":"==1.5.6","direct":false,"kind":"runtime","optional":false},{"id":7756103078,"package_name":"notebook","ecosystem":"pypi","requirements":"==6.4.12","direct":false,"kind":"runtime","optional":false},{"id":7756103079,"package_name":"notebook-shim","ecosystem":"pypi","requirements":"==0.1.0","direct":false,"kind":"runtime","optional":false},{"id":7756103080,"package_name":"packaging","ecosystem":"pypi","requirements":"==21.3","direct":false,"kind":"runtime","optional":false},{"id":7756103081,"package_name":"pandocfilters","ecosystem":"pypi","requirements":"==1.5.0","direct":false,"kind":"runtime","optional":false},{"id":7756103082,"package_name":"parso","ecosystem":"pypi","requirements":"==0.8.3","direct":false,"kind":"runtime","optional":false},{"id":7756103083,"package_name":"pexpect","ecosystem":"pypi","requirements":"==4.8.0","direct":false,"kind":"runtime","optional":false},{"id":7756103084,"package_name":"pickleshare","ecosystem":"pypi","requirements":"==0.7.5","direct":false,"kind":"runtime","optional":false},{"id":7756103085,"package_name":"platformdirs","ecosystem":"pypi","requirements":"==2.5.2","direct":false,"kind":"runtime","optional":false},{"id":7756103086,"package_name":"pluggy","ecosystem":"pypi","requirements":"==1.0.0","direct":false,"kind":"runtime","optional":false},{"id":7756103087,"package_name":"prometheus-client","ecosystem":"pypi","requirements":"==0.14.1","direct":false,"kind":"runtime","optional":false},{"id":7756103088,"package_name":"prompt-toolkit","ecosystem":"pypi","requirements":"==3.0.31","direct":false,"kind":"runtime","optional":false},{"id":7756103089,"package_name":"psutil","ecosystem":"pypi","requirements":"==5.9.2","direct":false,"kind":"runtime","optional":false},{"id":7756103158,"package_name":"ptyprocess","ecosystem":"pypi","requirements":"==0.7.0","direct":false,"kind":"runtime","optional":false},{"id":7756103159,"package_name":"pure-eval","ecosystem":"pypi","requirements":"==0.2.2","direct":false,"kind":"runtime","optional":false},{"id":7756103160,"package_name":"pycodestyle","ecosystem":"pypi","requirements":"==2.8.0","direct":false,"kind":"runtime","optional":false},{"id":7756103161,"package_name":"pycparser","ecosystem":"pypi","requirements":"==2.21","direct":false,"kind":"runtime","optional":false},{"id":7756103163,"package_name":"pydocstyle","ecosystem":"pypi","requirements":"==6.1.1","direct":false,"kind":"runtime","optional":false},{"id":7756103164,"package_name":"pyflakes","ecosystem":"pypi","requirements":"==2.4.0","direct":false,"kind":"runtime","optional":false},{"id":7756103166,"package_name":"pygments","ecosystem":"pypi","requirements":"==2.13.0","direct":false,"kind":"runtime","optional":false},{"id":7756103168,"package_name":"pylint","ecosystem":"pypi","requirements":"==2.15.3","direct":false,"kind":"runtime","optional":false},{"id":7756103170,"package_name":"pyparsing","ecosystem":"pypi","requirements":"==3.0.9","direct":false,"kind":"runtime","optional":false},{"id":7756103183,"package_name":"pyrsistent","ecosystem":"pypi","requirements":"==0.18.1","direct":false,"kind":"runtime","optional":false},{"id":7756103185,"package_name":"python-dateutil","ecosystem":"pypi","requirements":"==2.8.2","direct":false,"kind":"runtime","optional":false},{"id":7756103211,"package_name":"python-lsp-jsonrpc","ecosystem":"pypi","requirements":"==1.0.0","direct":false,"kind":"runtime","optional":false},{"id":7756103370,"package_name":"python-lsp-server","ecosystem":"pypi","requirements":"==1.5.0","direct":false,"kind":"runtime","optional":false},{"id":7756103371,"package_name":"pytoolconfig","ecosystem":"pypi","requirements":"==1.2.2","direct":false,"kind":"runtime","optional":false},{"id":7756103372,"package_name":"pytz","ecosystem":"pypi","requirements":"==2022.2.1","direct":false,"kind":"runtime","optional":false},{"id":7756103373,"package_name":"pyzmq","ecosystem":"pypi","requirements":"==24.0.1","direct":false,"kind":"runtime","optional":false},{"id":7756103374,"package_name":"requests","ecosystem":"pypi","requirements":"==2.28.1","direct":false,"kind":"runtime","optional":false},{"id":7756103375,"package_name":"rope","ecosystem":"pypi","requirements":"==1.3.0","direct":false,"kind":"runtime","optional":false},{"id":7756103376,"package_name":"send2trash","ecosystem":"pypi","requirements":"==1.8.0","direct":false,"kind":"runtime","optional":false},{"id":7756103377,"package_name":"six","ecosystem":"pypi","requirements":"==1.16.0","direct":false,"kind":"runtime","optional":false},{"id":7756103379,"package_name":"sniffio","ecosystem":"pypi","requirements":"==1.3.0","direct":false,"kind":"runtime","optional":false},{"id":7756103381,"package_name":"snowballstemmer","ecosystem":"pypi","requirements":"==2.2.0","direct":false,"kind":"runtime","optional":false},{"id":7756103409,"package_name":"soupsieve","ecosystem":"pypi","requirements":"==2.3.2.post1","direct":false,"kind":"runtime","optional":false},{"id":7756103410,"package_name":"stack-data","ecosystem":"pypi","requirements":"==0.5.0","direct":false,"kind":"runtime","optional":false},{"id":7756103411,"package_name":"terminado","ecosystem":"pypi","requirements":"==0.16.0","direct":false,"kind":"runtime","optional":false},{"id":7756103413,"package_name":"tinycss2","ecosystem":"pypi","requirements":"==1.1.1","direct":false,"kind":"runtime","optional":false},{"id":7756103415,"package_name":"toml","ecosystem":"pypi","requirements":"==0.10.2","direct":false,"kind":"runtime","optional":false},{"id":7756103416,"package_name":"tomli","ecosystem":"pypi","requirements":"==2.0.1","direct":false,"kind":"runtime","optional":false},{"id":7756103418,"package_name":"tomlkit","ecosystem":"pypi","requirements":"==0.11.4","direct":false,"kind":"runtime","optional":false},{"id":7756103419,"package_name":"tornado","ecosystem":"pypi","requirements":"==6.2","direct":false,"kind":"runtime","optional":false},{"id":7756103420,"package_name":"traitlets","ecosystem":"pypi","requirements":"==5.4.0","direct":false,"kind":"runtime","optional":false},{"id":7756103422,"package_name":"ujson","ecosystem":"pypi","requirements":"==5.5.0","direct":false,"kind":"runtime","optional":false},{"id":7756103439,"package_name":"urllib3","ecosystem":"pypi","requirements":"==1.26.12","direct":false,"kind":"runtime","optional":false},{"id":7756103441,"package_name":"wcwidth","ecosystem":"pypi","requirements":"==0.2.5","direct":false,"kind":"runtime","optional":false},{"id":7756103443,"package_name":"webencodings","ecosystem":"pypi","requirements":"==0.5.1","direct":false,"kind":"runtime","optional":false},{"id":7756103444,"package_name":"websocket-client","ecosystem":"pypi","requirements":"==1.4.1","direct":false,"kind":"runtime","optional":false},{"id":7756103445,"package_name":"whatthepatch","ecosystem":"pypi","requirements":"==1.0.2","direct":false,"kind":"runtime","optional":false},{"id":7756103446,"package_name":"wrapt","ecosystem":"pypi","requirements":"==1.14.1","direct":false,"kind":"runtime","optional":false},{"id":7756103448,"package_name":"yapf","ecosystem":"pypi","requirements":"==0.32.0","direct":false,"kind":"runtime","optional":false}]}],"score":5.683579767338681,"created_at":"2025-09-08T15:39:23.956Z","updated_at":"2025-10-07T08:27:24.360Z","avatar_url":"https://github.com/kausaltech.png","language":"Python","category":null,"sub_category":null,"monthly_downloads":0,"funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://science.ecosyste.ms/api/v1/projects/75973","html_url":"https://science.ecosyste.ms/projects/75973"}