{"id":300004,"name":"whisp","description":"The Forest Data Partnership promotes a Convergence of Evidence approach for Forest and Commodities Monitoring.","url":"https://github.com/forestdatapartnership/whisp","last_synced_at":"2026-04-28T07:30:18.560Z","repository":{"id":216077703,"uuid":"740417852","full_name":"forestdatapartnership/whisp","owner":"forestdatapartnership","description":null,"archived":false,"fork":false,"pushed_at":"2026-03-31T09:15:04.000Z","size":48181,"stargazers_count":30,"open_issues_count":6,"forks_count":20,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-04-23T05:02:55.627Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/forestdatapartnership.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"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":"2024-01-08T09:59:16.000Z","updated_at":"2026-03-31T09:15:35.000Z","dependencies_parsed_at":"2026-01-22T09:01:39.689Z","dependency_job_id":null,"html_url":"https://github.com/forestdatapartnership/whisp","commit_stats":{"total_commits":195,"total_committers":7,"mean_commits":"27.857142857142858","dds":"0.36923076923076925","last_synced_commit":"c0b8233cb6e81c515d82be11dd9cbb80961b39b7"},"previous_names":["forestdatapartnership/whisp"],"tags_count":36,"template":false,"template_full_name":null,"purl":"pkg:github/forestdatapartnership/whisp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/forestdatapartnership","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32326122,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-26T23:26:28.701Z","status":"online","status_checked_at":"2026-04-27T02:00:06.769Z","response_time":128,"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":"forestdatapartnership","name":"Forest Data Partnership","uuid":"155651852","kind":"organization","description":"Forest Data Partnership","email":"forestdatapartnership@wri.org","website":"www.forestdatapartnership.org","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/155651852?v=4","repositories_count":3,"last_synced_at":"2024-04-18T02:16:21.315Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/forestdatapartnership","funding_links":[],"total_stars":6,"followers":7,"following":0,"created_at":"2024-01-08T11:40:33.885Z","updated_at":"2024-04-18T02:16:22.696Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/forestdatapartnership","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/forestdatapartnership/repositories"},"packages":[{"id":11733011,"name":"github.com/forestdatapartnership/whisp","ecosystem":"go","description":null,"homepage":null,"licenses":"mit","normalized_licenses":["MIT"],"repository_url":"https://github.com/forestdatapartnership/whisp","keywords_array":[],"namespace":null,"versions_count":11,"first_release_published_at":"2025-02-10T12:58:54.000Z","latest_release_published_at":"2025-03-04T12:04:26.000Z","latest_release_number":"v0.0.1","last_synced_at":"2026-04-25T07:02:05.937Z","created_at":"2025-06-05T11:14:23.186Z","updated_at":"2026-04-25T07:02:05.937Z","registry_url":"https://pkg.go.dev/github.com/forestdatapartnership/whisp","install_command":"go get github.com/forestdatapartnership/whisp","documentation_url":"https://pkg.go.dev/github.com/forestdatapartnership/whisp#section-documentation","metadata":{},"repo_metadata":{"id":216077703,"uuid":"740417852","full_name":"forestdatapartnership/whisp","owner":"forestdatapartnership","description":null,"archived":false,"fork":false,"pushed_at":"2025-10-07T10:28:13.000Z","size":26463,"stargazers_count":30,"open_issues_count":7,"forks_count":19,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-10-08T05:02:37.158Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/forestdatapartnership.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"contributing_guidelines.md","funding":null,"license":"LICENSE","code_of_conduct":null,"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":"2024-01-08T09:59:16.000Z","updated_at":"2025-10-07T10:28:12.000Z","dependencies_parsed_at":"2024-03-06T09:25:38.689Z","dependency_job_id":"2cbcd530-2486-4878-938c-3162f4d8d151","html_url":"https://github.com/forestdatapartnership/whisp","commit_stats":{"total_commits":195,"total_committers":7,"mean_commits":"27.857142857142858","dds":"0.36923076923076925","last_synced_commit":"c0b8233cb6e81c515d82be11dd9cbb80961b39b7"},"previous_names":["forestdatapartnership/whisp"],"tags_count":19,"template":false,"template_full_name":null,"purl":"pkg:github/forestdatapartnership/whisp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/forestdatapartnership","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279018180,"owners_count":26086307,"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-10-14T02:00:06.444Z","response_time":60,"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":"forestdatapartnership","name":"Forest Data Partnership","uuid":"155651852","kind":"organization","description":"Forest Data Partnership","email":"forestdatapartnership@wri.org","website":"www.forestdatapartnership.org","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/155651852?v=4","repositories_count":3,"last_synced_at":"2024-04-18T02:16:21.315Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/forestdatapartnership","funding_links":[],"total_stars":6,"followers":7,"following":0,"created_at":"2024-01-08T11:40:33.885Z","updated_at":"2024-04-18T02:16:22.696Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/forestdatapartnership","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/forestdatapartnership/repositories"},"tags":[{"name":"v2.0.0b1","sha":"fb1fea27a28a56f7b72b01896c7efbe06464152e","kind":"commit","published_at":"2025-10-03T13:20:14.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v2.0.0b1","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v2.0.0b1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v2.0.0b1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0b1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0b1/manifests"},{"name":"v2.0.0a5","sha":"fbbb3a683f792eb80bbdfba1851c29aab0d7a0fa","kind":"commit","published_at":"2025-07-31T11:13:09.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v2.0.0a5","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v2.0.0a5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v2.0.0a5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a5/manifests"},{"name":"v2.0.0a4","sha":"e902a079d373623994b3a257a66168b9d1c16e2a","kind":"commit","published_at":"2025-06-27T10:43:23.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v2.0.0a4","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v2.0.0a4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v2.0.0a4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a4/manifests"},{"name":"v2.0.0a3","sha":"82b863a3525f22c1595e88ee884bcf7ff972c3a6","kind":"commit","published_at":"2025-06-20T16:13:35.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v2.0.0a3","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v2.0.0a3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v2.0.0a3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a3/manifests"},{"name":"v2.0.0a2","sha":"beb0416737d6ebb0a05cdb7a88c746f561b9dc39","kind":"commit","published_at":"2025-06-19T19:52:16.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v2.0.0a2","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v2.0.0a2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v2.0.0a2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a2/manifests"},{"name":"v2.0.0a1","sha":"313e5e18d0b97a2eee30886febb9f9ae4d06da2e","kind":"commit","published_at":"2025-06-19T16:55:18.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v2.0.0a1","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v2.0.0a1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v2.0.0a1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a1/manifests"},{"name":"v1.0.0-alpha","sha":"9339386fd3e4074321e8660e8d61a74af12ad7c6","kind":"commit","published_at":"2025-04-09T14:02:11.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v1.0.0-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v1.0.0-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v1.0.0-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v1.0.0-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v1.0.0-alpha/manifests"},{"name":"v0.1.0a8","sha":"4ea212020d5e7f97668bc757df00657f9da0a11c","kind":"tag","published_at":"2025-03-12T09:44:06.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.1.0a8","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.1.0a8","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.1.0a8","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a8/manifests"},{"name":"v0.1.0a7","sha":"51a5f24845b5242b793d56e9abd50407ca2ad652","kind":"tag","published_at":"2025-03-12T09:10:42.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.1.0a7","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.1.0a7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.1.0a7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a7/manifests"},{"name":"v0.1.0a2","sha":"3bcae380dc849f8a0667040cef791b7b804628af","kind":"tag","published_at":"2025-03-05T09:52:05.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.1.0a2","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.1.0a2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.1.0a2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a2/manifests"},{"name":"v0.1.0a0","sha":"345b6f2b00e7f89ec25e8840c5ad4b6ff87c4872","kind":"tag","published_at":"2025-03-04T15:16:47.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.1.0a0","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.1.0a0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.1.0a0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a0/manifests"},{"name":"v0.0.1","sha":"9bc7c6e4e20be3d246bc50d28b318a0c10b39624","kind":"tag","published_at":"2025-03-04T12:05:51.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.1","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.1/manifests"},{"name":"v0.0.11-alpha","sha":"d98ffd979199cda6191f33d6e72624a83a307632","kind":"tag","published_at":"2025-03-03T16:41:37.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.11-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.11-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.11-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.11-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.11-alpha/manifests"},{"name":"v0.0.9-alpha","sha":"f22666ee356967ad1e5f203ee9951d8bd6234df4","kind":"tag","published_at":"2025-03-03T16:29:39.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.9-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.9-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.9-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.9-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.9-alpha/manifests"},{"name":"v0.0.8-alpha","sha":"c194a7d5f86f2a388eb4a46758002324589b8d98","kind":"tag","published_at":"2025-03-03T16:25:07.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.8-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.8-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.8-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.8-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.8-alpha/manifests"},{"name":"v0.0.7-alpha","sha":"c194a7d5f86f2a388eb4a46758002324589b8d98","kind":"tag","published_at":"2025-03-03T15:45:31.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.7-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.7-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.7-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.7-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.7-alpha/manifests"},{"name":"v0.0.6-alpha","sha":"c194a7d5f86f2a388eb4a46758002324589b8d98","kind":"tag","published_at":"2025-03-03T15:43:16.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.6-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.6-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.6-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.6-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.6-alpha/manifests"},{"name":"v0.0.5-alpha","sha":"fad9e3d905db01f044b6b08b91db40c2fb09d5c1","kind":"tag","published_at":"2025-03-03T15:41:00.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.5-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.5-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.5-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.5-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.5-alpha/manifests"},{"name":"v0.0.4-alpha","sha":"51a97b2cd42815666e10d06a2013708cb8bd0f14","kind":"tag","published_at":"2025-03-03T15:38:29.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.4-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.4-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.4-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.4-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.4-alpha/manifests"},{"name":"v0.0.41-alpha","sha":"51a97b2cd42815666e10d06a2013708cb8bd0f14","kind":"tag","published_at":"2025-03-03T15:38:18.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.41-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.41-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.41-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.41-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.41-alpha/manifests"},{"name":"v0.0.1-alpha","sha":"4a531310f697e30ab069e71bca56a3a0a2950901","kind":"tag","published_at":"2025-02-10T13:05:59.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.1-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.1-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.1-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.1-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.1-alpha/manifests"}]},"repo_metadata_updated_at":"2025-12-22T13:54:10.234Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":5.757538697138725,"dependent_packages_count":5.395053785167736,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":5.57629624115323},"purl":"pkg:golang/github.com/forestdatapartnership/whisp","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/go/github.com/forestdatapartnership/whisp","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/go/github.com/forestdatapartnership/whisp","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/go/github.com/forestdatapartnership/whisp/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-10-16T15:07:47.202Z","issues_count":39,"pull_requests_count":117,"avg_time_to_close_issue":4323560.785714285,"avg_time_to_close_pull_request":113015.64423076923,"issues_closed_count":14,"pull_requests_closed_count":104,"pull_request_authors_count":7,"issue_authors_count":14,"avg_comments_per_issue":0.6153846153846154,"avg_comments_per_pull_request":0.06837606837606838,"merged_pull_requests_count":91,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":25,"past_year_pull_requests_count":61,"past_year_avg_time_to_close_issue":3970686.4285714286,"past_year_avg_time_to_close_pull_request":125620.50980392157,"past_year_issues_closed_count":7,"past_year_pull_requests_closed_count":51,"past_year_pull_request_authors_count":3,"past_year_issue_authors_count":11,"past_year_avg_comments_per_issue":0.56,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":48,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/issues","maintainers":[{"login":"andyarnell","count":91,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/andyarnell"},{"login":"jo-spek","count":14,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jo-spek"},{"login":"astridverhegghen","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/astridverhegghen"}],"active_maintainers":[{"login":"andyarnell","count":52,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/andyarnell"},{"login":"jo-spek","count":14,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jo-spek"},{"login":"astridverhegghen","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/astridverhegghen"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fforestdatapartnership%2Fwhisp/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fforestdatapartnership%2Fwhisp/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fforestdatapartnership%2Fwhisp/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fforestdatapartnership%2Fwhisp/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/proxy.golang.org/packages/github.com%2Fforestdatapartnership%2Fwhisp/codemeta","maintainers":[],"registry":{"name":"proxy.golang.org","url":"https://proxy.golang.org","ecosystem":"go","default":true,"packages_count":2107874,"maintainers_count":0,"namespaces_count":782439,"keywords_count":112823,"github":"golang","metadata":{"funded_packages_count":53495},"icon_url":"https://github.com/golang.png","created_at":"2022-04-04T15:19:22.939Z","updated_at":"2026-04-19T05:14:45.920Z","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":11402595,"name":"openforis-whisp","ecosystem":"pypi","description":"Whisp (What is in that plot) is an open-source solution which helps to produce relevant forest monitoring information and support compliance with deforestation-related regulations.","homepage":"https://github.com/forestdatapartnership/whisp","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/forestdatapartnership/whisp","keywords_array":["whisp","geospatial","data-processing"],"namespace":null,"versions_count":33,"first_release_published_at":"2025-03-04T10:32:21.000Z","latest_release_published_at":"2025-03-04T10:32:21.000Z","latest_release_number":"0.0.1","last_synced_at":"2026-04-25T07:01:47.861Z","created_at":"2025-03-04T10:46:59.565Z","updated_at":"2026-04-25T07:01:47.862Z","registry_url":"https://pypi.org/project/openforis-whisp/","install_command":"pip install openforis-whisp --index-url https://pypi.org/simple","documentation_url":"https://github.com/forestdatapartnership/whisp#readme","metadata":{"funding":null,"documentation":"https://github.com/forestdatapartnership/whisp#readme","classifiers":["Development Status :: 3 - Alpha","Intended Audience :: Developers","Intended Audience :: Science/Research","License :: OSI Approved :: MIT License","Programming Language :: Python :: 3","Programming Language :: Python :: 3.10","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.12","Programming Language :: Python :: 3.13","Topic :: Software Development :: Libraries :: Python Modules"],"normalized_name":"openforis-whisp","project_status":null},"repo_metadata":{"id":216077703,"uuid":"740417852","full_name":"forestdatapartnership/whisp","owner":"forestdatapartnership","description":null,"archived":false,"fork":false,"pushed_at":"2026-03-31T09:15:04.000Z","size":48181,"stargazers_count":30,"open_issues_count":6,"forks_count":20,"subscribers_count":6,"default_branch":"main","last_synced_at":"2026-04-15T01:03:44.734Z","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":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/forestdatapartnership.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"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":"2024-01-08T09:59:16.000Z","updated_at":"2026-03-31T09:15:35.000Z","dependencies_parsed_at":"2026-01-22T09:01:39.689Z","dependency_job_id":null,"html_url":"https://github.com/forestdatapartnership/whisp","commit_stats":{"total_commits":195,"total_committers":7,"mean_commits":"27.857142857142858","dds":"0.36923076923076925","last_synced_commit":"c0b8233cb6e81c515d82be11dd9cbb80961b39b7"},"previous_names":["forestdatapartnership/whisp"],"tags_count":36,"template":false,"template_full_name":null,"purl":"pkg:github/forestdatapartnership/whisp","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/forestdatapartnership","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31992822,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-18T20:23:30.271Z","status":"online","status_checked_at":"2026-04-19T02:00:07.110Z","response_time":55,"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":"forestdatapartnership","name":"Forest Data Partnership","uuid":"155651852","kind":"organization","description":"Forest Data Partnership","email":"forestdatapartnership@wri.org","website":"www.forestdatapartnership.org","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/155651852?v=4","repositories_count":3,"last_synced_at":"2024-04-18T02:16:21.315Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/forestdatapartnership","funding_links":[],"total_stars":6,"followers":7,"following":0,"created_at":"2024-01-08T11:40:33.885Z","updated_at":"2024-04-18T02:16:22.696Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/forestdatapartnership","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/forestdatapartnership/repositories"},"tags":[{"name":"v3.0.0a13","sha":"3a7dc4f6b045fb455bb3155a2bf822c1dd77dbeb","kind":"commit","published_at":"2026-03-19T18:30:37.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v3.0.0a13","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v3.0.0a13","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v3.0.0a13","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a13","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a13/manifests"},{"name":"v3.0.0a12","sha":"42f7ae67d8be936de1540630a400e0d0df891add","kind":"commit","published_at":"2026-03-04T08:54:02.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v3.0.0a12","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v3.0.0a12","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v3.0.0a12","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a12","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a12/manifests"},{"name":"v3.0.0a11","sha":"3fee870fa55cd2051455bc06094dfb0da723c1ff","kind":"commit","published_at":"2026-02-12T12:43:02.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v3.0.0a11","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v3.0.0a11","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v3.0.0a11","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a11/manifests"},{"name":"v3.0.0a10","sha":"d6f159282c97a3298e24a129166f4c7f110d6846","kind":"commit","published_at":"2026-02-10T13:12:42.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v3.0.0a10","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v3.0.0a10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v3.0.0a10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a10/manifests"},{"name":"v3.0.0a9","sha":"50826a23797714498d166a88de2520ce245f92ee","kind":"commit","published_at":"2026-02-03T12:54:27.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v3.0.0a9","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v3.0.0a9","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v3.0.0a9","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a9/manifests"},{"name":"v3.0.0a8","sha":"d16d994c0b00a6998076587b44b60831687bf882","kind":"commit","published_at":"2026-01-20T13:18:43.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v3.0.0a8","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v3.0.0a8","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v3.0.0a8","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a8/manifests"},{"name":"v3.0.0a7","sha":"69cf60fc211f7fb564f3796aea98901c5521ba0e","kind":"commit","published_at":"2025-12-18T17:19:04.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v3.0.0a7","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v3.0.0a7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v3.0.0a7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a7/manifests"},{"name":"v3.0.0a6","sha":"812e9b13265b5ba6502c3e6910181b959ba6e6b1","kind":"commit","published_at":"2025-11-25T23:36:12.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v3.0.0a6","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v3.0.0a6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v3.0.0a6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a6/manifests"},{"name":"v3.0.0a5","sha":"3922c064e112d2a54400a653a11768f60ed962dd","kind":"commit","published_at":"2025-11-25T21:01:24.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v3.0.0a5","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v3.0.0a5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v3.0.0a5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a5/manifests"},{"name":"v3.0.0a4","sha":"fb20668c313650af7887228fae5663ad2c899b0a","kind":"commit","published_at":"2025-11-21T07:51:34.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v3.0.0a4","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v3.0.0a4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v3.0.0a4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a4/manifests"},{"name":"v3.0.0a3","sha":"54e67fff6ae5396e00a49d582762ca25d6930879","kind":"commit","published_at":"2025-11-11T16:34:50.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v3.0.0a3","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v3.0.0a3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v3.0.0a3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a3/manifests"},{"name":"v3.0.0a2","sha":"4aaccd3035cca2310b33230f475939b7b1adf3eb","kind":"commit","published_at":"2025-11-07T21:58:39.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v3.0.0a2","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v3.0.0a2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v3.0.0a2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a2/manifests"},{"name":"v3.0.0a1","sha":"3797d44ef9a0b4306c54cc97a45238ec5b787966","kind":"tag","published_at":"2025-11-07T13:26:58.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v3.0.0a1","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v3.0.0a1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v3.0.0a1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v3.0.0a1/manifests"},{"name":"2.0.0b3","sha":"a97c04807e7dc0442eaf8c4666e7655bd101fc6d","kind":"commit","published_at":"2025-10-28T18:08:59.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/2.0.0b3","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/2.0.0b3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@2.0.0b3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/2.0.0b3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/2.0.0b3/manifests"},{"name":"v2.0.0b2","sha":"d7270bd0db7f1b575eb483cf4d0078c7e8c0b69e","kind":"commit","published_at":"2025-10-27T16:07:14.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v2.0.0b2","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v2.0.0b2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v2.0.0b2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0b2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0b2/manifests"},{"name":"v2.0.0b1","sha":"fb1fea27a28a56f7b72b01896c7efbe06464152e","kind":"commit","published_at":"2025-10-03T13:20:14.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v2.0.0b1","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v2.0.0b1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v2.0.0b1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0b1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0b1/manifests"},{"name":"v2.0.0a5","sha":"fbbb3a683f792eb80bbdfba1851c29aab0d7a0fa","kind":"commit","published_at":"2025-07-31T11:13:09.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v2.0.0a5","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v2.0.0a5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v2.0.0a5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a5/manifests"},{"name":"v2.0.0a4","sha":"e902a079d373623994b3a257a66168b9d1c16e2a","kind":"commit","published_at":"2025-06-27T10:43:23.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v2.0.0a4","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v2.0.0a4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v2.0.0a4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a4/manifests"},{"name":"v2.0.0a3","sha":"82b863a3525f22c1595e88ee884bcf7ff972c3a6","kind":"commit","published_at":"2025-06-20T16:13:35.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v2.0.0a3","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v2.0.0a3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v2.0.0a3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a3/manifests"},{"name":"v2.0.0a2","sha":"beb0416737d6ebb0a05cdb7a88c746f561b9dc39","kind":"commit","published_at":"2025-06-19T19:52:16.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v2.0.0a2","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v2.0.0a2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v2.0.0a2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a2/manifests"},{"name":"v2.0.0a1","sha":"313e5e18d0b97a2eee30886febb9f9ae4d06da2e","kind":"commit","published_at":"2025-06-19T16:55:18.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v2.0.0a1","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v2.0.0a1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v2.0.0a1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v2.0.0a1/manifests"},{"name":"v1.0.0-alpha","sha":"9339386fd3e4074321e8660e8d61a74af12ad7c6","kind":"commit","published_at":"2025-04-09T14:02:11.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v1.0.0-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v1.0.0-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v1.0.0-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v1.0.0-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v1.0.0-alpha/manifests"},{"name":"v0.1.0a8","sha":"4ea212020d5e7f97668bc757df00657f9da0a11c","kind":"tag","published_at":"2025-03-12T09:44:06.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.1.0a8","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.1.0a8","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.1.0a8","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a8/manifests"},{"name":"v0.1.0a7","sha":"51a5f24845b5242b793d56e9abd50407ca2ad652","kind":"tag","published_at":"2025-03-12T09:10:42.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.1.0a7","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.1.0a7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.1.0a7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a7/manifests"},{"name":"v0.1.0a2","sha":"3bcae380dc849f8a0667040cef791b7b804628af","kind":"tag","published_at":"2025-03-05T09:52:05.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.1.0a2","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.1.0a2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.1.0a2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a2/manifests"},{"name":"v0.1.0a0","sha":"345b6f2b00e7f89ec25e8840c5ad4b6ff87c4872","kind":"tag","published_at":"2025-03-04T15:16:47.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.1.0a0","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.1.0a0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.1.0a0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.1.0a0/manifests"},{"name":"v0.0.1","sha":"9bc7c6e4e20be3d246bc50d28b318a0c10b39624","kind":"tag","published_at":"2025-03-04T12:05:51.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.1","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.1/manifests"},{"name":"v0.0.11-alpha","sha":"d98ffd979199cda6191f33d6e72624a83a307632","kind":"tag","published_at":"2025-03-03T16:41:37.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.11-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.11-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.11-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.11-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.11-alpha/manifests"},{"name":"v0.0.9-alpha","sha":"f22666ee356967ad1e5f203ee9951d8bd6234df4","kind":"tag","published_at":"2025-03-03T16:29:39.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.9-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.9-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.9-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.9-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.9-alpha/manifests"},{"name":"v0.0.8-alpha","sha":"c194a7d5f86f2a388eb4a46758002324589b8d98","kind":"tag","published_at":"2025-03-03T16:25:07.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.8-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.8-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.8-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.8-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.8-alpha/manifests"},{"name":"v0.0.7-alpha","sha":"c194a7d5f86f2a388eb4a46758002324589b8d98","kind":"tag","published_at":"2025-03-03T15:45:31.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.7-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.7-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.7-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.7-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.7-alpha/manifests"},{"name":"v0.0.6-alpha","sha":"c194a7d5f86f2a388eb4a46758002324589b8d98","kind":"tag","published_at":"2025-03-03T15:43:16.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.6-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.6-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.6-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.6-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.6-alpha/manifests"},{"name":"v0.0.5-alpha","sha":"fad9e3d905db01f044b6b08b91db40c2fb09d5c1","kind":"tag","published_at":"2025-03-03T15:41:00.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.5-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.5-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.5-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.5-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.5-alpha/manifests"},{"name":"v0.0.4-alpha","sha":"51a97b2cd42815666e10d06a2013708cb8bd0f14","kind":"tag","published_at":"2025-03-03T15:38:29.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.4-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.4-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.4-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.4-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.4-alpha/manifests"},{"name":"v0.0.41-alpha","sha":"51a97b2cd42815666e10d06a2013708cb8bd0f14","kind":"tag","published_at":"2025-03-03T15:38:18.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.41-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.41-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.41-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.41-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.41-alpha/manifests"},{"name":"v0.0.1-alpha","sha":"4a531310f697e30ab069e71bca56a3a0a2950901","kind":"tag","published_at":"2025-02-10T13:05:59.000Z","download_url":"https://codeload.github.com/forestdatapartnership/whisp/tar.gz/v0.0.1-alpha","html_url":"https://github.com/forestdatapartnership/whisp/releases/tag/v0.0.1-alpha","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/forestdatapartnership/whisp@v0.0.1-alpha","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.1-alpha","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/tags/v0.0.1-alpha/manifests"}]},"repo_metadata_updated_at":"2026-04-23T05:03:53.561Z","dependent_packages_count":0,"downloads":415,"downloads_period":"last-month","dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":53.75452197569194,"dependent_packages_count":9.545942354473905,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":31.65023216508292},"purl":"pkg:pypi/openforis-whisp","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/openforis-whisp","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/openforis-whisp","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/openforis-whisp/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-04-15T01:01:13.709Z","issues_count":46,"pull_requests_count":138,"avg_time_to_close_issue":7098100.291666667,"avg_time_to_close_pull_request":96830.19047619047,"issues_closed_count":24,"pull_requests_closed_count":126,"pull_request_authors_count":8,"issue_authors_count":16,"avg_comments_per_issue":1.0,"avg_comments_per_pull_request":0.057971014492753624,"merged_pull_requests_count":113,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":28,"past_year_pull_requests_count":70,"past_year_avg_time_to_close_issue":6688132.9375,"past_year_avg_time_to_close_pull_request":86276.96875,"past_year_issues_closed_count":16,"past_year_pull_requests_closed_count":64,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":9,"past_year_avg_comments_per_issue":1.1428571428571428,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":62,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/issues","maintainers":[{"login":"andyarnell","count":116,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/andyarnell"},{"login":"jo-spek","count":14,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jo-spek"},{"login":"astridverhegghen","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/astridverhegghen"}],"active_maintainers":[{"login":"andyarnell","count":69,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/andyarnell"},{"login":"astridverhegghen","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/astridverhegghen"},{"login":"jo-spek","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jo-spek"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/openforis-whisp/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/openforis-whisp/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/openforis-whisp/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/openforis-whisp/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/openforis-whisp/codemeta","maintainers":[{"uuid":"andyarnell","login":"andyarnell","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://pypi.org/user/andyarnell/","role":"Owner","created_at":"2025-03-04T10:48:17.906Z","updated_at":"2025-03-04T10:48:17.906Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/andyarnell/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":850909,"maintainers_count":363626,"namespaces_count":0,"keywords_count":271316,"github":"pypi","metadata":{"funded_packages_count":53172},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2026-04-09T05:08:03.587Z","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":1739636,"full_name":"forestdatapartnership/whisp","default_branch":"main","total_commits":405,"total_committers":8,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":50.625,"dds":0.5555555555555556,"past_year_total_commits":177,"past_year_total_committers":6,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":29.5,"past_year_dds":0.18644067796610164,"last_synced_at":"2026-04-25T06:03:49.457Z","last_synced_commit":"821762d59c7a9053187dbe43e65ee1e502e17b14","created_at":"2024-09-12T00:08:32.570Z","updated_at":"2026-04-25T06:03:49.357Z","committers":[{"name":"andyarnell","email":"andyarnell@hotmail.com","login":"andyarnell","count":180},{"name":"andyarnell","email":"you@example.com","login":"invalid-email-address","count":113},{"name":"astridverhegghen","email":"astrid.verhegghen@gmail.com","login":"astridverhegghen","count":43},{"name":"Jonas Spekker","email":"93268515+jo-spek","login":"jo-spek","count":30},{"name":"lecrabe","email":"lecrabe","login":"lecrabe","count":26},{"name":"jonnvega","email":"47796239+jonnvega","login":"jonnvega","count":11},{"name":"radu urdea","email":"radu.urdea@hotmail.com","login":"rurdea","count":1},{"name":"p3ace","email":"mouaaddaki@graniot.com","login":"daki-graniot","count":1}],"past_year_committers":[{"name":"andyarnell","email":"andyarnell@hotmail.com","login":"andyarnell","count":144},{"name":"astridverhegghen","email":"astrid.verhegghen@gmail.com","login":"astridverhegghen","count":23},{"name":"lecrabe","email":"lecrabe","login":"lecrabe","count":6},{"name":"Jonas Spekker","email":"jospek.dev@gmail.com","login":"jo-spek","count":2},{"name":"radu urdea","email":"radu.urdea@hotmail.com","login":"rurdea","count":1},{"name":"p3ace","email":"mouaaddaki@graniot.com","login":"daki-graniot","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-27T00:00:06.983Z","repositories_count":6219594,"commits_count":899537347,"contributors_count":34873839,"owners_count":1146019,"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":"forestdatapartnership/whisp","html_url":"https://github.com/forestdatapartnership/whisp","last_synced_at":"2026-04-23T05:01:17.357Z","status":"error","issues_count":46,"pull_requests_count":138,"avg_time_to_close_issue":7098100.291666667,"avg_time_to_close_pull_request":96830.19047619047,"issues_closed_count":24,"pull_requests_closed_count":126,"pull_request_authors_count":8,"issue_authors_count":16,"avg_comments_per_issue":1.0,"avg_comments_per_pull_request":0.057971014492753624,"merged_pull_requests_count":113,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":28,"past_year_pull_requests_count":70,"past_year_avg_time_to_close_issue":6688132.9375,"past_year_avg_time_to_close_pull_request":86276.96875,"past_year_issues_closed_count":16,"past_year_pull_requests_closed_count":64,"past_year_pull_request_authors_count":4,"past_year_issue_authors_count":9,"past_year_avg_comments_per_issue":1.1428571428571428,"past_year_avg_comments_per_pull_request":0.0,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":62,"created_at":"2024-09-12T00:08:34.893Z","updated_at":"2026-04-23T05:01:17.357Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/forestdatapartnership%2Fwhisp/issues","issue_labels_count":{},"pull_request_labels_count":{},"issue_author_associations_count":{"COLLABORATOR":25,"NONE":17,"CONTRIBUTOR":4},"pull_request_author_associations_count":{"COLLABORATOR":102,"MEMBER":14,"CONTRIBUTOR":13,"NONE":9},"issue_authors":{"andyarnell":23,"lecrabe":4,"FlorentScarpaSustaain":3,"julesntare":3,"astridverhegghen":2,"wilderbravo":1,"ollieg":1,"aurelgrooves":1,"GDieguezG":1,"melvinlippe23":1,"sergiobm11":1,"rurdea":1,"koensneyers-dot":1,"FLUM2022":1,"12rambau":1,"crianopa":1},"pull_request_authors":{"andyarnell":93,"jo-spek":22,"astridverhegghen":9,"lecrabe":6,"FlorentScarpaSustaain":3,"dfguerrerom":2,"estellerambier":2,"p3ace-0":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-04-27T00:00:06.950Z","repositories_count":14429024,"issues_count":34456175,"pull_requests_count":112704138,"authors_count":11246739,"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":{"COLLABORATOR":19,"NONE":5,"CONTRIBUTOR":1},"past_year_pull_request_author_associations_count":{"COLLABORATOR":61,"MEMBER":4,"NONE":1},"past_year_issue_authors":{"andyarnell":17,"astridverhegghen":2,"aurelgrooves":1,"koensneyers-dot":1,"lecrabe":1,"ollieg":1,"rurdea":1,"sergiobm11":1},"past_year_pull_request_authors":{"andyarnell":52,"astridverhegghen":9,"jo-spek":4,"p3ace-0":1},"maintainers":[{"login":"andyarnell","count":116,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/andyarnell"},{"login":"jo-spek","count":14,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jo-spek"},{"login":"astridverhegghen","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/astridverhegghen"}],"active_maintainers":[{"login":"andyarnell","count":69,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/andyarnell"},{"login":"astridverhegghen","count":11,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/astridverhegghen"},{"login":"jo-spek","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jo-spek"}]},"events":{"total":{"ReleaseEvent":3,"DeleteEvent":54,"MemberEvent":2,"PullRequestEvent":67,"ForkEvent":7,"IssuesEvent":34,"WatchEvent":14,"IssueCommentEvent":29,"PushEvent":200,"CreateEvent":98},"last_year":{"ReleaseEvent":3,"DeleteEvent":48,"MemberEvent":1,"PullRequestEvent":56,"ForkEvent":3,"IssuesEvent":21,"WatchEvent":4,"IssueCommentEvent":19,"PushEvent":105,"CreateEvent":81}},"keywords":[],"dependencies":[{"ecosystem":"pypi","filepath":"poetry.lock","sha":null,"kind":"lockfile","created_at":"2026-01-22T09:01:26.958Z","updated_at":"2026-01-22T09:01:26.958Z","repository_link":"https://github.com/forestdatapartnership/whisp/blob/main/poetry.lock","dependencies":[{"id":25801787983,"package_name":"appnope","ecosystem":"pypi","requirements":"0.1.4","direct":false,"kind":"runtime","optional":false},{"id":25801788013,"package_name":"asttokens","ecosystem":"pypi","requirements":"3.0.0","direct":false,"kind":"runtime","optional":false},{"id":25801788023,"package_name":"atomicwrites","ecosystem":"pypi","requirements":"1.4.1","direct":false,"kind":"develop","optional":false},{"id":25801788221,"package_name":"attrs","ecosystem":"pypi","requirements":"25.1.0","direct":false,"kind":"runtime","optional":false},{"id":25801788222,"package_name":"attrs","ecosystem":"pypi","requirements":"25.1.0","direct":false,"kind":"develop","optional":false},{"id":25801788227,"package_name":"black","ecosystem":"pypi","requirements":"25.1.0","direct":false,"kind":"runtime","optional":false},{"id":25801788228,"package_name":"cachetools","ecosystem":"pypi","requirements":"5.5.2","direct":false,"kind":"runtime","optional":false},{"id":25801788325,"package_name":"certifi","ecosystem":"pypi","requirements":"2025.1.31","direct":false,"kind":"runtime","optional":false},{"id":25801788326,"package_name":"cffi","ecosystem":"pypi","requirements":"1.17.1","direct":false,"kind":"runtime","optional":false},{"id":25801788333,"package_name":"cfgv","ecosystem":"pypi","requirements":"3.4.0","direct":false,"kind":"develop","optional":false},{"id":25801788334,"package_name":"chardet","ecosystem":"pypi","requirements":"5.2.0","direct":false,"kind":"runtime","optional":false},{"id":25801788398,"package_name":"charset-normalizer","ecosystem":"pypi","requirements":"3.4.1","direct":false,"kind":"runtime","optional":false},{"id":25801788399,"package_name":"click","ecosystem":"pypi","requirements":"8.1.8","direct":false,"kind":"runtime","optional":false},{"id":25801788411,"package_name":"colorama","ecosystem":"pypi","requirements":"0.4.6","direct":false,"kind":"runtime","optional":false},{"id":25801788412,"package_name":"colorama","ecosystem":"pypi","requirements":"0.4.6","direct":false,"kind":"develop","optional":false},{"id":25801788413,"package_name":"comm","ecosystem":"pypi","requirements":"0.2.2","direct":false,"kind":"runtime","optional":false},{"id":25801788458,"package_name":"country-converter","ecosystem":"pypi","requirements":"1.3","direct":false,"kind":"runtime","optional":false},{"id":25801788509,"package_name":"debugpy","ecosystem":"pypi","requirements":"1.8.12","direct":false,"kind":"runtime","optional":false},{"id":25801788512,"package_name":"decorator","ecosystem":"pypi","requirements":"5.2.1","direct":false,"kind":"runtime","optional":false},{"id":25801788569,"package_name":"distlib","ecosystem":"pypi","requirements":"0.3.9","direct":false,"kind":"develop","optional":false},{"id":25801788570,"package_name":"earthengine-api","ecosystem":"pypi","requirements":"1.5.4","direct":false,"kind":"runtime","optional":false},{"id":25801788594,"package_name":"exceptiongroup","ecosystem":"pypi","requirements":"1.2.2","direct":false,"kind":"runtime","optional":false},{"id":25801788611,"package_name":"executing","ecosystem":"pypi","requirements":"2.2.0","direct":false,"kind":"runtime","optional":false},{"id":25801788642,"package_name":"filelock","ecosystem":"pypi","requirements":"3.17.0","direct":false,"kind":"develop","optional":false},{"id":25801788643,"package_name":"frictionless","ecosystem":"pypi","requirements":"4.40.8","direct":false,"kind":"runtime","optional":false},{"id":25801788645,"package_name":"geojson","ecosystem":"pypi","requirements":"2.5.0","direct":false,"kind":"runtime","optional":false},{"id":25801788659,"package_name":"geopandas","ecosystem":"pypi","requirements":"1.0.1","direct":false,"kind":"runtime","optional":false},{"id":25801788664,"package_name":"google-api-core","ecosystem":"pypi","requirements":"2.24.1","direct":false,"kind":"runtime","optional":false},{"id":25801788668,"package_name":"google-api-python-client","ecosystem":"pypi","requirements":"2.162.0","direct":false,"kind":"runtime","optional":false},{"id":25801788669,"package_name":"google-auth","ecosystem":"pypi","requirements":"2.38.0","direct":false,"kind":"runtime","optional":false},{"id":25801788675,"package_name":"google-auth-httplib2","ecosystem":"pypi","requirements":"0.2.0","direct":false,"kind":"runtime","optional":false},{"id":25801788676,"package_name":"google-cloud-core","ecosystem":"pypi","requirements":"2.4.2","direct":false,"kind":"runtime","optional":false},{"id":25801788681,"package_name":"google-cloud-storage","ecosystem":"pypi","requirements":"3.1.0","direct":false,"kind":"runtime","optional":false},{"id":25801788716,"package_name":"google-crc32c","ecosystem":"pypi","requirements":"1.6.0","direct":false,"kind":"runtime","optional":false},{"id":25801788727,"package_name":"google-resumable-media","ecosystem":"pypi","requirements":"2.7.2","direct":false,"kind":"runtime","optional":false},{"id":25801788734,"package_name":"googleapis-common-protos","ecosystem":"pypi","requirements":"1.68.0","direct":false,"kind":"runtime","optional":false},{"id":25801788752,"package_name":"httplib2","ecosystem":"pypi","requirements":"0.22.0","direct":false,"kind":"runtime","optional":false},{"id":25801788759,"package_name":"identify","ecosystem":"pypi","requirements":"2.6.8","direct":false,"kind":"develop","optional":false},{"id":25801788760,"package_name":"idna","ecosystem":"pypi","requirements":"3.10","direct":false,"kind":"runtime","optional":false},{"id":25801788772,"package_name":"iniconfig","ecosystem":"pypi","requirements":"2.0.0","direct":false,"kind":"develop","optional":false},{"id":25801788773,"package_name":"ipykernel","ecosystem":"pypi","requirements":"6.29.5","direct":false,"kind":"runtime","optional":false},{"id":25801788826,"package_name":"ipython","ecosystem":"pypi","requirements":"8.33.0","direct":false,"kind":"runtime","optional":false},{"id":25801788847,"package_name":"isodate","ecosystem":"pypi","requirements":"0.7.2","direct":false,"kind":"runtime","optional":false},{"id":25801788861,"package_name":"jedi","ecosystem":"pypi","requirements":"0.19.2","direct":false,"kind":"runtime","optional":false},{"id":25801788919,"package_name":"jinja2","ecosystem":"pypi","requirements":"3.1.5","direct":false,"kind":"runtime","optional":false},{"id":25801788920,"package_name":"jsonschema","ecosystem":"pypi","requirements":"4.23.0","direct":false,"kind":"runtime","optional":false},{"id":25801788935,"package_name":"jsonschema-specifications","ecosystem":"pypi","requirements":"2024.10.1","direct":false,"kind":"runtime","optional":false},{"id":25801788953,"package_name":"jupyter-client","ecosystem":"pypi","requirements":"8.6.3","direct":false,"kind":"runtime","optional":false},{"id":25801789004,"package_name":"jupyter-core","ecosystem":"pypi","requirements":"5.7.2","direct":false,"kind":"runtime","optional":false},{"id":25801789034,"package_name":"markdown-it-py","ecosystem":"pypi","requirements":"3.0.0","direct":false,"kind":"runtime","optional":false},{"id":25801789081,"package_name":"marko","ecosystem":"pypi","requirements":"2.1.2","direct":false,"kind":"runtime","optional":false},{"id":25801789088,"package_name":"markupsafe","ecosystem":"pypi","requirements":"3.0.2","direct":false,"kind":"runtime","optional":false},{"id":25801789089,"package_name":"matplotlib-inline","ecosystem":"pypi","requirements":"0.1.7","direct":false,"kind":"runtime","optional":false},{"id":25801789100,"package_name":"mdurl","ecosystem":"pypi","requirements":"0.1.2","direct":false,"kind":"runtime","optional":false},{"id":25801789104,"package_name":"mypy-extensions","ecosystem":"pypi","requirements":"1.0.0","direct":false,"kind":"runtime","optional":false},{"id":25801789105,"package_name":"nest-asyncio","ecosystem":"pypi","requirements":"1.6.0","direct":false,"kind":"runtime","optional":false},{"id":25801789125,"package_name":"nodeenv","ecosystem":"pypi","requirements":"1.9.1","direct":false,"kind":"develop","optional":false},{"id":25801789126,"package_name":"numpy","ecosystem":"pypi","requirements":"2.2.3","direct":false,"kind":"runtime","optional":false},{"id":25801789127,"package_name":"packaging","ecosystem":"pypi","requirements":"24.2","direct":false,"kind":"runtime","optional":false},{"id":25801789128,"package_name":"packaging","ecosystem":"pypi","requirements":"24.2","direct":false,"kind":"develop","optional":false},{"id":25801789129,"package_name":"pandas","ecosystem":"pypi","requirements":"2.2.3","direct":false,"kind":"runtime","optional":false},{"id":25801789130,"package_name":"pandera","ecosystem":"pypi","requirements":"0.23.0","direct":false,"kind":"runtime","optional":false},{"id":25801789131,"package_name":"parso","ecosystem":"pypi","requirements":"0.8.4","direct":false,"kind":"runtime","optional":false},{"id":25801789141,"package_name":"pathspec","ecosystem":"pypi","requirements":"0.12.1","direct":false,"kind":"runtime","optional":false},{"id":25801789142,"package_name":"petl","ecosystem":"pypi","requirements":"1.7.15","direct":false,"kind":"runtime","optional":false},{"id":25801789143,"package_name":"pexpect","ecosystem":"pypi","requirements":"4.9.0","direct":false,"kind":"runtime","optional":false},{"id":25801789192,"package_name":"platformdirs","ecosystem":"pypi","requirements":"4.3.6","direct":false,"kind":"runtime","optional":false},{"id":25801789193,"package_name":"platformdirs","ecosystem":"pypi","requirements":"4.3.6","direct":false,"kind":"develop","optional":false},{"id":25801789194,"package_name":"pluggy","ecosystem":"pypi","requirements":"1.5.0","direct":false,"kind":"develop","optional":false},{"id":25801789195,"package_name":"pre-commit","ecosystem":"pypi","requirements":"2.21.0","direct":false,"kind":"develop","optional":false},{"id":25801789196,"package_name":"prompt-toolkit","ecosystem":"pypi","requirements":"3.0.50","direct":false,"kind":"runtime","optional":false},{"id":25801789212,"package_name":"proto-plus","ecosystem":"pypi","requirements":"1.26.0","direct":false,"kind":"runtime","optional":false},{"id":25801789219,"package_name":"protobuf","ecosystem":"pypi","requirements":"5.29.3","direct":false,"kind":"runtime","optional":false},{"id":25801789224,"package_name":"psutil","ecosystem":"pypi","requirements":"7.0.0","direct":false,"kind":"runtime","optional":false},{"id":25801789234,"package_name":"ptyprocess","ecosystem":"pypi","requirements":"0.7.0","direct":false,"kind":"runtime","optional":false},{"id":25801789286,"package_name":"pure-eval","ecosystem":"pypi","requirements":"0.2.3","direct":false,"kind":"runtime","optional":false},{"id":25801789315,"package_name":"py","ecosystem":"pypi","requirements":"1.11.0","direct":false,"kind":"develop","optional":false},{"id":25801789316,"package_name":"pyasn1","ecosystem":"pypi","requirements":"0.6.1","direct":false,"kind":"runtime","optional":false},{"id":25801789336,"package_name":"pyasn1-modules","ecosystem":"pypi","requirements":"0.4.1","direct":false,"kind":"runtime","optional":false},{"id":25801789365,"package_name":"pycparser","ecosystem":"pypi","requirements":"2.22","direct":false,"kind":"runtime","optional":false},{"id":25801789397,"package_name":"pydantic","ecosystem":"pypi","requirements":"1.10.21","direct":false,"kind":"runtime","optional":false},{"id":25801789398,"package_name":"pydantic-core","ecosystem":"pypi","requirements":"2.30.0","direct":false,"kind":"runtime","optional":false},{"id":25801789410,"package_name":"pygments","ecosystem":"pypi","requirements":"2.19.1","direct":false,"kind":"runtime","optional":false},{"id":25801789411,"package_name":"pyogrio","ecosystem":"pypi","requirements":"0.10.0","direct":false,"kind":"runtime","optional":false},{"id":25801789438,"package_name":"pyparsing","ecosystem":"pypi","requirements":"3.2.1","direct":false,"kind":"runtime","optional":false},{"id":25801789511,"package_name":"pyproj","ecosystem":"pypi","requirements":"3.7.1","direct":false,"kind":"runtime","optional":false},{"id":25801789519,"package_name":"pytest","ecosystem":"pypi","requirements":"6.2.5","direct":false,"kind":"develop","optional":false},{"id":25801789520,"package_name":"python-dateutil","ecosystem":"pypi","requirements":"2.9.0.post0","direct":false,"kind":"runtime","optional":false},{"id":25801789524,"package_name":"python-dotenv","ecosystem":"pypi","requirements":"1.0.1","direct":false,"kind":"runtime","optional":false},{"id":25801789525,"package_name":"python-slugify","ecosystem":"pypi","requirements":"8.0.4","direct":false,"kind":"runtime","optional":false},{"id":25801789583,"package_name":"pytz","ecosystem":"pypi","requirements":"2025.1","direct":false,"kind":"runtime","optional":false},{"id":25801789584,"package_name":"pywin32","ecosystem":"pypi","requirements":"308","direct":false,"kind":"runtime","optional":false},{"id":25801789585,"package_name":"pyyaml","ecosystem":"pypi","requirements":"6.0.2","direct":false,"kind":"runtime","optional":false},{"id":25801789586,"package_name":"pyyaml","ecosystem":"pypi","requirements":"6.0.2","direct":false,"kind":"develop","optional":false},{"id":25801789587,"package_name":"pyzmq","ecosystem":"pypi","requirements":"26.2.1","direct":false,"kind":"runtime","optional":false},{"id":25801789628,"package_name":"referencing","ecosystem":"pypi","requirements":"0.36.2","direct":false,"kind":"runtime","optional":false},{"id":25801789639,"package_name":"requests","ecosystem":"pypi","requirements":"2.32.3","direct":false,"kind":"runtime","optional":false},{"id":25801789640,"package_name":"rfc3986","ecosystem":"pypi","requirements":"2.0.0","direct":false,"kind":"runtime","optional":false},{"id":25801789655,"package_name":"rich","ecosystem":"pypi","requirements":"13.9.4","direct":false,"kind":"runtime","optional":false},{"id":25801789661,"package_name":"rpds-py","ecosystem":"pypi","requirements":"0.23.1","direct":false,"kind":"runtime","optional":false},{"id":25801789695,"package_name":"rsa","ecosystem":"pypi","requirements":"4.2","direct":false,"kind":"runtime","optional":false},{"id":25801789758,"package_name":"ruff","ecosystem":"pypi","requirements":"0.9.9","direct":false,"kind":"develop","optional":false},{"id":25801789759,"package_name":"shapely","ecosystem":"pypi","requirements":"2.0.7","direct":false,"kind":"runtime","optional":false},{"id":25801789789,"package_name":"shellingham","ecosystem":"pypi","requirements":"1.5.4","direct":false,"kind":"runtime","optional":false},{"id":25801789790,"package_name":"simpleeval","ecosystem":"pypi","requirements":"1.0.3","direct":false,"kind":"runtime","optional":false},{"id":25801789807,"package_name":"six","ecosystem":"pypi","requirements":"1.17.0","direct":false,"kind":"runtime","optional":false},{"id":25801789839,"package_name":"stack-data","ecosystem":"pypi","requirements":"0.6.3","direct":false,"kind":"runtime","optional":false},{"id":25801789848,"package_name":"stringcase","ecosystem":"pypi","requirements":"1.2.0","direct":false,"kind":"runtime","optional":false},{"id":25801789849,"package_name":"tabulate","ecosystem":"pypi","requirements":"0.9.0","direct":false,"kind":"runtime","optional":false},{"id":25801789870,"package_name":"text-unidecode","ecosystem":"pypi","requirements":"1.3","direct":false,"kind":"runtime","optional":false},{"id":25801789902,"package_name":"toml","ecosystem":"pypi","requirements":"0.10.2","direct":false,"kind":"develop","optional":false},{"id":25801789907,"package_name":"tomli","ecosystem":"pypi","requirements":"2.2.1","direct":false,"kind":"runtime","optional":false},{"id":25801789908,"package_name":"tornado","ecosystem":"pypi","requirements":"6.4.2","direct":false,"kind":"runtime","optional":false},{"id":25801789922,"package_name":"traitlets","ecosystem":"pypi","requirements":"5.14.3","direct":false,"kind":"runtime","optional":false},{"id":25801789945,"package_name":"typeguard","ecosystem":"pypi","requirements":"4.4.2","direct":false,"kind":"runtime","optional":false},{"id":25801789959,"package_name":"typer","ecosystem":"pypi","requirements":"0.15.2","direct":false,"kind":"runtime","optional":false},{"id":25801789982,"package_name":"typing-extensions","ecosystem":"pypi","requirements":"4.12.2","direct":false,"kind":"runtime","optional":false},{"id":25801790036,"package_name":"typing-inspect","ecosystem":"pypi","requirements":"0.9.0","direct":false,"kind":"runtime","optional":false},{"id":25801790038,"package_name":"tzdata","ecosystem":"pypi","requirements":"2025.1","direct":false,"kind":"runtime","optional":false},{"id":25801790060,"package_name":"uritemplate","ecosystem":"pypi","requirements":"4.1.1","direct":false,"kind":"runtime","optional":false},{"id":25801790108,"package_name":"urllib3","ecosystem":"pypi","requirements":"2.3.0","direct":false,"kind":"runtime","optional":false},{"id":25801790143,"package_name":"validators","ecosystem":"pypi","requirements":"0.34.0","direct":false,"kind":"runtime","optional":false},{"id":25801790165,"package_name":"virtualenv","ecosystem":"pypi","requirements":"20.29.2","direct":false,"kind":"develop","optional":false},{"id":25801790166,"package_name":"wcwidth","ecosystem":"pypi","requirements":"0.2.13","direct":false,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2026-01-22T09:01:39.458Z","updated_at":"2026-01-22T09:01:39.458Z","repository_link":"https://github.com/forestdatapartnership/whisp/blob/main/pyproject.toml","dependencies":[{"id":25801790208,"package_name":"python","ecosystem":"pypi","requirements":"\u003e=3.10","direct":true,"kind":"runtime","optional":false},{"id":25801790209,"package_name":"earthengine-api","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":25801790210,"package_name":"numpy","ecosystem":"pypi","requirements":"\u003e=1.21.0,\u003c3.0.0","direct":true,"kind":"runtime","optional":false},{"id":25801790211,"package_name":"pandas","ecosystem":"pypi","requirements":"\u003e=1.3.0,\u003c3.0.0","direct":true,"kind":"runtime","optional":false},{"id":25801790212,"package_name":"pandera","ecosystem":"pypi","requirements":"\u003e=0.22.1,\u003c1.0.0","direct":true,"kind":"runtime","optional":false},{"id":25801790213,"package_name":"country-converter","ecosystem":"pypi","requirements":"\u003e=0.7,\u003c2.0.0","direct":true,"kind":"runtime","optional":false},{"id":25801790214,"package_name":"geojson","ecosystem":"pypi","requirements":"\u003e=2.5.0,\u003c3.0.0","direct":true,"kind":"runtime","optional":false},{"id":25801790215,"package_name":"python-dotenv","ecosystem":"pypi","requirements":"\u003e=1.0.1,\u003c2.0.0","direct":true,"kind":"runtime","optional":false},{"id":25801790216,"package_name":"pydantic-core","ecosystem":"pypi","requirements":"\u003e=2.14.0,\u003c3.0.0","direct":true,"kind":"runtime","optional":false},{"id":25801790217,"package_name":"rsa","ecosystem":"pypi","requirements":"\u003e=4.2,\u003c5.0.0","direct":true,"kind":"runtime","optional":false},{"id":25801790218,"package_name":"ipykernel","ecosystem":"pypi","requirements":"\u003e=6.17.1,\u003c7.0.0","direct":true,"kind":"runtime","optional":false},{"id":25801790219,"package_name":"shapely","ecosystem":"pypi","requirements":"^2.0.2","direct":true,"kind":"runtime","optional":false},{"id":25801790220,"package_name":"geopandas","ecosystem":"pypi","requirements":"^1.0.1","direct":true,"kind":"runtime","optional":false},{"id":25801790221,"package_name":"pytest","ecosystem":"pypi","requirements":"\u003e=6.2.5,\u003c7.0.0","direct":true,"kind":"develop","optional":false},{"id":25801790222,"package_name":"pre-commit","ecosystem":"pypi","requirements":"\u003e=2.15.0,\u003c3.0.0","direct":true,"kind":"develop","optional":false},{"id":25801790223,"package_name":"ruff","ecosystem":"pypi","requirements":"\u003e=0.0.1,\u003c1.0.0","direct":true,"kind":"develop","optional":false}]}],"score":11.693645740397208,"created_at":"2024-09-12T00:08:28.512Z","updated_at":"2026-04-28T07:30:18.568Z","avatar_url":"https://github.com/forestdatapartnership.png","language":"Python","category":"Biosphere","sub_category":"Deforestation and Reforestation","monthly_downloads":415,"total_dependent_repos":0,"total_dependent_packages":0,"readme":"  whisp\r\n  =====\r\n  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://github.com/openforis/sepal/blob/master/license.txt)\r\n  [![Data Protection Policy](https://img.shields.io/badge/Data_Protection_and_Privacy-FAO-lightblue.svg)](https://www.fao.org/contact-us/data-protection-and-privacy/en/)\r\n  [![DOI](https://img.shields.io/badge/DOI-10.4060%2Fcd0957en-brightgreen.svg)](https://doi.org/10.4060/cd0957en)\r\n\r\n\r\n  ![Whisp_OpenForis_Banner_Github](https://github.com/user-attachments/assets/84f002fe-1848-46a1-814d-3949c22728cb)\r\n\r\n  ## Convergence of Evidence \u003ca name=\"whisp_coe\"\u003e\u003c/a\u003e\r\n  ***Whisp*** stands for \"***Wh****at* ***is*** *in that* ***p****lot*\"?\r\n\r\n  Numerous publicly available Earth Observation maps provide data on tree cover, land use, and forest disturbances. However, these maps often differ from one another because they use various definitions and classification systems. As a result, no single map can provide a complete picture of any specific area. To address this issue, the [Forest Data Partnership (FDaP)](https://www.forestdatapartnership.org) and the [AIM4Forests Programme](https://www.fao.org/in-action/aim4forests/en/) advocate for the **Convergence of Evidence** approach.\r\n\r\n  The Forest Data Partnership promotes this approach for forest and commodities monitoring, assuming that\r\n  - no single source of geospatial data can tell the whole story around any given plot of land;\r\n  - all the existing, published and available datasets contribute to telling that story.\r\n  \u003cbr\u003e\u003cbr\u003e\r\n\r\n\r\n  ## Contents\r\n  - [Whisp pathways](#whisp_pathways)\r\n  - [Whisp datasets](#whisp_datasets)\r\n  - [Whisp notebooks](#whisp_notebooks)\r\n  - [Add data layers](#whisp_add_data)\r\n  - [Contribute to the code](#whisp_contribute)\r\n  - [Code of conduct](#whisp_conduct)\r\n  - [Feedback](#whisp_feedback)\r\n\r\n  \u003cbr\u003e\r\n\r\n  ## Whisp pathways \u003ca name=\"whisp_pathways\"\u003e\u003c/a\u003e\r\n  ***Whisp*** can currently be used directly or implemented in your own code through three different pathways:\r\n\r\n\r\n  1. The Whisp App with its simple interface can be accessed [here](https://whisp.openforis.org/) or called from other software by [API](https://whisp.openforis.org/documentation/api-guide). The Whisp App currently supports the processing of up to 3,000 geometries per job. The original JS \u0026 Python code behind the Whisp App and API can be found [here](https://github.com/forestdatapartnership/whisp-app).\r\n\r\n  2. [Whisp in Earthmap](https://whisp.earthmap.org/?aoi=WHISP\u0026boundary=plot1\u0026layers=%7B%22CocoaETH%22%3A%7B%22opacity%22%3A1%7D%2C%22JRCForestMask%22%3A%7B%22opacity%22%3A1%7D%2C%22planet_rgb%22%3A%7B%22opacity%22%3A1%2C%22date%22%3A%222020-12%22%7D%7D\u0026map=%7B%22center%22%3A%7B%22lat%22%3A7%2C%22lng%22%3A4%7D%2C%22zoom%22%3A3%2C%22mapType%22%3A%22satellite%22%7D\u0026statisticsOpen=true) supports the visualization of geometries on actual maps with the possibility to toggle different relevant map products around tree cover, commodities and deforestation. It is practical for demonstration purposes and spot checks of single geometries but not recommended for larger datasets.\r\n\r\n  3. Datasets of any size, especially when holding more than 3,000 geometries, can be analyzed with Whisp through the [python package on pip](https://pypi.org/project/openforis-whisp/). See example [Colab Notebook](https://github.com/forestdatapartnership/whisp/blob/main/notebooks/Colab_whisp_geojson_to_csv.ipynb) for implementation with a geojson input. For further notebooks processing options see [Whisp notebooks](#whisp_notebooks).\r\n\r\n\r\n  ## Whisp datasets \u003ca name=\"whisp_datasets\"\u003e\u003c/a\u003e\r\n  ***Whisp***  implements the convergence of evidence approach by providing a transparent and public processing flow using datasets covering the following categories:\r\n\r\n  1) Tree and forest cover (at the end of 2020);\r\n  2) Commodities (i.e., crop plantations and other agricultural uses at the end of 2020);\r\n  3) Disturbances **before 2020** (i.e., degradation or deforestation until 2020-12-31);\r\n  4) Disturbances **after 2020** (i.e., degradation or deforestation from 2021-01-01 onward).\r\n\r\nAdditional categories are specific for the timber commodity, considering a harvesting date in 2023:\r\n\r\n  5) Primary forests in 2020;\r\n  6) Naturally regenerating forests in 2020;\r\n  7) Planted and plantation forests in 2020;\r\n  8) Planted and plantation forests in 2023;\r\n  9) Treecover in 2023;\r\n  10) Commodities or croplands in 2023.\r\n  11) Logging concessions;\r\n\r\n  There are multiple datasets for each category. Find the full current [list of datasets used in Whisp here](https://github.com/forestdatapartnership/whisp/blob/main/layers_description.md).\r\n\r\n  ### Whisp risk assessment \u003ca name=\"whisp_risk\"\u003e\u003c/a\u003e\r\n\r\nWhisp checks the plots provided by the user by running zonal statistics on them to answer the following questions:\r\n\r\n  1) Was there tree cover in 2020?\r\n  2) Were there commodity plantations or other agricultural uses in 2020?\r\n  3) Were there disturbances until 2020-12-31?\r\n  4) Were there disturbances after 2020-12-31 / starting 2021-01-01?\r\n\r\nAnd specifically for the timber commodity, considering a harvesting date in 2023:\r\n\r\n  5) Were there primary forests in 2020?\r\n  6) Were there naturally regenerating forests in 2020?\r\n  7) Were there planted and plantation forests in 2020?\r\n  8) Were there planted and plantation forests in 2023?\r\n  9) Was there treecover in 2023?\r\n  10) Were there commodity plantations or other agricultural uses in 2023?\r\n  11) Is it part of a logging concession?\r\n\r\n  The Whisp algorithm outputs multiple statistical columns with disaggregated data from the input datasets, followed by aggregated indicator columns, and the final risk assessment columns.\r\n    All output columns from Whisp are described in [this excel file](https://github.com/forestdatapartnership/whisp/blob/main/whisp_columns.xlsx)\r\n\r\nThe **relevant risk assessment column depends on the commodity** in question:\r\n\r\n\u003ctable\u003e\r\n  \u003ctr\u003e\r\n    \u003cth\u003eCommodity\u003c/th\u003e\r\n    \u003cth\u003eRisk Assessment Column\u003c/th\u003e\r\n    \u003cth\u003eDescription\u003c/th\u003e\r\n  \u003c/tr\u003e\r\n  \u003ctr\u003e\r\n    \u003ctd\u003eCoffee\u003c/td\u003e\r\n    \u003ctd rowspan=\"4\"\u003eRisk_PCrop\u003c/td\u003e\r\n    \u003ctd rowspan=\"4\"\u003ePerennial crop deforestation risk\u003c/td\u003e\r\n  \u003c/tr\u003e\r\n  \u003ctr\u003e\u003ctd\u003eCocoa\u003c/td\u003e\u003c/tr\u003e\r\n  \u003ctr\u003e\u003ctd\u003eRubber\u003c/td\u003e\u003c/tr\u003e\r\n  \u003ctr\u003e\u003ctd\u003eOil palm\u003c/td\u003e\u003c/tr\u003e\r\n  \u003ctr\u003e\r\n    \u003ctd\u003eSoy\u003c/td\u003e\r\n    \u003ctd\u003eRisk_ACrop\u003c/td\u003e\r\n    \u003ctd\u003eAnnual crop deforestation risk\u003c/td\u003e\r\n  \u003c/tr\u003e\r\n  \u003ctr\u003e\r\n    \u003ctd\u003eLivestock\u003c/td\u003e\r\n    \u003ctd\u003eRisk_Livestock\u003c/td\u003e\r\n    \u003ctd\u003eLivestock driven deforestation risk (coming soon)\u003c/td\u003e\r\n  \u003c/tr\u003e\r\n  \u003ctr\u003e\r\n    \u003ctd\u003eTimber\u003c/td\u003e\r\n    \u003ctd\u003eRisk_Timber\u003c/td\u003e\r\n    \u003ctd\u003eTimber extraction deforestation risk\u003c/td\u003e\r\n  \u003c/tr\u003e\r\n\u003c/table\u003e\r\n\r\n  *The Whisp algorithm for **Perennial Crops** visualized:*\r\n  ![CoE_Graphic 5](https://github.com/user-attachments/assets/007b5f50-3939-4707-95fa-98be4d56745f)\r\n\r\n  If no treecover dataset indicates any tree cover for a plot by the end of 2020, **Whisp will categorize the deforestation risk as low.**\r\n\r\n  If one or more treecover datasets indicate tree cover on a plot by the end of 2020, but a commodity dataset indicates agricultural use by the end of 2020, **Whisp will categorize the deforestation risk as low.**\r\n\r\n  If treecover datasets indicate tree cover on a plot by late 2020, no commodity datasets indicate agricultural use, but a disturbance dataset indicates disturbances before the end of 2020, **Whisp will categorize the deforestation risk as \u003cu\u003elow\u003c/u\u003e.** Such deforestation has happened before 2020, which aligns with the cutoff date for legislation, such as EUDR (European Union Deforestation Risk), and is therefore not considered high risk.\r\n\r\n  Now, if the datasets under 1., 2. \u0026 3. indicate that there was tree cover, but no agriculture and no disturbances before or by the end of 2020, the Whisp algorithm checks whether degradation or deforestation have been reported in a disturbance dataset after 2020-12-31. If they have, **Whisp will categorize the deforestation risk as \u003cu\u003ehigh\u003c/u\u003e.** \u003cbr\u003e\r\n  However, under the same circumstances but with \u003cu\u003eno\u003c/u\u003e disturbances reported after 2020-12-31 there is insufficient evidence and the **Whisp output will be \"More info needed\".** Such can be the case for, e.g., cocoa or coffee grown under the shade of treecover or agroforestry.\r\n\r\n\r\n  ## Run Whisp python package from a notebook \u003ca name=\"whisp_notebooks\"\u003e\u003c/a\u003e\r\n  \r\n  For most users we suggest using the Whisp App to process their plot data. But for some, using the python package directly will fit their workflow.\r\n\r\n  An example of the package functionality can be seen in this [Colab Notebook](https://github.com/forestdatapartnership/whisp/blob/main/notebooks/Colab_whisp_geojson_to_csv.ipynb)\r\n\r\n  For running locally (or in Sepal), see: [whisp_geojson_to_csv.ipynb](https://github.com/forestdatapartnership/whisp/blob/main/notebooks/whisp_geojson_to_csv.ipynb) or if datasets are very large (e.g., \u003e100,000 features), see [whisp_ee_asset_to_drive.ipynb](https://github.com/forestdatapartnership/whisp/blob/main/notebooks/whisp_ee_asset_to_drive.ipynb)\r\n\r\n  ### Requirements for running the package\r\n\r\n  - A Google Earth Engine (GEE) account.\r\n  - A registered cloud GEE project.\r\n  - Some experience in Python or a similar language.\r\n\r\n\r\n  ### Python package installation\r\n\r\n  The Whisp package is available on pip\r\n  https://pypi.org/project/openforis-whisp/ and changelog [here](https://github.com/forestdatapartnership/whisp/releases)\r\n\r\n\r\n  It can be installed with one line of code:\r\n\r\n  ```\r\n  pip install --pre openforis-whisp\r\n  ```\r\n\r\n\r\n  The package relies upon the google earth engine api being setup correctly using a registered cloud project.\r\n\r\n  More info on Whisp can be found [here](https://openknowledge.fao.org/items/e9284dc7-4b19-4f9c-b3e1-e6c142585865)\r\n\r\n\r\n\r\n## How to add data layers to Whisp \u003ca name=\"whisp_add_data\"\u003e\u003c/a\u003e\r\n\r\n\r\n\r\nThere are two main approaches:\r\n\r\n1) Request that a layer be incorporated into the core Whisp inputs, or\r\n\r\n2) Add your own data directly to complement the core datasets.\r\n\r\n\r\n\r\n---\r\n\r\n\r\n\r\n### Requesting a layer addition\r\n\r\n\r\n\r\nIf you think a particular dataset has wide applicability for Whisp users, you can request it be added to the main Whisp repository by logging it as an issue in GitHub [here](https://github.com/forestdatapartnership/whisp/issues/).\r\n\r\n\r\n\r\nBefore submitting a request, consider the following:\r\n\r\n\r\n\r\n- Is the resolution high enough for plot-level analysis? (e.g., 30m or 10m resolution)\r\n\r\n- Is there an indication of data quality? (e.g., accuracy assessment detailed in a scientific publication)\r\n\r\n- Is there relevant metadata available?\r\n\r\n\r\n\r\n---\r\n\r\n\r\n### Adding your own data directly\r\n\r\nThe python notebooks allow the user to add custom data layers. You can edit the Prepare layers section to do this in the [Colab Notebook](https://github.com/forestdatapartnership/whisp/blob/main/notebooks/Colab_whisp_geojson_to_csv.ipynb) \r\nTo add your own data directly you will need some coding experience as well as familiarity with Google Earth Engine.\r\n\r\n\r\n## Contributing \u003ca name=\"whisp_contribute\"\u003e\u003c/a\u003e\r\n\r\nContributions are welcome!  \r\n- Fork the repo, make changes, and open a pull request.\r\n- For adding new datasets to the codebase and for project-specific coding standards see [.github/copilot-instructions.md](.github/copilot-instructions.md)\r\n\r\n## Code of Conduct \u003ca name=\"whisp_conduct\"\u003e\u003c/a\u003e\r\n\r\n**Purpose**\r\nWe are dedicated to maintaining a safe and respectful environment for all users. Harassment or abusive behavior will not be tolerated. \u003cbr\u003e\r\n\r\n**Scope**\r\nThis Code applies to all interactions on the repository and on the app.\r\n\r\n**Expectations** \u003cbr\u003e\r\n*- Respect others:* Treat all contributors and users with courtesy and kindness. \u003cbr\u003e\r\n*- Constructive communication:* Engage respectfully, even in disagreements. \u003cbr\u003e\r\n*- Protect privacy:* Do not share personal information without consent.\r\n\r\n**Prohibited Conduct** \u003cbr\u003e\r\n*- Harassment:* Unwanted or abusive communication, stalking, threats, or bullying.\u003cbr\u003e\r\n*- Discrimination:* Any form of hate speech or exclusion based on race, gender, orientation, or other identities.\u003cbr\u003e\r\n*- Inappropriate Content:* Posting offensive, harmful, or explicit material.\r\n\r\n**Reporting** \u003cbr\u003e\r\nUsers can report violations of this Code of Conduct confidentially by contacting the Open Foris team at  \r\n[open-foris@fao.org](mailto:open-foris@fao.org).\r\n\r\n\r\n## Feedback \u003ca name=\"whisp_feedback\"\u003e\u003c/a\u003e\r\n- For issues or feature requests [open a GitHub issue](https://github.com/forestdatapartnership/whisp/issues).\r\n- For general questions, feedback or support, email [open-foris@fao.org](mailto:open-foris@fao.org).\r\n\r\nWe welcome all feedback and contributions!\r\n\r\n\r\n\r\n","funding_links":[],"readme_doi_urls":["https://doi.org/10.4060/cd0957en"],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://ost.ecosyste.ms/api/v1/projects/300004","html_url":"https://ost.ecosyste.ms/projects/300004"}