{"id":75725,"name":"gym-anm","description":"A framework to design Reinforcement Learning environments that model Active Network Management (ANM) tasks in electricity distribution networks.","url":"https://github.com/robinhenry/gym-anm","last_synced_at":"2025-09-08T16:44:17.365Z","repository":{"id":49295446,"uuid":"197476036","full_name":"robinhenry/gym-anm","owner":"robinhenry","description":"A framework to design Reinforcement Learning environments that model Active Network Management (ANM) tasks in electricity distribution networks.","archived":false,"fork":false,"pushed_at":"2024-11-14T09:43:59.000Z","size":7336,"stargazers_count":160,"open_issues_count":0,"forks_count":35,"subscribers_count":5,"default_branch":"main","last_synced_at":"2025-09-02T03:42:07.958Z","etag":null,"topics":["active-network-management","control","electricity-networks","gym-environments","reinforcement-learning"],"latest_commit_sha":null,"homepage":"https://gym-anm.readthedocs.io/en/latest/","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/robinhenry.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-07-17T23:19:13.000Z","updated_at":"2025-08-26T08:36:44.000Z","dependencies_parsed_at":"2023-09-21T19:19:01.682Z","dependency_job_id":"8b70a5d3-3da9-48a9-b07a-c0846469958b","html_url":"https://github.com/robinhenry/gym-anm","commit_stats":{"total_commits":227,"total_committers":3,"mean_commits":75.66666666666667,"dds":"0.022026431718061623","last_synced_commit":"0e02c33df990fab2ec263dfaf6945703b05a4903"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"purl":"pkg:github/robinhenry/gym-anm","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/robinhenry","download_url":"https://codeload.github.com/robinhenry/gym-anm/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/sbom","scorecard":{"id":780699,"data":{"date":"2025-08-11","repo":{"name":"github.com/robinhenry/gym-anm","commit":"a2e57df598643975382d74d4933130c29a4b53fa"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.2,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/ci_checks.yml:1","Warn: no topLevel permission defined: .github/workflows/ci_release.yml:1","Warn: no topLevel permission defined: .github/workflows/stale_issues.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Code-Review","score":0,"reason":"Found 0/30 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci_checks.yml:15: update your workflow using https://app.stepsecurity.io/secureworkflow/robinhenry/gym-anm/ci_checks.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci_checks.yml:17: update your workflow using https://app.stepsecurity.io/secureworkflow/robinhenry/gym-anm/ci_checks.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci_checks.yml:21: update your workflow using https://app.stepsecurity.io/secureworkflow/robinhenry/gym-anm/ci_checks.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci_checks.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/robinhenry/gym-anm/ci_checks.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci_release.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/robinhenry/gym-anm/ci_release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci_release.yml:20: update your workflow using https://app.stepsecurity.io/secureworkflow/robinhenry/gym-anm/ci_release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci_release.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/robinhenry/gym-anm/ci_release.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/ci_release.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/robinhenry/gym-anm/ci_release.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/stale_issues.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/robinhenry/gym-anm/stale_issues.yml/main?enable=pin","Info:   0 out of   5 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   4 third-party GitHubAction dependencies pinned"],"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE.md:0","Info: FSF or OSI recognized license: MIT License: LICENSE.md:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/ci_release.yml:8"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'main'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":3,"reason":"7 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: PYSEC-2024-48 / GHSA-fj7x-q9j7-g6q6","Warn: Project is vulnerable to: GHSA-cpwx-vrp4-4pq7","Warn: Project is vulnerable to: GHSA-gmj6-6f8f-6699","Warn: Project is vulnerable to: GHSA-q2x7-8rv6-6q7h","Warn: Project is vulnerable to: GHSA-9hjg-9r4m-mvj7","Warn: Project is vulnerable to: GHSA-48p4-8xcf-vxj5","Warn: Project is vulnerable to: GHSA-pq67-6m6q-mj2v"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 7 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-23T04:50:17.370Z","repository_id":49295446,"created_at":"2025-08-23T04:50:17.370Z","updated_at":"2025-08-23T04:50:17.370Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274145906,"owners_count":25230111,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-08T02:00:09.813Z","response_time":121,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"robinhenry","name":"Robin Henry","uuid":"33941047","kind":"user","description":"Research engineer interested in disruptive technology. Currently Data Scientist @ Habitat Energy.","email":"","website":null,"location":"Oxford, UK","twitter":null,"company":"Habitat Energy","icon_url":"https://avatars.githubusercontent.com/u/33941047?u=8fbd17ad448b250c5ee1c6f2a4042dd9cdf12778\u0026v=4","repositories_count":13,"last_synced_at":"2024-06-11T15:44:03.643Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/robinhenry","funding_links":[],"total_stars":140,"followers":25,"following":16,"created_at":"2023-03-05T15:08:09.026Z","updated_at":"2024-06-11T15:44:04.597Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/robinhenry","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/robinhenry/repositories"},"packages":[{"id":2754795,"name":"gym-anm","ecosystem":"pypi","description":"A framework to build Reinforcement Learning environments for Active Network Management tasks in electricity networks.","homepage":"https://github.com/robinhenry/gym-anm","licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/robinhenry/gym-anm","keywords_array":[],"namespace":null,"versions_count":11,"first_release_published_at":"2021-03-10T14:16:49.000Z","latest_release_published_at":"2024-11-14T09:32:22.000Z","latest_release_number":"2.0.1","last_synced_at":"2025-09-08T06:34:19.826Z","created_at":"2022-04-10T11:12:37.851Z","updated_at":"2025-09-08T06:34:19.826Z","registry_url":"https://pypi.org/project/gym-anm/","install_command":"pip install gym-anm --index-url https://pypi.org/simple","documentation_url":"https://gym-anm.readthedocs.io/en/latest/","metadata":{"funding":null,"documentation":"https://gym-anm.readthedocs.io/en/latest/","classifiers":["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"],"normalized_name":"gym-anm","project_status":null},"repo_metadata":{"id":49295446,"uuid":"197476036","full_name":"robinhenry/gym-anm","owner":"robinhenry","description":"Design Reinforcement Learning environments that model Active Network Management (ANM) tasks in electricity distribution networks.","archived":false,"fork":false,"pushed_at":"2023-06-18T12:25:28.000Z","size":7260,"stargazers_count":130,"open_issues_count":0,"forks_count":31,"subscribers_count":6,"default_branch":"main","last_synced_at":"2024-06-11T17:49:46.433Z","etag":null,"topics":["electricity-networks","gym-environments","reinforcement-learning"],"latest_commit_sha":null,"homepage":"https://gym-anm.readthedocs.io/en/latest/","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/robinhenry.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2019-07-17T23:19:13.000Z","updated_at":"2024-06-03T12:13:04.000Z","dependencies_parsed_at":"2023-09-21T19:19:01.682Z","dependency_job_id":"8b70a5d3-3da9-48a9-b07a-c0846469958b","html_url":"https://github.com/robinhenry/gym-anm","commit_stats":{"total_commits":227,"total_committers":3,"mean_commits":75.66666666666667,"dds":"0.022026431718061623","last_synced_commit":"0e02c33df990fab2ec263dfaf6945703b05a4903"},"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/robinhenry","download_url":"https://codeload.github.com/robinhenry/gym-anm/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":216752986,"owners_count":16074552,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"robinhenry","name":"Robin Henry","uuid":"33941047","kind":"user","description":"Research engineer interested in disruptive technology. Currently Data Scientist @ Habitat Energy.","email":"","website":null,"location":"Oxford, UK","twitter":null,"company":"Habitat Energy","icon_url":"https://avatars.githubusercontent.com/u/33941047?u=8fbd17ad448b250c5ee1c6f2a4042dd9cdf12778\u0026v=4","repositories_count":13,"last_synced_at":"2024-06-11T15:44:03.643Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/robinhenry","funding_links":[],"total_stars":140,"followers":25,"following":16,"created_at":"2023-03-05T15:08:09.026Z","updated_at":"2024-06-11T15:44:04.597Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/robinhenry","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/robinhenry/repositories"},"tags":[{"name":"1.1.6","sha":"632ae4a475f3622861b4bdb5453de4a67c623e5b","kind":"commit","published_at":"2023-04-14T19:53:38.000Z","download_url":"https://codeload.github.com/robinhenry/gym-anm/tar.gz/1.1.6","html_url":"https://github.com/robinhenry/gym-anm/releases/tag/1.1.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.1.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.1.6/manifests"},{"name":"1.1.5","sha":"7d2ff6741bdea64e0b1040dff2edaf0c7a4a9683","kind":"commit","published_at":"2023-04-14T19:11:23.000Z","download_url":"https://codeload.github.com/robinhenry/gym-anm/tar.gz/1.1.5","html_url":"https://github.com/robinhenry/gym-anm/releases/tag/1.1.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.1.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.1.5/manifests"},{"name":"1.1.4","sha":"5b5e1698d625bc68a8feb2246f1fbd25811f52e4","kind":"commit","published_at":"2022-11-27T02:24:16.000Z","download_url":"https://codeload.github.com/robinhenry/gym-anm/tar.gz/1.1.4","html_url":"https://github.com/robinhenry/gym-anm/releases/tag/1.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.1.4/manifests"},{"name":"1.1.3","sha":"101463b403ae9c6ec2cbb92b344bce28d768e7ac","kind":"commit","published_at":"2022-11-27T02:07:43.000Z","download_url":"https://codeload.github.com/robinhenry/gym-anm/tar.gz/1.1.3","html_url":"https://github.com/robinhenry/gym-anm/releases/tag/1.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.1.3/manifests"},{"name":"1.1.2","sha":"5f6267e51be8c6930efbfb7377652254d12896d3","kind":"commit","published_at":"2022-11-27T01:42:00.000Z","download_url":"https://codeload.github.com/robinhenry/gym-anm/tar.gz/1.1.2","html_url":"https://github.com/robinhenry/gym-anm/releases/tag/1.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.1.2/manifests"},{"name":"1.1.1","sha":"2c6acef2fb0edf7f19e12b1f76fe6ffa064054dc","kind":"commit","published_at":"2022-11-27T01:35:26.000Z","download_url":"https://codeload.github.com/robinhenry/gym-anm/tar.gz/1.1.1","html_url":"https://github.com/robinhenry/gym-anm/releases/tag/1.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.1.1/manifests"},{"name":"1.1.0","sha":"9c0b23707decf11069eb4f8accf413417d911454","kind":"commit","published_at":"2022-11-27T01:25:12.000Z","download_url":"https://codeload.github.com/robinhenry/gym-anm/tar.gz/1.1.0","html_url":"https://github.com/robinhenry/gym-anm/releases/tag/1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.1.0/manifests"},{"name":"1.0.2","sha":"231097eb0fe00d26a55b6324581b875533916c94","kind":"commit","published_at":"2021-10-22T19:45:31.000Z","download_url":"https://codeload.github.com/robinhenry/gym-anm/tar.gz/1.0.2","html_url":"https://github.com/robinhenry/gym-anm/releases/tag/1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/tags/1.0.2/manifests"}]},"repo_metadata_updated_at":"2024-09-07T19:53:21.495Z","dependent_packages_count":1,"downloads":81,"downloads_period":"last-month","dependent_repos_count":3,"rankings":{"downloads":3.0860355228800387,"dependent_repos_count":9.143324777740581,"dependent_packages_count":3.2435152210473146,"stargazers_count":6.513351460233379,"forks_count":7.394819788954365,"docker_downloads_count":null,"average":5.876209354171136},"purl":"pkg:pypi/gym-anm","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/gym-anm","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/gym-anm","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/gym-anm/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2024-09-07T18:32:13.784Z","issues_count":10,"pull_requests_count":9,"avg_time_to_close_issue":7339328.4,"avg_time_to_close_pull_request":116986.0,"issues_closed_count":10,"pull_requests_closed_count":9,"pull_request_authors_count":2,"issue_authors_count":7,"avg_comments_per_issue":1.5,"avg_comments_per_pull_request":0.0,"merged_pull_requests_count":9,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":0,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":null,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":0,"past_year_pull_request_authors_count":0,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":null,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":0,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/issues","maintainers":[{"login":"robinhenry","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/robinhenry"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/gym-anm/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/gym-anm/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/gym-anm/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/gym-anm/related_packages","maintainers":[{"uuid":"robinhenry","login":"robinhenry","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://pypi.org/user/robinhenry/","role":null,"created_at":"2022-11-27T06:37:00.143Z","updated_at":"2022-11-27T06:37:00.143Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/robinhenry/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":726211,"maintainers_count":308809,"namespaces_count":0,"keywords_count":238245,"github":"pypi","metadata":{"funded_packages_count":50579},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-09-08T05:32:36.857Z","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":590667,"full_name":"robinhenry/gym-anm","default_branch":"main","committers":[{"name":"Robin Henry","email":"robin.henry012@gmail.com","login":"robinhenry","count":230},{"name":"robin henry","email":"rhenry@vega.ulg.ac.be","login":null,"count":4},{"name":"Satya Prakash Dash","email":"sprakashdash@gmail.com","login":"sprakashdash","count":1}],"total_commits":235,"total_committers":3,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":78.33333333333333,"dds":0.021276595744680882,"past_year_committers":[{"name":"Robin Henry","email":"robin.henry012@gmail.com","login":"robinhenry","count":8}],"past_year_total_commits":8,"past_year_total_committers":1,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":8.0,"past_year_dds":0.0,"last_synced_at":"2025-08-08T15:31:11.501Z","last_synced_commit":"a2e57df598643975382d74d4933130c29a4b53fa","created_at":"2023-03-09T06:19:38.584Z","updated_at":"2025-08-08T15:31:11.501Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-08-22T00:00:16.844Z","repositories_count":5479765,"commits_count":853308191,"contributors_count":31095157,"owners_count":906558,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"robinhenry/gym-anm","html_url":"https://github.com/robinhenry/gym-anm","last_synced_at":"2025-09-01T03:05:36.354Z","status":"error","issues_count":10,"pull_requests_count":11,"avg_time_to_close_issue":7339328.4,"avg_time_to_close_pull_request":188557.81818181818,"issues_closed_count":10,"pull_requests_closed_count":11,"pull_request_authors_count":2,"issue_authors_count":7,"avg_comments_per_issue":1.5,"avg_comments_per_pull_request":0.0,"merged_pull_requests_count":10,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":510631.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":2,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"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":1,"created_at":"2023-05-09T10:36:49.494Z","updated_at":"2025-09-02T19:16:17.680Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/robinhenry%2Fgym-anm/issues","issue_labels_count":{"stale":2,"enhancement":1,"bug":1},"pull_request_labels_count":{},"issue_author_associations_count":{"NONE":7,"OWNER":1,"CONTRIBUTOR":1},"pull_request_author_associations_count":{"OWNER":12,"NONE":1,"CONTRIBUTOR":1},"issue_authors":{"Kim-369":2,"sifatron":2,"sprakashdash":1,"robinhenry":1,"pablo-ta":1,"diegofz":1,"lordmuck2020":1},"pull_request_authors":{"robinhenry":12,"halduaij":1,"sprakashdash":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-03T00:00:08.273Z","repositories_count":10054150,"issues_count":30900719,"pull_requests_count":92695808,"authors_count":10570509,"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":{},"past_year_pull_request_author_associations_count":{"OWNER":4,"NONE":1},"past_year_issue_authors":{},"past_year_pull_request_authors":{"robinhenry":4,"halduaij":1},"maintainers":[{"login":"robinhenry","count":13,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/robinhenry"}],"active_maintainers":[{"login":"robinhenry","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/robinhenry"}]},"events":{"total":{"ReleaseEvent":1,"WatchEvent":25,"DeleteEvent":1,"PushEvent":21,"PullRequestEvent":5,"ForkEvent":3,"CreateEvent":4},"last_year":{"ReleaseEvent":1,"WatchEvent":25,"DeleteEvent":1,"PushEvent":21,"PullRequestEvent":5,"ForkEvent":3,"CreateEvent":4}},"keywords":["active-network-management","control","electricity-networks","gym-environments","reinforcement-learning"],"dependencies":[{"ecosystem":"actions","filepath":".github/workflows/ci_checks.yml","sha":null,"kind":"manifest","created_at":"2023-01-24T03:01:48.811Z","updated_at":"2023-01-24T03:01:48.811Z","repository_link":"https://github.com/robinhenry/gym-anm/blob/main/.github/workflows/ci_checks.yml","dependencies":[{"id":7132739854,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7132739855,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":7132739856,"package_name":"abatilo/actions-poetry","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":7132739857,"package_name":"codecov/codecov-action","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/ci_release.yml","sha":null,"kind":"manifest","created_at":"2023-01-24T03:01:48.818Z","updated_at":"2023-01-24T03:01:48.818Z","repository_link":"https://github.com/robinhenry/gym-anm/blob/main/.github/workflows/ci_release.yml","dependencies":[{"id":7132739858,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7132739859,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":7132739860,"package_name":"abatilo/actions-poetry","ecosystem":"actions","requirements":"v2.0.0","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"pypi","filepath":"poetry.lock","sha":null,"kind":"lockfile","created_at":"2023-01-24T03:01:48.824Z","updated_at":"2023-01-24T03:01:48.824Z","repository_link":"https://github.com/robinhenry/gym-anm/blob/main/poetry.lock","dependencies":[{"id":7132739861,"package_name":"attrs","ecosystem":"pypi","requirements":"22.1.0","direct":false,"kind":"develop","optional":false},{"id":7132739862,"package_name":"black","ecosystem":"pypi","requirements":"22.10.0","direct":false,"kind":"develop","optional":false},{"id":7132739863,"package_name":"certifi","ecosystem":"pypi","requirements":"2022.9.24","direct":false,"kind":"runtime","optional":false},{"id":7132739864,"package_name":"charset-normalizer","ecosystem":"pypi","requirements":"2.1.1","direct":false,"kind":"runtime","optional":false},{"id":7132739865,"package_name":"click","ecosystem":"pypi","requirements":"8.1.3","direct":false,"kind":"develop","optional":false},{"id":7132739866,"package_name":"cloudpickle","ecosystem":"pypi","requirements":"2.2.0","direct":false,"kind":"runtime","optional":false},{"id":7132739867,"package_name":"colorama","ecosystem":"pypi","requirements":"0.4.6","direct":false,"kind":"develop","optional":false},{"id":7132739868,"package_name":"coverage","ecosystem":"pypi","requirements":"6.5.0","direct":false,"kind":"develop","optional":false},{"id":7132739869,"package_name":"cvxpy","ecosystem":"pypi","requirements":"1.2.2","direct":false,"kind":"runtime","optional":false},{"id":7132739870,"package_name":"ecos","ecosystem":"pypi","requirements":"2.0.10","direct":false,"kind":"runtime","optional":false},{"id":7132739871,"package_name":"exceptiongroup","ecosystem":"pypi","requirements":"1.0.4","direct":false,"kind":"develop","optional":false},{"id":7132739872,"package_name":"gym","ecosystem":"pypi","requirements":"0.26.2","direct":false,"kind":"runtime","optional":false},{"id":7132739873,"package_name":"gym-notices","ecosystem":"pypi","requirements":"0.0.8","direct":false,"kind":"runtime","optional":false},{"id":7132739874,"package_name":"idna","ecosystem":"pypi","requirements":"3.4","direct":false,"kind":"runtime","optional":false},{"id":7132739875,"package_name":"importlib-metadata","ecosystem":"pypi","requirements":"5.1.0","direct":false,"kind":"runtime","optional":false},{"id":7132739876,"package_name":"iniconfig","ecosystem":"pypi","requirements":"1.1.1","direct":false,"kind":"develop","optional":false},{"id":7132739877,"package_name":"mypy","ecosystem":"pypi","requirements":"0.981","direct":false,"kind":"develop","optional":false},{"id":7132739878,"package_name":"mypy-extensions","ecosystem":"pypi","requirements":"0.4.3","direct":false,"kind":"develop","optional":false},{"id":7132739879,"package_name":"numpy","ecosystem":"pypi","requirements":"1.23.5","direct":false,"kind":"runtime","optional":false},{"id":7132739880,"package_name":"osqp","ecosystem":"pypi","requirements":"0.6.2.post8","direct":false,"kind":"runtime","optional":false},{"id":7132739881,"package_name":"packaging","ecosystem":"pypi","requirements":"21.3","direct":false,"kind":"develop","optional":false},{"id":7132739882,"package_name":"pandas","ecosystem":"pypi","requirements":"1.5.2","direct":false,"kind":"runtime","optional":false},{"id":7132739883,"package_name":"pathspec","ecosystem":"pypi","requirements":"0.10.2","direct":false,"kind":"develop","optional":false},{"id":7132739884,"package_name":"platformdirs","ecosystem":"pypi","requirements":"2.5.4","direct":false,"kind":"develop","optional":false},{"id":7132739885,"package_name":"pluggy","ecosystem":"pypi","requirements":"1.0.0","direct":false,"kind":"develop","optional":false},{"id":7132739886,"package_name":"pyparsing","ecosystem":"pypi","requirements":"3.0.9","direct":false,"kind":"develop","optional":false},{"id":7132739887,"package_name":"pytest","ecosystem":"pypi","requirements":"7.2.0","direct":false,"kind":"develop","optional":false},{"id":7132739888,"package_name":"pytest-cov","ecosystem":"pypi","requirements":"3.0.0","direct":false,"kind":"develop","optional":false},{"id":7132739889,"package_name":"python-dateutil","ecosystem":"pypi","requirements":"2.8.2","direct":false,"kind":"runtime","optional":false},{"id":7132739890,"package_name":"pytz","ecosystem":"pypi","requirements":"2022.6","direct":false,"kind":"runtime","optional":false},{"id":7132739891,"package_name":"qdldl","ecosystem":"pypi","requirements":"0.1.5.post2","direct":false,"kind":"runtime","optional":false},{"id":7132739892,"package_name":"requests","ecosystem":"pypi","requirements":"2.28.1","direct":false,"kind":"runtime","optional":false},{"id":7132739893,"package_name":"scipy","ecosystem":"pypi","requirements":"1.9.3","direct":false,"kind":"runtime","optional":false},{"id":7132739894,"package_name":"scs","ecosystem":"pypi","requirements":"3.2.2","direct":false,"kind":"runtime","optional":false},{"id":7132739895,"package_name":"six","ecosystem":"pypi","requirements":"1.16.0","direct":false,"kind":"runtime","optional":false},{"id":7132739896,"package_name":"tomli","ecosystem":"pypi","requirements":"2.0.1","direct":false,"kind":"develop","optional":false},{"id":7132739897,"package_name":"typing-extensions","ecosystem":"pypi","requirements":"4.4.0","direct":false,"kind":"develop","optional":false},{"id":7132739898,"package_name":"urllib3","ecosystem":"pypi","requirements":"1.26.13","direct":false,"kind":"runtime","optional":false},{"id":7132739899,"package_name":"websocket-client","ecosystem":"pypi","requirements":"0.56.0","direct":false,"kind":"runtime","optional":false},{"id":7132739900,"package_name":"websocket-server","ecosystem":"pypi","requirements":"0.4","direct":false,"kind":"runtime","optional":false},{"id":7132739901,"package_name":"zipp","ecosystem":"pypi","requirements":"3.11.0","direct":false,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2023-01-24T03:01:48.839Z","updated_at":"2023-01-24T03:01:48.839Z","repository_link":"https://github.com/robinhenry/gym-anm/blob/main/pyproject.toml","dependencies":[{"id":7132739902,"package_name":"python","ecosystem":"pypi","requirements":"^3.8","direct":true,"kind":"runtime","optional":false},{"id":7132739903,"package_name":"numpy","ecosystem":"pypi","requirements":"^1.23.5","direct":true,"kind":"runtime","optional":false},{"id":7132739904,"package_name":"pandas","ecosystem":"pypi","requirements":"^1.5.2","direct":true,"kind":"runtime","optional":false},{"id":7132739905,"package_name":"cvxpy","ecosystem":"pypi","requirements":"^1.2.2","direct":true,"kind":"runtime","optional":false},{"id":7132739906,"package_name":"gym","ecosystem":"pypi","requirements":"^0.26.2","direct":true,"kind":"runtime","optional":false},{"id":7132739907,"package_name":"websocket-client","ecosystem":"pypi","requirements":"0.56.0","direct":true,"kind":"runtime","optional":false},{"id":7132739908,"package_name":"websocket-server","ecosystem":"pypi","requirements":"0.4","direct":true,"kind":"runtime","optional":false},{"id":7132739909,"package_name":"requests","ecosystem":"pypi","requirements":"^2.28.1","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/stale_issues.yml","sha":null,"kind":"manifest","created_at":"2023-09-21T19:18:58.449Z","updated_at":"2023-09-21T19:18:58.449Z","repository_link":"https://github.com/robinhenry/gym-anm/blob/main/.github/workflows/stale_issues.yml","dependencies":[{"id":13856580550,"package_name":"actions/stale","ecosystem":"actions","requirements":"v5","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"pypi","filepath":"docs/requirements.txt","sha":null,"kind":"manifest","created_at":"2023-09-21T19:18:58.835Z","updated_at":"2023-09-21T19:18:58.835Z","repository_link":"https://github.com/robinhenry/gym-anm/blob/main/docs/requirements.txt","dependencies":[{"id":13856581412,"package_name":"gym","ecosystem":"pypi","requirements":"==0.26.2","direct":true,"kind":"runtime","optional":false}]}],"score":10.628133400155443,"created_at":"2025-09-08T15:39:09.640Z","updated_at":"2025-10-07T08:27:19.237Z","avatar_url":"https://github.com/robinhenry.png","language":"Python","category":null,"sub_category":null,"monthly_downloads":81,"funding_links":[],"readme_doi_urls":["https://doi.org/10.1016/j.egyai.2021.100092","https://doi.org/10.1016/j.simpa.2021.100092"],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://science.ecosyste.ms/api/v1/projects/75725","html_url":"https://science.ecosyste.ms/projects/75725"}