{"id":21044,"name":"python-louvain","description":"Louvain Community Detection","url":"https://github.com/taynaud/python-louvain","last_synced_at":"2025-09-05T00:49:26.349Z","repository":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273695199,"owners_count":25151481,"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-04T02:00:08.968Z","response_time":61,"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":"taynaud","name":"Thomas Aynaud","uuid":"1381568","kind":"user","description":"","email":"","website":"http://perso.crans.org/aynaud/","location":"Paris","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1381568?u=805d544bb1f5cdf60ae2a671a8f673c815bb5f57\u0026v=4","repositories_count":3,"last_synced_at":"2023-03-22T13:37:51.598Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/taynaud","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-03T09:09:13.610Z","updated_at":"2023-03-22T13:37:51.675Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud/repositories"},"packages":[{"id":8677258,"name":"py3-louvain","ecosystem":"alpine","description":"Louvain community detection method","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2023-09-15T13:10:30.000Z","latest_release_published_at":"2023-09-15T13:10:30.000Z","latest_release_number":"0.16-r3","last_synced_at":"2025-08-29T15:35:03.648Z","created_at":"2023-12-20T10:28:26.331Z","updated_at":"2025-08-29T15:35:03.649Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.19/community/x86_64/py3-louvain","install_command":"apk add py3-louvain","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{},"repo_metadata_updated_at":null,"dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-louvain?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-louvain","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-louvain","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-louvain/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-louvain/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-louvain/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-louvain/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-louvain/related_packages","maintainers":[{"uuid":"iztok@iztok-jr-fister.eu","login":null,"name":"Iztok Fister, Jr.","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","packages_count":170,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","role":null,"created_at":"2024-08-21T11:58:49.569Z","updated_at":"2024-08-21T11:58:49.569Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/maintainers/iztok@iztok-jr-fister.eu/packages"}],"registry":{"name":"alpine-v3.19","url":"https://pkgs.alpinelinux.org/packages?branch=v3.19","ecosystem":"alpine","default":false,"packages_count":23031,"maintainers_count":376,"namespaces_count":2,"keywords_count":2596,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":703},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-12-20T09:51:56.346Z","updated_at":"2025-09-04T07:04:01.420Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/namespaces"}},{"id":11139277,"name":"py3-louvain","ecosystem":"alpine","description":"Louvain community detection method","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"0.16-r4","last_synced_at":"2025-08-29T15:35:15.215Z","created_at":"2024-12-07T12:50:38.123Z","updated_at":"2025-08-29T16:23:31.848Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.21/community/x86_64/py3-louvain","install_command":"apk add py3-louvain","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272718527,"owners_count":24981491,"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-08-29T02:00:10.610Z","response_time":87,"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"}},"repo_metadata_updated_at":"2025-08-29T16:23:31.848Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-louvain?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-louvain","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-louvain","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-louvain/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-29T12:05:55.195Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-louvain/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-louvain/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-louvain/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-louvain/related_packages","maintainers":[{"uuid":"iztok@iztok-jr-fister.eu","login":null,"name":"Iztok Fister, Jr.","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","packages_count":238,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","role":null,"created_at":"2024-12-12T12:10:31.477Z","updated_at":"2024-12-12T12:10:31.477Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/maintainers/iztok@iztok-jr-fister.eu/packages"}],"registry":{"name":"alpine-v3.21","url":"https://pkgs.alpinelinux.org/packages?branch=v3.21","ecosystem":"alpine","default":false,"packages_count":25393,"maintainers_count":413,"namespaces_count":2,"keywords_count":2720,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1044},"icon_url":"https://github.com/alpinelinux.png","created_at":"2024-12-06T12:06:36.014Z","updated_at":"2025-09-04T06:59:06.028Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/namespaces"}},{"id":8677259,"name":"py3-louvain-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-louvain","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2023-09-15T13:10:30.000Z","latest_release_published_at":"2023-09-15T13:10:30.000Z","latest_release_number":"0.16-r3","last_synced_at":"2025-08-29T15:35:15.226Z","created_at":"2023-12-20T10:28:26.464Z","updated_at":"2025-08-29T16:23:32.892Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.19/community/x86_64/py3-louvain-pyc","install_command":"apk add py3-louvain-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272718527,"owners_count":24981491,"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-08-29T02:00:10.610Z","response_time":87,"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"}},"repo_metadata_updated_at":"2025-08-29T16:23:32.892Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-louvain-pyc?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-louvain-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-louvain-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-louvain-pyc/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-29T12:05:55.195Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-louvain-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-louvain-pyc/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-louvain-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages/py3-louvain-pyc/related_packages","maintainers":[],"registry":{"name":"alpine-v3.19","url":"https://pkgs.alpinelinux.org/packages?branch=v3.19","ecosystem":"alpine","default":false,"packages_count":23031,"maintainers_count":376,"namespaces_count":2,"keywords_count":2596,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":703},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-12-20T09:51:56.346Z","updated_at":"2025-09-04T07:04:01.420Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.19/namespaces"}},{"id":11139276,"name":"py3-louvain-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-louvain","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"0.16-r4","last_synced_at":"2025-08-29T15:35:14.932Z","created_at":"2024-12-07T12:50:37.743Z","updated_at":"2025-08-29T16:23:34.070Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.21/community/x86_64/py3-louvain-pyc","install_command":"apk add py3-louvain-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272718527,"owners_count":24981491,"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-08-29T02:00:10.610Z","response_time":87,"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"}},"repo_metadata_updated_at":"2025-08-29T16:23:34.070Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-louvain-pyc?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-louvain-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-louvain-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-louvain-pyc/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-29T12:05:55.195Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-louvain-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-louvain-pyc/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-louvain-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages/py3-louvain-pyc/related_packages","maintainers":[{"uuid":"iztok@iztok-jr-fister.eu","login":null,"name":"Iztok Fister, Jr.","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","packages_count":238,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","role":null,"created_at":"2024-12-12T12:10:31.905Z","updated_at":"2024-12-12T12:10:31.905Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/maintainers/iztok@iztok-jr-fister.eu/packages"}],"registry":{"name":"alpine-v3.21","url":"https://pkgs.alpinelinux.org/packages?branch=v3.21","ecosystem":"alpine","default":false,"packages_count":25393,"maintainers_count":413,"namespaces_count":2,"keywords_count":2720,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1044},"icon_url":"https://github.com/alpinelinux.png","created_at":"2024-12-06T12:06:36.014Z","updated_at":"2025-09-04T06:59:06.028Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.21/namespaces"}},{"id":5284818,"name":"python-louvain","ecosystem":"conda","description":"This module implements community detection.  It uses the louvain method described in Fast unfolding of communities in large networks, Vincent D Blondel, Jean-Loup Guillaume, Renaud Lambiotte, Renaud Lefebvre, Journal of Statistical Mechanics: Theory and Experiment 2008(10), P10008 (12pp)","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":null,"versions_count":5,"first_release_published_at":"2018-08-19T12:08:32.000Z","latest_release_published_at":"2025-08-29T11:20:49.000Z","latest_release_number":"0.16","last_synced_at":"2025-08-29T12:05:10.324Z","created_at":"2022-10-03T15:41:17.583Z","updated_at":"2025-08-29T16:23:35.007Z","registry_url":"https://anaconda.org/anaconda/python-louvain","install_command":"conda install -c anaconda python-louvain","documentation_url":null,"metadata":{},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272718527,"owners_count":24981491,"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-08-29T02:00:10.610Z","response_time":87,"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":"taynaud","name":"Thomas Aynaud","uuid":"1381568","kind":"user","description":"","email":"","website":"http://perso.crans.org/aynaud/","location":"Paris","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1381568?u=805d544bb1f5cdf60ae2a671a8f673c815bb5f57\u0026v=4","repositories_count":3,"last_synced_at":"2023-03-22T13:37:51.598Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/taynaud","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-03T09:09:13.610Z","updated_at":"2023-03-22T13:37:51.675Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud/repositories"},"tags":[{"name":"0.16","sha":"e084d69569584423870e251ead602f537a62fd19","kind":"commit","published_at":"2022-01-29T15:37:46.000Z","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/0.16","html_url":"https://github.com/taynaud/python-louvain/releases/tag/0.16","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/taynaud/python-louvain@0.16","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16/manifests"}]},"repo_metadata_updated_at":"2025-08-29T16:23:35.006Z","dependent_packages_count":1,"downloads":null,"downloads_period":null,"dependent_repos_count":38,"rankings":{"downloads":null,"dependent_repos_count":26.372278442195647,"dependent_packages_count":40.938362465501385,"stargazers_count":25.114995400183993,"forks_count":23.520392517632626,"docker_downloads_count":null,"average":28.986507206378413},"purl":"pkg:conda/python-louvain","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/conda/python-louvain","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/conda/python-louvain","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/conda/python-louvain/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-29T12:05:55.195Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/python-louvain/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/python-louvain/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/python-louvain/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/python-louvain/related_packages","maintainers":[],"registry":{"name":"anaconda.org","url":"https://anaconda.org","ecosystem":"conda","default":true,"packages_count":4327,"maintainers_count":0,"namespaces_count":0,"keywords_count":2901,"github":"Anaconda","metadata":{"kind":"anaconda","key":"Main","api":"https://repo.ananconda.com","funded_packages_count":611},"icon_url":"https://github.com/Anaconda.png","created_at":"2022-10-03T15:37:08.736Z","updated_at":"2025-09-04T06:59:49.169Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/namespaces"}},{"id":76132,"name":"py-python-louvain","ecosystem":"spack","description":"This module implements community detection. It uses the louvain method\ndescribed in Fast unfolding of communities in large networks, Vincent D\nBlondel, Jean-Loup Guillaume, Renaud Lambiotte, Renaud Lefebvre, Journal\nof Statistical Mechanics: Theory and Experiment 2008(10), P10008 (12pp)\n","homepage":"https://github.com/taynaud/python-louvain","licenses":"[]","normalized_licenses":["Other"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":null,"versions_count":1,"first_release_published_at":"2022-04-05T09:28:11.700Z","latest_release_published_at":"2022-04-05T09:28:11.700Z","latest_release_number":"0.15","last_synced_at":"2025-08-29T15:35:18.889Z","created_at":"2022-04-05T09:28:11.673Z","updated_at":"2025-08-29T16:23:35.225Z","registry_url":"https://packages.spack.io/package.html?name=py-python-louvain","install_command":"spack install py-python-louvain","documentation_url":null,"metadata":{},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272718527,"owners_count":24981491,"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-08-29T02:00:10.610Z","response_time":87,"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":"taynaud","name":"Thomas Aynaud","uuid":"1381568","kind":"user","description":"","email":"","website":"http://perso.crans.org/aynaud/","location":"Paris","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1381568?u=805d544bb1f5cdf60ae2a671a8f673c815bb5f57\u0026v=4","repositories_count":3,"last_synced_at":"2023-03-22T13:37:51.598Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/taynaud","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-03T09:09:13.610Z","updated_at":"2023-03-22T13:37:51.675Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud/repositories"},"tags":[{"name":"0.16","sha":"e084d69569584423870e251ead602f537a62fd19","kind":"commit","published_at":"2022-01-29T15:37:46.000Z","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/0.16","html_url":"https://github.com/taynaud/python-louvain/releases/tag/0.16","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/taynaud/python-louvain@0.16","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16/manifests"}]},"repo_metadata_updated_at":"2025-08-29T16:23:35.224Z","dependent_packages_count":2,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":28.06725024315687,"stargazers_count":7.933861331110186,"forks_count":7.239127414200361,"average":10.810059747116854},"purl":"pkg:spack/py-python-louvain","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/spack/py-python-louvain","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/spack/py-python-louvain","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/spack/py-python-louvain/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-29T12:05:55.195Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/packages/py-python-louvain/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/packages/py-python-louvain/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/packages/py-python-louvain/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/packages/py-python-louvain/related_packages","maintainers":[{"uuid":"adamjstewart","login":"adamjstewart","name":null,"email":null,"url":"https://github.com/adamjstewart","packages_count":2171,"html_url":null,"role":null,"created_at":"2022-11-14T16:54:59.710Z","updated_at":"2022-11-14T16:54:59.710Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/maintainers/adamjstewart/packages"}],"registry":{"name":"spack.io","url":"https://packages.spack.io","ecosystem":"spack","default":true,"packages_count":8771,"maintainers_count":926,"namespaces_count":0,"keywords_count":3681,"github":"spack","metadata":{"funded_packages_count":402},"icon_url":"https://github.com/spack.png","created_at":"2022-04-04T15:19:23.514Z","updated_at":"2025-09-04T07:04:55.751Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/spack.io/namespaces"}},{"id":6096918,"name":"py3-louvain","ecosystem":"alpine","description":"Louvain community detection method","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2022-10-27T23:25:38.000Z","latest_release_published_at":"2022-10-27T23:25:38.000Z","latest_release_number":"0.16-r0","last_synced_at":"2025-08-29T15:35:06.495Z","created_at":"2023-01-31T20:37:06.408Z","updated_at":"2025-08-29T16:23:35.262Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.17/community/x86_64/py3-louvain","install_command":"apk add py3-louvain","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272718527,"owners_count":24981491,"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-08-29T02:00:10.610Z","response_time":87,"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":"taynaud","name":"Thomas Aynaud","uuid":"1381568","kind":"user","description":"","email":"","website":"http://perso.crans.org/aynaud/","location":"Paris","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1381568?u=805d544bb1f5cdf60ae2a671a8f673c815bb5f57\u0026v=4","repositories_count":3,"last_synced_at":"2023-03-22T13:37:51.598Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/taynaud","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-03T09:09:13.610Z","updated_at":"2023-03-22T13:37:51.675Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud/repositories"},"tags":[{"name":"0.16","sha":"e084d69569584423870e251ead602f537a62fd19","kind":"commit","published_at":"2022-01-29T15:37:46.000Z","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/0.16","html_url":"https://github.com/taynaud/python-louvain/releases/tag/0.16","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/taynaud/python-louvain@0.16","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16/manifests"}]},"repo_metadata_updated_at":"2025-08-29T16:23:35.261Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":27.253845290221175,"stargazers_count":8.31368586504996,"forks_count":6.910295273380488,"average":10.619456607162906},"purl":"pkg:apk/alpine/py3-louvain?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-louvain","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-louvain","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-louvain/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-29T12:05:55.195Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages/py3-louvain/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages/py3-louvain/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages/py3-louvain/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages/py3-louvain/related_packages","maintainers":[{"uuid":"iztok@iztok-jr-fister.eu","login":null,"name":"Iztok Fister, Jr.","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","packages_count":87,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","role":null,"created_at":"2023-02-01T07:09:58.536Z","updated_at":"2023-02-01T07:09:58.536Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/maintainers/iztok@iztok-jr-fister.eu/packages"}],"registry":{"name":"alpine-v3.17","url":"https://pkgs.alpinelinux.org/packages?branch=v3.17","ecosystem":"alpine","default":false,"packages_count":17817,"maintainers_count":352,"namespaces_count":2,"keywords_count":3356,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1026},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-01-31T17:27:50.642Z","updated_at":"2025-09-04T07:04:14.856Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.17/namespaces"}},{"id":10344820,"name":"py3-louvain","ecosystem":"alpine","description":"Louvain community detection method","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"0.16-r4","last_synced_at":"2025-08-29T15:35:12.871Z","created_at":"2024-06-11T10:07:19.653Z","updated_at":"2025-08-29T16:23:35.259Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.20/community/x86_64/py3-louvain","install_command":"apk add py3-louvain","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272718527,"owners_count":24981491,"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-08-29T02:00:10.610Z","response_time":87,"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":"taynaud","name":"Thomas Aynaud","uuid":"1381568","kind":"user","description":"","email":"","website":"http://perso.crans.org/aynaud/","location":"Paris","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1381568?u=805d544bb1f5cdf60ae2a671a8f673c815bb5f57\u0026v=4","repositories_count":3,"last_synced_at":"2023-03-22T13:37:51.598Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/taynaud","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-03T09:09:13.610Z","updated_at":"2023-03-22T13:37:51.675Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud/repositories"},"tags":[{"name":"0.16","sha":"e084d69569584423870e251ead602f537a62fd19","kind":"commit","published_at":"2022-01-29T15:37:46.000Z","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/0.16","html_url":"https://github.com/taynaud/python-louvain/releases/tag/0.16","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/taynaud/python-louvain@0.16","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16/manifests"}]},"repo_metadata_updated_at":"2025-08-29T16:23:35.258Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-louvain?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-louvain","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-louvain","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-louvain/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-29T12:05:55.195Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-louvain/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-louvain/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-louvain/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-louvain/related_packages","maintainers":[{"uuid":"iztok@iztok-jr-fister.eu","login":null,"name":"Iztok Fister, Jr.","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","packages_count":271,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","role":null,"created_at":"2024-06-12T01:16:13.241Z","updated_at":"2024-06-12T01:16:13.241Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/maintainers/iztok@iztok-jr-fister.eu/packages"}],"registry":{"name":"alpine-v3.20","url":"https://pkgs.alpinelinux.org/packages?branch=v3.20","ecosystem":"alpine","default":false,"packages_count":24162,"maintainers_count":405,"namespaces_count":2,"keywords_count":4232,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1362},"icon_url":"https://github.com/alpinelinux.png","created_at":"2024-06-07T11:51:39.915Z","updated_at":"2025-09-03T07:00:27.928Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/namespaces"}},{"id":11765853,"name":"py3-louvain-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-louvain","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"0.16-r4","last_synced_at":"2025-08-29T15:35:15.083Z","created_at":"2025-06-07T18:30:51.963Z","updated_at":"2025-08-29T16:23:35.260Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.22/community/x86_64/py3-louvain-pyc","install_command":"apk add py3-louvain-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272718527,"owners_count":24981491,"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-08-29T02:00:10.610Z","response_time":87,"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":"taynaud","name":"Thomas Aynaud","uuid":"1381568","kind":"user","description":"","email":"","website":"http://perso.crans.org/aynaud/","location":"Paris","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1381568?u=805d544bb1f5cdf60ae2a671a8f673c815bb5f57\u0026v=4","repositories_count":3,"last_synced_at":"2023-03-22T13:37:51.598Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/taynaud","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-03T09:09:13.610Z","updated_at":"2023-03-22T13:37:51.675Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud/repositories"},"tags":[{"name":"0.16","sha":"e084d69569584423870e251ead602f537a62fd19","kind":"commit","published_at":"2022-01-29T15:37:46.000Z","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/0.16","html_url":"https://github.com/taynaud/python-louvain/releases/tag/0.16","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/taynaud/python-louvain@0.16","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16/manifests"}]},"repo_metadata_updated_at":"2025-08-29T16:23:35.260Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-louvain-pyc?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-louvain-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-louvain-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-louvain-pyc/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-29T12:05:55.195Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-louvain-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-louvain-pyc/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-louvain-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-louvain-pyc/related_packages","maintainers":[{"uuid":"iztok@iztok-jr-fister.eu","login":null,"name":"Iztok Fister, Jr.","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","packages_count":221,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","role":null,"created_at":"2025-06-08T15:38:22.868Z","updated_at":"2025-06-08T15:38:22.868Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/maintainers/iztok@iztok-jr-fister.eu/packages"}],"registry":{"name":"alpine-v3.22","url":"https://pkgs.alpinelinux.org/packages?branch=v3.22","ecosystem":"alpine","default":false,"packages_count":26314,"maintainers_count":422,"namespaces_count":2,"keywords_count":4641,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1611},"icon_url":"https://github.com/alpinelinux.png","created_at":"2025-06-05T10:49:56.987Z","updated_at":"2025-09-04T06:49:34.432Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/namespaces"}},{"id":10344821,"name":"py3-louvain-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-louvain","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"0.16-r4","last_synced_at":"2025-08-29T15:35:08.538Z","created_at":"2024-06-11T10:07:20.217Z","updated_at":"2025-08-29T16:23:35.260Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.20/community/x86_64/py3-louvain-pyc","install_command":"apk add py3-louvain-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272718527,"owners_count":24981491,"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-08-29T02:00:10.610Z","response_time":87,"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":"taynaud","name":"Thomas Aynaud","uuid":"1381568","kind":"user","description":"","email":"","website":"http://perso.crans.org/aynaud/","location":"Paris","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1381568?u=805d544bb1f5cdf60ae2a671a8f673c815bb5f57\u0026v=4","repositories_count":3,"last_synced_at":"2023-03-22T13:37:51.598Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/taynaud","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-03T09:09:13.610Z","updated_at":"2023-03-22T13:37:51.675Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud/repositories"},"tags":[{"name":"0.16","sha":"e084d69569584423870e251ead602f537a62fd19","kind":"commit","published_at":"2022-01-29T15:37:46.000Z","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/0.16","html_url":"https://github.com/taynaud/python-louvain/releases/tag/0.16","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/taynaud/python-louvain@0.16","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16/manifests"}]},"repo_metadata_updated_at":"2025-08-29T16:23:35.260Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-louvain-pyc?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-louvain-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-louvain-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-louvain-pyc/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-29T12:05:55.195Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-louvain-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-louvain-pyc/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-louvain-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages/py3-louvain-pyc/related_packages","maintainers":[{"uuid":"iztok@iztok-jr-fister.eu","login":null,"name":"Iztok Fister, Jr.","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","packages_count":271,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","role":null,"created_at":"2024-06-12T01:16:21.258Z","updated_at":"2024-06-12T01:16:21.258Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/maintainers/iztok@iztok-jr-fister.eu/packages"}],"registry":{"name":"alpine-v3.20","url":"https://pkgs.alpinelinux.org/packages?branch=v3.20","ecosystem":"alpine","default":false,"packages_count":24162,"maintainers_count":405,"namespaces_count":2,"keywords_count":4232,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1362},"icon_url":"https://github.com/alpinelinux.png","created_at":"2024-06-07T11:51:39.915Z","updated_at":"2025-09-03T07:00:27.928Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.20/namespaces"}},{"id":11765852,"name":"py3-louvain","ecosystem":"alpine","description":"Louvain community detection method","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"0.16-r4","last_synced_at":"2025-08-29T15:35:15.210Z","created_at":"2025-06-07T18:30:47.103Z","updated_at":"2025-08-29T16:23:35.259Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.22/community/x86_64/py3-louvain","install_command":"apk add py3-louvain","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272718527,"owners_count":24981491,"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-08-29T02:00:10.610Z","response_time":87,"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":"taynaud","name":"Thomas Aynaud","uuid":"1381568","kind":"user","description":"","email":"","website":"http://perso.crans.org/aynaud/","location":"Paris","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1381568?u=805d544bb1f5cdf60ae2a671a8f673c815bb5f57\u0026v=4","repositories_count":3,"last_synced_at":"2023-03-22T13:37:51.598Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/taynaud","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-03T09:09:13.610Z","updated_at":"2023-03-22T13:37:51.675Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud/repositories"},"tags":[{"name":"0.16","sha":"e084d69569584423870e251ead602f537a62fd19","kind":"commit","published_at":"2022-01-29T15:37:46.000Z","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/0.16","html_url":"https://github.com/taynaud/python-louvain/releases/tag/0.16","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/taynaud/python-louvain@0.16","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16/manifests"}]},"repo_metadata_updated_at":"2025-08-29T16:23:35.258Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":100},"purl":"pkg:apk/alpine/py3-louvain?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-louvain","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-louvain","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-louvain/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-29T12:05:55.195Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-louvain/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-louvain/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-louvain/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages/py3-louvain/related_packages","maintainers":[{"uuid":"iztok@iztok-jr-fister.eu","login":null,"name":"Iztok Fister, Jr.","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","packages_count":221,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","role":null,"created_at":"2025-06-08T15:38:17.530Z","updated_at":"2025-06-08T15:38:17.530Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/maintainers/iztok@iztok-jr-fister.eu/packages"}],"registry":{"name":"alpine-v3.22","url":"https://pkgs.alpinelinux.org/packages?branch=v3.22","ecosystem":"alpine","default":false,"packages_count":26314,"maintainers_count":422,"namespaces_count":2,"keywords_count":4641,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1611},"icon_url":"https://github.com/alpinelinux.png","created_at":"2025-06-05T10:49:56.987Z","updated_at":"2025-09-04T06:49:34.432Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.22/namespaces"}},{"id":7632413,"name":"py3-louvain-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-louvain","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":"community","versions_count":3,"first_release_published_at":"2023-04-20T10:22:19.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"0.16-r4","last_synced_at":"2025-08-29T15:35:17.022Z","created_at":"2023-04-23T01:46:30.486Z","updated_at":"2025-08-29T16:23:35.263Z","registry_url":"https://pkgs.alpinelinux.org/package/edge/community/x86_64/py3-louvain-pyc","install_command":"apk add py3-louvain-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272718527,"owners_count":24981491,"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-08-29T02:00:10.610Z","response_time":87,"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":"taynaud","name":"Thomas Aynaud","uuid":"1381568","kind":"user","description":"","email":"","website":"http://perso.crans.org/aynaud/","location":"Paris","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1381568?u=805d544bb1f5cdf60ae2a671a8f673c815bb5f57\u0026v=4","repositories_count":3,"last_synced_at":"2023-03-22T13:37:51.598Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/taynaud","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-03T09:09:13.610Z","updated_at":"2023-03-22T13:37:51.675Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud/repositories"},"tags":[{"name":"0.16","sha":"e084d69569584423870e251ead602f537a62fd19","kind":"commit","published_at":"2022-01-29T15:37:46.000Z","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/0.16","html_url":"https://github.com/taynaud/python-louvain/releases/tag/0.16","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/taynaud/python-louvain@0.16","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16/manifests"}]},"repo_metadata_updated_at":"2025-08-29T16:23:35.263Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":14.132689623958058,"stargazers_count":10.412260195183496,"forks_count":8.289732457605107,"average":8.208670569186665},"purl":"pkg:apk/alpine/py3-louvain-pyc?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-louvain-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-louvain-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-louvain-pyc/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-29T12:05:55.195Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-louvain-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-louvain-pyc/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-louvain-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-louvain-pyc/related_packages","maintainers":[{"uuid":"iztok@iztok-jr-fister.eu","login":null,"name":"Iztok Fister, Jr.","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","packages_count":292,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","role":null,"created_at":"2023-04-23T04:08:04.391Z","updated_at":"2023-04-23T04:08:04.391Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/maintainers/iztok@iztok-jr-fister.eu/packages"}],"registry":{"name":"alpine-edge","url":"https://pkgs.alpinelinux.org/packages?branch=edge","ecosystem":"alpine","default":false,"packages_count":37091,"maintainers_count":822,"namespaces_count":3,"keywords_count":6480,"github":"alpinelinux","metadata":{"repos":["main","community","testing"],"funded_packages_count":2628},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-01-31T17:27:50.616Z","updated_at":"2025-09-04T05:02:22.372Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/namespaces"}},{"id":7779177,"name":"py3-louvain-pyc","ecosystem":"alpine","description":"Precompiled Python bytecode for py3-louvain","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2023-04-20T10:22:19.000Z","latest_release_published_at":"2023-04-20T10:22:19.000Z","latest_release_number":"0.16-r2","last_synced_at":"2025-08-29T15:35:09.716Z","created_at":"2023-05-22T14:28:13.690Z","updated_at":"2025-08-29T16:23:35.328Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.18/community/x86_64/py3-louvain-pyc","install_command":"apk add py3-louvain-pyc","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272718527,"owners_count":24981491,"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-08-29T02:00:10.610Z","response_time":87,"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":"taynaud","name":"Thomas Aynaud","uuid":"1381568","kind":"user","description":"","email":"","website":"http://perso.crans.org/aynaud/","location":"Paris","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1381568?u=805d544bb1f5cdf60ae2a671a8f673c815bb5f57\u0026v=4","repositories_count":3,"last_synced_at":"2023-03-22T13:37:51.598Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/taynaud","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-03T09:09:13.610Z","updated_at":"2023-03-22T13:37:51.675Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud/repositories"},"tags":[{"name":"0.16","sha":"e084d69569584423870e251ead602f537a62fd19","kind":"commit","published_at":"2022-01-29T15:37:46.000Z","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/0.16","html_url":"https://github.com/taynaud/python-louvain/releases/tag/0.16","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/taynaud/python-louvain@0.16","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16/manifests"}]},"repo_metadata_updated_at":"2025-08-29T16:23:35.328Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":8.647947733280136,"forks_count":6.987182684155403,"docker_downloads_count":null,"average":3.9087826043588847},"purl":"pkg:apk/alpine/py3-louvain-pyc?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-louvain-pyc","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-louvain-pyc","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-louvain-pyc/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-29T12:05:55.195Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-louvain-pyc/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-louvain-pyc/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-louvain-pyc/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-louvain-pyc/related_packages","maintainers":[{"uuid":"iztok@iztok-jr-fister.eu","login":null,"name":"Iztok Fister, Jr.","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","packages_count":231,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","role":null,"created_at":"2023-05-23T07:15:45.627Z","updated_at":"2023-05-23T07:15:45.627Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/maintainers/iztok@iztok-jr-fister.eu/packages"}],"registry":{"name":"alpine-v3.18","url":"https://pkgs.alpinelinux.org/packages?branch=v3.18","ecosystem":"alpine","default":false,"packages_count":20068,"maintainers_count":367,"namespaces_count":2,"keywords_count":3621,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1083},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-05-22T10:43:30.622Z","updated_at":"2025-09-04T07:04:07.863Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/namespaces"}},{"id":7779176,"name":"py3-louvain","ecosystem":"alpine","description":"Louvain community detection method","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":"community","versions_count":1,"first_release_published_at":"2023-04-20T10:22:19.000Z","latest_release_published_at":"2023-04-20T10:22:19.000Z","latest_release_number":"0.16-r2","last_synced_at":"2025-08-29T15:35:11.804Z","created_at":"2023-05-22T14:28:13.441Z","updated_at":"2025-08-29T16:23:35.964Z","registry_url":"https://pkgs.alpinelinux.org/package/v3.18/community/x86_64/py3-louvain","install_command":"apk add py3-louvain","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272718527,"owners_count":24981491,"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-08-29T02:00:10.610Z","response_time":87,"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":"taynaud","name":"Thomas Aynaud","uuid":"1381568","kind":"user","description":"","email":"","website":"http://perso.crans.org/aynaud/","location":"Paris","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1381568?u=805d544bb1f5cdf60ae2a671a8f673c815bb5f57\u0026v=4","repositories_count":3,"last_synced_at":"2023-03-22T13:37:51.598Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/taynaud","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-03T09:09:13.610Z","updated_at":"2023-03-22T13:37:51.675Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud/repositories"},"tags":[{"name":"0.16","sha":"e084d69569584423870e251ead602f537a62fd19","kind":"commit","published_at":"2022-01-29T15:37:46.000Z","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/0.16","html_url":"https://github.com/taynaud/python-louvain/releases/tag/0.16","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/taynaud/python-louvain@0.16","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16/manifests"}]},"repo_metadata_updated_at":"2025-08-29T16:23:35.964Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":0.0,"stargazers_count":8.647947733280136,"forks_count":6.987182684155403,"docker_downloads_count":null,"average":3.9087826043588847},"purl":"pkg:apk/alpine/py3-louvain?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-louvain","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-louvain","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-louvain/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-29T12:05:55.195Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-louvain/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-louvain/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-louvain/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages/py3-louvain/related_packages","maintainers":[{"uuid":"iztok@iztok-jr-fister.eu","login":null,"name":"Iztok Fister, Jr.","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","packages_count":231,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","role":null,"created_at":"2023-05-23T07:15:47.099Z","updated_at":"2023-05-23T07:15:47.099Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/maintainers/iztok@iztok-jr-fister.eu/packages"}],"registry":{"name":"alpine-v3.18","url":"https://pkgs.alpinelinux.org/packages?branch=v3.18","ecosystem":"alpine","default":false,"packages_count":20068,"maintainers_count":367,"namespaces_count":2,"keywords_count":3621,"github":"alpinelinux","metadata":{"repos":["main","community"],"funded_packages_count":1083},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-05-22T10:43:30.622Z","updated_at":"2025-09-04T07:04:07.863Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-v3.18/namespaces"}},{"id":6055961,"name":"py3-louvain","ecosystem":"alpine","description":"Louvain community detection method","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":"community","versions_count":4,"first_release_published_at":"2022-11-22T19:33:35.000Z","latest_release_published_at":"2024-04-12T09:59:22.000Z","latest_release_number":"0.16-r4","last_synced_at":"2025-08-29T15:35:18.530Z","created_at":"2023-01-31T18:50:26.429Z","updated_at":"2025-08-29T16:23:36.153Z","registry_url":"https://pkgs.alpinelinux.org/package/edge/community/x86_64/py3-louvain","install_command":"apk add py3-louvain","documentation_url":null,"metadata":{"repository":"community","architecture":"x86_64"},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272718527,"owners_count":24981491,"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-08-29T02:00:10.610Z","response_time":87,"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":"taynaud","name":"Thomas Aynaud","uuid":"1381568","kind":"user","description":"","email":"","website":"http://perso.crans.org/aynaud/","location":"Paris","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1381568?u=805d544bb1f5cdf60ae2a671a8f673c815bb5f57\u0026v=4","repositories_count":3,"last_synced_at":"2023-03-22T13:37:51.598Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/taynaud","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-03T09:09:13.610Z","updated_at":"2023-03-22T13:37:51.675Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud/repositories"},"tags":[{"name":"0.16","sha":"e084d69569584423870e251ead602f537a62fd19","kind":"commit","published_at":"2022-01-29T15:37:46.000Z","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/0.16","html_url":"https://github.com/taynaud/python-louvain/releases/tag/0.16","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/taynaud/python-louvain@0.16","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16/manifests"}]},"repo_metadata_updated_at":"2025-08-29T16:23:36.152Z","dependent_packages_count":0,"downloads":null,"downloads_period":null,"dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":0.0,"dependent_packages_count":14.64073262366938,"stargazers_count":10.050093926111458,"forks_count":8.210707576706325,"average":8.225383531621791},"purl":"pkg:apk/alpine/py3-louvain?arch=x86_64","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/alpine/py3-louvain","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/alpine/py3-louvain","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/alpine/py3-louvain/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-29T12:05:55.195Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-louvain/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-louvain/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-louvain/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages/py3-louvain/related_packages","maintainers":[{"uuid":"iztok@iztok-jr-fister.eu","login":null,"name":"Iztok Fister, Jr.","email":null,"url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","packages_count":292,"html_url":"https://pkgs.alpinelinux.org/packages?maintainer=Iztok Fister, Jr.","role":null,"created_at":"2023-01-31T23:15:57.311Z","updated_at":"2023-01-31T23:15:57.311Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/maintainers/iztok@iztok-jr-fister.eu/packages"}],"registry":{"name":"alpine-edge","url":"https://pkgs.alpinelinux.org/packages?branch=edge","ecosystem":"alpine","default":false,"packages_count":37091,"maintainers_count":822,"namespaces_count":3,"keywords_count":6480,"github":"alpinelinux","metadata":{"repos":["main","community","testing"],"funded_packages_count":2628},"icon_url":"https://github.com/alpinelinux.png","created_at":"2023-01-31T17:27:50.616Z","updated_at":"2025-09-04T05:02:22.372Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/alpine-edge/namespaces"}},{"id":2888244,"name":"python-louvain","ecosystem":"pypi","description":"Louvain algorithm for community detection","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":null,"versions_count":16,"first_release_published_at":"2013-11-05T10:37:13.000Z","latest_release_published_at":"2023-08-20T06:02:58.958Z","latest_release_number":"0.4","last_synced_at":"2025-09-04T05:31:32.180Z","created_at":"2022-04-10T12:21:12.571Z","updated_at":"2025-09-04T05:31:32.180Z","registry_url":"https://pypi.org/project/python-louvain/","install_command":"pip install python-louvain --index-url https://pypi.org/simple","documentation_url":"https://python-louvain.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":["Development Status :: 4 - Beta","License :: OSI Approved :: BSD License","Programming Language :: Python","Programming Language :: Python :: 2.7","Programming Language :: Python :: 3"],"normalized_name":"python-louvain","project_status":null},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":956,"open_issues_count":14,"forks_count":199,"subscribers_count":23,"default_branch":"master","last_synced_at":"2024-11-05T23:05:55.938Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2024-11-05T15:06:49.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223692693,"owners_count":17187062,"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":"taynaud","name":"Thomas Aynaud","uuid":"1381568","kind":"user","description":"","email":"","website":"http://perso.crans.org/aynaud/","location":"Paris","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1381568?u=805d544bb1f5cdf60ae2a671a8f673c815bb5f57\u0026v=4","repositories_count":3,"last_synced_at":"2023-03-22T13:37:51.598Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/taynaud","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-03T09:09:13.610Z","updated_at":"2023-03-22T13:37:51.675Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud/repositories"},"tags":[{"name":"0.16","sha":"e084d69569584423870e251ead602f537a62fd19","kind":"commit","published_at":"2022-01-29T15:37:46.000Z","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/0.16","html_url":"https://github.com/taynaud/python-louvain/releases/tag/0.16","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16/manifests"}]},"repo_metadata_updated_at":"2024-11-10T22:11:53.996Z","dependent_packages_count":59,"downloads":165681,"downloads_period":"last-month","dependent_repos_count":889,"rankings":{"downloads":0.8333479911896511,"dependent_repos_count":0.39498036824443833,"dependent_packages_count":0.28436241256588707,"stargazers_count":2.1218712805689592,"forks_count":3.4029274091685857,"docker_downloads_count":1.0557565310521801,"average":1.3488743321316168},"purl":"pkg:pypi/python-louvain","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/python-louvain","docker_dependents_count":52,"docker_downloads_count":138298,"usage_url":"https://repos.ecosyste.ms/usage/pypi/python-louvain","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/python-louvain/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2024-11-09T14:06:03.931Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":2,"past_year_pull_requests_count":1,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":182693.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":1,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":2,"past_year_avg_comments_per_issue":0.0,"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,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/python-louvain/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/python-louvain/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/python-louvain/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/python-louvain/related_packages","maintainers":[{"uuid":"Thomas.Aynaud","login":"Thomas.Aynaud","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://pypi.org/user/Thomas.Aynaud/","role":null,"created_at":"2023-01-24T07:27:31.552Z","updated_at":"2023-01-24T07:27:31.552Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/Thomas.Aynaud/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":724943,"maintainers_count":308264,"namespaces_count":0,"keywords_count":237984,"github":"pypi","metadata":{"funded_packages_count":50481},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-09-04T05:23:51.177Z","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"}},{"id":5301371,"name":"python-louvain","ecosystem":"conda","description":"This module implements community detection.  It uses the louvain method described in Fast unfolding of communities in large networks, Vincent D Blondel, Jean-Loup Guillaume, Renaud Lambiotte, Renaud Lefebvre, Journal of Statistical Mechanics: Theory and Experiment 2008(10), P10008 (12pp)","homepage":"https://github.com/taynaud/python-louvain","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/taynaud/python-louvain","keywords_array":[],"namespace":null,"versions_count":5,"first_release_published_at":"2018-05-05T19:41:35.000Z","latest_release_published_at":"2020-12-28T03:15:40.000Z","latest_release_number":"0.15","last_synced_at":"2025-08-15T15:54:48.096Z","created_at":"2022-10-03T16:10:43.324Z","updated_at":"2025-08-29T16:23:36.147Z","registry_url":"https://anaconda.org/conda-forge/python-louvain","install_command":"conda install -c conda-forge python-louvain","documentation_url":null,"metadata":{},"repo_metadata":{"id":16614460,"uuid":"65826230","full_name":"taynaud/python-louvain","owner":"taynaud","description":"Louvain Community Detection","archived":false,"fork":false,"pushed_at":"2024-03-16T17:04:10.000Z","size":231,"stargazers_count":1014,"open_issues_count":14,"forks_count":201,"subscribers_count":22,"default_branch":"master","last_synced_at":"2025-08-29T14:03:48.119Z","etag":null,"topics":["community-detection","louvain-method","networkx"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/taynaud.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION","codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-08-16T14:18:17.000Z","updated_at":"2025-08-28T03:07:13.000Z","dependencies_parsed_at":"2024-03-16T18:49:27.858Z","dependency_job_id":"02694d00-384f-4584-97d6-9ff5eb9f2677","html_url":"https://github.com/taynaud/python-louvain","commit_stats":{"total_commits":108,"total_committers":25,"mean_commits":4.32,"dds":0.6759259259259259,"last_synced_commit":"638804ae636dc65306900ef6518ca0a1c9202566"},"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/taynaud/python-louvain","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/sbom","scorecard":{"id":869972,"data":{"date":"2025-08-11","repo":{"name":"github.com/taynaud/python-louvain","commit":"def91793772c3e77ab4167d175903a5365c24b4b"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.6,"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":-1,"reason":"no workflows found","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":-1,"reason":"No tokens found","details":null,"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"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":"Code-Review","score":5,"reason":"Found 14/25 approved changesets -- score normalized to 5","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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: containerImage not pinned by hash: .devcontainer/Dockerfile:4","Info:   0 out of   1 containerImage 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":"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":"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:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"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 'master'"],"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-2018-34 / GHSA-2fc2-6r4j-p65h","Warn: Project is vulnerable to: PYSEC-2021-856 / GHSA-5545-2q6w-2gh6","Warn: Project is vulnerable to: PYSEC-2019-108 / GHSA-9fq2-x9r6-wfmf","Warn: Project is vulnerable to: PYSEC-2018-33 / GHSA-cw6w-4rcx-xphc","Warn: Project is vulnerable to: PYSEC-2021-857 / GHSA-f7c7-j99h-c22f","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2017-1 / GHSA-frgw-fgh6-9g52"],"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 19 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-24T03:51:35.979Z","repository_id":16614460,"created_at":"2025-08-24T03:51:35.979Z","updated_at":"2025-08-24T03:51:35.979Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272718527,"owners_count":24981491,"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-08-29T02:00:10.610Z","response_time":87,"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":"taynaud","name":"Thomas Aynaud","uuid":"1381568","kind":"user","description":"","email":"","website":"http://perso.crans.org/aynaud/","location":"Paris","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/1381568?u=805d544bb1f5cdf60ae2a671a8f673c815bb5f57\u0026v=4","repositories_count":3,"last_synced_at":"2023-03-22T13:37:51.598Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/taynaud","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-03T09:09:13.610Z","updated_at":"2023-03-22T13:37:51.675Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/taynaud/repositories"},"tags":[{"name":"0.16","sha":"e084d69569584423870e251ead602f537a62fd19","kind":"commit","published_at":"2022-01-29T15:37:46.000Z","download_url":"https://codeload.github.com/taynaud/python-louvain/tar.gz/0.16","html_url":"https://github.com/taynaud/python-louvain/releases/tag/0.16","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/taynaud/python-louvain@0.16","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/tags/0.16/manifests"}]},"repo_metadata_updated_at":"2025-08-29T16:23:36.146Z","dependent_packages_count":6,"downloads":null,"downloads_period":null,"dependent_repos_count":38,"rankings":{"downloads":null,"dependent_repos_count":5.844771649613177,"dependent_packages_count":9.034190167207386,"stargazers_count":13.915647616670826,"forks_count":12.907412028949338,"docker_downloads_count":null,"average":10.425505365610181},"purl":"pkg:conda/python-louvain","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/conda/python-louvain","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/conda/python-louvain","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/conda/python-louvain/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-29T12:05:55.195Z","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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/taynaud%2Fpython-louvain/issues","maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/python-louvain/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/python-louvain/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/python-louvain/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/python-louvain/related_packages","maintainers":[],"registry":{"name":"conda-forge.org","url":"https://conda-forge.org","ecosystem":"conda","default":false,"packages_count":20636,"maintainers_count":0,"namespaces_count":0,"keywords_count":13387,"github":"conda-forge","metadata":{"kind":"conda-forge","key":"CondaForge","api":"https://conda.anaconda.org","funded_packages_count":2180},"icon_url":"https://github.com/conda-forge.png","created_at":"2022-10-03T15:37:08.743Z","updated_at":"2025-09-04T07:00:12.892Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/namespaces"}}],"commits":{"id":4950,"full_name":"taynaud/python-louvain","default_branch":"master","committers":[{"name":"Thomas Aynaud","email":"thomas@clustree.com","login":null,"count":35},{"name":"Thomas Aynaud","email":"taynaud","login":"taynaud","count":27},{"name":"Thomas Aynaud","email":"t.aynaud@qwant.com","login":null,"count":16},{"name":"Richard Millson","email":"8217613+richardmillson","login":"richardmillson","count":5},{"name":"Todd","email":"toddrme2178@gmail.com","login":"toddrme2178","count":4},{"name":"TheSkunkMan","email":"TheSkunkMan@localhost","login":null,"count":2},{"name":"Pavlin Poličar","email":"pavlin.g.p@gmail.com","login":"pavlin-policar","count":2},{"name":"villanuevab","email":"villanuevab","login":"villanuevab","count":1},{"name":"user-vi","email":"50022091+user-vi","login":"user-vi","count":1},{"name":"asellappenIBM","email":"31274494+asellappen","login":"asellappen","count":1},{"name":"Avril Kenney","email":"akenney","login":"akenney","count":1},{"name":"Benjamin Ricaud","email":"benjamin.ricaud@gmail.com","login":"bricaud","count":1},{"name":"Dalwar Hossain","email":"5631766+dalwar23","login":"dalwar23","count":1},{"name":"Domi W","email":"dominik.wunderlich@gmx.de","login":"thedomdom","count":1},{"name":"Juang, Yi-Lin","email":"frankyjuang","login":"frankyjuang","count":1},{"name":"Kathy Fan","email":"kathy.z.fan@gmail.com","login":"kathyfan","count":1},{"name":"Kerstin","email":"kerstin@erictapen.name","login":"erictapen","count":1},{"name":"Lizhi Zhang","email":"49128927+ComplexLychee","login":"ComplexLychee","count":1},{"name":"Luke Cyca","email":"me@lukecyca.com","login":"lukecyca","count":1},{"name":"Mahdi Salehi","email":"mahdi5534@yahoo.com","login":"mahdi5534","count":1},{"name":"MeggyCal","email":"MeggyCal","login":"MeggyCal","count":1},{"name":"Mridul Seth","email":"seth.mridul@gmail.com","login":"MridulS","count":1},{"name":"Nikoleta Glynatsi","email":"glynatsine@cardiff.ac.uk","login":"Nikoleta-v3","count":1},{"name":"Patrick Bourke","email":"pbourke@gmail.com","login":"pbourke","count":1},{"name":"Zhouhan Chen","email":"zc1245@nyu.edu","login":"zhouhanc","count":1},{"name":"altsoph","email":"altsoph@gmail.com","login":"altsoph","count":1}],"total_commits":110,"total_committers":26,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":4.230769230769231,"dds":0.6818181818181819,"past_year_committers":[],"past_year_total_commits":0,"past_year_total_committers":0,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":0.0,"past_year_dds":0.0,"last_synced_at":"2025-03-22T21:30:04.700Z","last_synced_commit":"def91793772c3e77ab4167d175903a5365c24b4b","created_at":"2023-03-07T09:22:09.784Z","updated_at":"2025-03-22T21:30:04.866Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-03T00:00:08.276Z","repositories_count":5480019,"commits_count":853389012,"contributors_count":31098138,"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":"taynaud/python-louvain","html_url":"https://github.com/taynaud/python-louvain","last_synced_at":"2025-08-29T12:05:55.195Z","status":"error","issues_count":77,"pull_requests_count":27,"avg_time_to_close_issue":18975963.015873015,"avg_time_to_close_pull_request":8442019.444444444,"issues_closed_count":63,"pull_requests_closed_count":27,"pull_request_authors_count":25,"issue_authors_count":67,"avg_comments_per_issue":1.948051948051948,"avg_comments_per_pull_request":1.1111111111111112,"merged_pull_requests_count":24,"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,"created_at":"2023-05-10T11:04:12.955Z","updated_at":"2025-09-01T05:49:34.017Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/taynaud%2Fpython-louvain/issues","issue_labels_count":{"enhancement":3,"question":1},"pull_request_labels_count":{},"issue_author_associations_count":{"NONE":66,"OWNER":7,"CONTRIBUTOR":3},"pull_request_author_associations_count":{"CONTRIBUTOR":23,"NONE":4,"OWNER":1},"issue_authors":{"taynaud":7,"seralouk":2,"yuxuanChen777":2,"jb110":2,"jolespin":2,"jmmcd":1,"aafshinfard":1,"dalwar23":1,"gebaltso":1,"andreacortis":1,"Mataivic":1,"zhqu1148980644":1,"newbie2k20":1,"GillesVandewiele":1,"yaya159456":1,"amjass12":1,"Ronneesley":1,"Lemour-sudo":1,"YB1224":1,"PeeteM":1,"mainulquraishi":1,"pavlin-policar":1,"nahuelalmeira":1,"himanshucodz55":1,"student2k21":1,"rkatriel-mdsol":1,"ma-ji":1,"leomaurodesenv":1,"gg4u":1,"tomorrow1pan":1,"alexbovet":1,"asemic-horizon":1,"stelmath":1,"neverUseThisName":1,"judekurn":1,"wxwmd":1,"AleksandrKent":1,"magdalini-anastasiadou":1,"mazzma12":1,"XiaoxiaLin":1,"deter3":1,"KirstieJane":1,"cosai":1,"whatever60":1,"aj-cmsc":1,"idimitriadis":1,"skatsikeas":1,"zhmh163":1,"smoe":1,"datazhen":1,"edwinans":1,"drighelli":1,"williamfzc":1,"Green-16":1,"aminKMT":1,"MogicianEik":1,"Kawue":1,"cooper12121":1,"Nikoleta-v3":1,"Apteryks":1,"teriterance":1,"w4bo":1,"guillemfigols":1,"ricklovelisa":1,"jcatumba":1,"DonaldTsang":1},"pull_request_authors":{"pavlin-policar":2,"richardmillson":2,"MeggyCal":2,"kathyfan":1,"dalwar23":1,"taynaud":1,"user-vi":1,"Nikoleta-v3":1,"ComplexLychee":1,"zhouhanc":1,"jaaufauvre":1,"thedomdom":1,"mahdi5534":1,"erictapen":1,"pbourke":1,"yilinjuang":1,"fzc961020":1,"altsoph":1,"villanuevab":1,"toddrme2178":1,"asellappen":1,"akenney":1,"bricaud":1,"gerritjandebruin":1,"MridulS":1},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-05T00:00:10.444Z","repositories_count":10082304,"issues_count":31220387,"pull_requests_count":96069062,"authors_count":10694175,"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":{},"past_year_issue_authors":{},"past_year_pull_request_authors":{},"maintainers":[{"login":"taynaud","count":8,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/taynaud"}],"active_maintainers":[]},"events":{"total":{"WatchEvent":63,"ForkEvent":3},"last_year":{"WatchEvent":63,"ForkEvent":3}},"keywords":["community-detection","louvain-method","networkx"],"dependencies":[{"ecosystem":"docker","filepath":".devcontainer/Dockerfile","sha":null,"kind":"manifest","created_at":"2024-03-16T18:49:26.776Z","updated_at":"2024-03-16T18:49:26.776Z","repository_link":"https://github.com/taynaud/python-louvain/blob/master/.devcontainer/Dockerfile","dependencies":[{"id":16854535025,"package_name":"mcr.microsoft.com/vscode/devcontainers/python","ecosystem":"docker","requirements":"${VARIANT}","direct":true,"kind":"build","optional":false}]},{"ecosystem":"pypi","filepath":"requirements.txt","sha":null,"kind":"manifest","created_at":"2024-03-16T18:49:26.991Z","updated_at":"2024-03-16T18:49:26.991Z","repository_link":"https://github.com/taynaud/python-louvain/blob/master/requirements.txt","dependencies":[{"id":16854535060,"package_name":"networkx","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":16854535086,"package_name":"numpy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":16854535141,"package_name":"numpydoc","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"setup.py","sha":null,"kind":"manifest","created_at":"2024-03-16T18:49:27.825Z","updated_at":"2024-03-16T18:49:27.825Z","repository_link":"https://github.com/taynaud/python-louvain/blob/master/setup.py","dependencies":[{"id":16854535185,"package_name":"networkx","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":16854535186,"package_name":"numpy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]}],"score":22.8217536876329,"created_at":"2025-09-04T15:50:52.497Z","updated_at":"2025-10-07T08:10:14.107Z","avatar_url":"https://github.com/taynaud.png","language":"Python","category":null,"sub_category":null,"monthly_downloads":165681,"funding_links":[],"readme_doi_urls":[],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://science.ecosyste.ms/api/v1/projects/21044","html_url":"https://science.ecosyste.ms/projects/21044","bibtex_url":"https://science.ecosyste.ms/projects/21044/export.bibtex","apalike_url":"https://science.ecosyste.ms/projects/21044/export.apalike"}