{"id":357503,"url":"https://github.com/pysal/spopt","last_synced_at":"2026-05-14T04:30:24.164Z","repository":{"id":37854753,"uuid":"173353142","full_name":"pysal/spopt","owner":"pysal","description":"Spatial Optimization","archived":false,"fork":false,"pushed_at":"2026-04-15T22:54:51.000Z","size":172563,"stargazers_count":371,"open_issues_count":42,"forks_count":63,"subscribers_count":11,"default_branch":"main","last_synced_at":"2026-04-16T00:31:40.619Z","etag":null,"topics":["facility-location","location-allocation","location-modeling","python","regionalization","resource-planning","routing","spatial-analysis","spatial-optimization","transportation"],"latest_commit_sha":null,"homepage":"https://pysal.org/spopt/","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/pysal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-03-01T18:56:11.000Z","updated_at":"2026-04-15T22:54:56.000Z","dependencies_parsed_at":"2024-06-18T15:34:32.094Z","dependency_job_id":"a83165ed-bd1e-4e83-b23f-6dd725b40d32","html_url":"https://github.com/pysal/spopt","commit_stats":{"total_commits":826,"total_committers":19,"mean_commits":"43.473684210526315","dds":0.5932203389830508,"last_synced_commit":"464fd650cb1662432609c06d660c39f0f36c9eb4"},"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"purl":"pkg:github/pysal/spopt","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pysal","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/sbom","scorecard":{"id":751966,"data":{"date":"2025-08-11","repo":{"name":"github.com/pysal/spopt","commit":"7ebf7fe1d7edd742daf84e2fb94dac94801c7813"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.9,"checks":[{"name":"Code-Review","score":8,"reason":"Found 12/15 approved changesets -- score normalized to 8","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":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"4 commit(s) and 9 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build_docs.yml:1","Warn: no topLevel permission defined: .github/workflows/release_and_publish.yml:1","Warn: no topLevel permission defined: .github/workflows/testing.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"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":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"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.txt:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/release_and_publish.yml:14"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build_docs.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/build_docs.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build_docs.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/build_docs.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build_docs.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/build_docs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/testing.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/testing.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/testing.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/testing.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/testing.yml:78: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/testing.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/release_and_publish.yml:27","Warn: pipCommand not pinned by hash: .github/workflows/release_and_publish.yml:28","Info:   0 out of   5 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand 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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 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-22T20:37:59.130Z","repository_id":37854753,"created_at":"2025-08-22T20:37:59.130Z","updated_at":"2025-08-22T20:37:59.130Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32310804,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-26T19:15:34.056Z","status":"ssl_error","status_checked_at":"2026-04-26T19:15:15.467Z","response_time":129,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":"pysal","name":"Python Spatial Analysis Library","uuid":"3769919","kind":"organization","description":"","email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/3769919?v=4","repositories_count":37,"last_synced_at":"2024-04-16T01:04:32.528Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pysal","funding_links":[],"total_stars":4081,"followers":221,"following":0,"created_at":"2022-11-02T16:31:00.418Z","updated_at":"2024-04-16T01:04:46.773Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pysal","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pysal/repositories"},"packages":[{"id":13765357,"name":"spopt","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/pysal/spopt","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/pysal/spopt","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T10:42:27.675Z","latest_release_published_at":"2026-02-13T10:42:27.675Z","latest_release_number":"0.6.1-2","last_synced_at":"2026-03-13T18:17:17.914Z","created_at":"2026-02-13T10:42:27.438Z","updated_at":"2026-03-13T18:30:31.128Z","registry_url":"https://launchpad.net/ubuntu/+source/spopt","install_command":"apt-get install spopt","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"python3-spopt, python-spopt-doc","standards_version":"4.7.0","maintainer":"Debian Science Maintainers \u003cdebian-science-maintainers@lists.alioth.debian.org\u003e","build_depends":"debhelper-compat (= 13), dh-sequence-python3, jdupes, pandoc \u003c!nodoc\u003e, python3-all, python3-coverage \u003c!nocheck\u003e, python3-geopandas, python3-libpysal, python3-matplotlib \u003c!nocheck\u003e, python3-nbsphinx \u003c!nodoc\u003e, python3-mapclassify, python3-folium \u003c!nocheck\u003e, python3-networkx, python3-numpy, python3-numpydoc \u003c!nodoc\u003e, python3-pandas, python3-pulp, python3-pytest \u003c!nocheck\u003e, python3-pytest-cov \u003c!nocheck\u003e, python3-pytest-xdist \u003c!nocheck\u003e, python3-scipy, python3-setuptools, python3-setuptools-scm, python3-sklearn, python3-spaghetti, python3-sphinx \u003c!nodoc\u003e, python3-sphinx-bootstrap-theme \u003c!nodoc\u003e, python3-sphinxcontrib.bibtex \u003c!nodoc\u003e, python3-tqdm, pybuild-plugin-pyproject, python3-pointpats \u003c!nodoc\u003e","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-13T10:42:28.316Z","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:deb/ubuntu/spopt?arch=source\u0026distro=ubuntu-24.10\u0026repository_url=https://launchpad.net/ubuntu/oracular","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/spopt","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/spopt","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/spopt/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/spopt/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/spopt/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/spopt/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/spopt/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/spopt/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages/spopt/codemeta","maintainers":[],"registry":{"name":"ubuntu-24.10","url":"https://launchpad.net/ubuntu/oracular","ecosystem":"ubuntu","default":false,"packages_count":38437,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"oracular","mirror":"http://old-releases.ubuntu.com/ubuntu"},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.028Z","updated_at":"2026-04-27T18:20:37.303Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-24.10/namespaces"}},{"id":5303630,"name":"spopt","ecosystem":"conda","description":"Spopt is an open-source Python library for solving optimization problems with spatial data. Originating from the `region` module in [PySAL](http://pysal.org) (Python Spatial Analysis Library), it is under active development for the inclusion of newly proposed models and methods for regionalization, facility location, and transportation-oriented solutions.","homepage":"http://pysal.org/","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/pysal/spopt","keywords_array":[],"namespace":null,"versions_count":8,"first_release_published_at":"2021-01-18T21:03:37.000Z","latest_release_published_at":"2022-06-13T19:56:16.000Z","latest_release_number":"0.4.1","last_synced_at":"2026-03-23T03:13:00.958Z","created_at":"2022-10-03T16:15:18.951Z","updated_at":"2026-03-23T03:13:07.262Z","registry_url":"https://anaconda.org/conda-forge/spopt","install_command":"conda install -c conda-forge spopt","documentation_url":null,"metadata":{},"repo_metadata":{"id":37854753,"uuid":"173353142","full_name":"pysal/spopt","owner":"pysal","description":"Spatial Optimization","archived":false,"fork":false,"pushed_at":"2026-02-23T01:48:17.000Z","size":172555,"stargazers_count":368,"open_issues_count":32,"forks_count":60,"subscribers_count":11,"default_branch":"main","last_synced_at":"2026-03-21T15:18:47.786Z","etag":null,"topics":["facility-location","location-allocation","location-modeling","python","regionalization","resource-planning","routing","spatial-analysis","spatial-optimization","transportation"],"latest_commit_sha":null,"homepage":"https://pysal.org/spopt/","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/pysal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-03-01T18:56:11.000Z","updated_at":"2026-03-09T11:04:51.000Z","dependencies_parsed_at":"2024-06-18T15:34:32.094Z","dependency_job_id":"a83165ed-bd1e-4e83-b23f-6dd725b40d32","html_url":"https://github.com/pysal/spopt","commit_stats":{"total_commits":826,"total_committers":19,"mean_commits":"43.473684210526315","dds":0.5932203389830508,"last_synced_commit":"464fd650cb1662432609c06d660c39f0f36c9eb4"},"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"purl":"pkg:github/pysal/spopt","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pysal","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/sbom","scorecard":{"id":751966,"data":{"date":"2025-08-11","repo":{"name":"github.com/pysal/spopt","commit":"7ebf7fe1d7edd742daf84e2fb94dac94801c7813"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.9,"checks":[{"name":"Code-Review","score":8,"reason":"Found 12/15 approved changesets -- score normalized to 8","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":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"4 commit(s) and 9 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build_docs.yml:1","Warn: no topLevel permission defined: .github/workflows/release_and_publish.yml:1","Warn: no topLevel permission defined: .github/workflows/testing.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"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":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"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.txt:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/release_and_publish.yml:14"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build_docs.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/build_docs.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build_docs.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/build_docs.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build_docs.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/build_docs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/testing.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/testing.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/testing.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/testing.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/testing.yml:78: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/testing.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/release_and_publish.yml:27","Warn: pipCommand not pinned by hash: .github/workflows/release_and_publish.yml:28","Info:   0 out of   5 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand 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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 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-22T20:37:59.130Z","repository_id":37854753,"created_at":"2025-08-22T20:37:59.130Z","updated_at":"2025-08-22T20:37:59.130Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30843953,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-23T01:54:41.487Z","status":"online","status_checked_at":"2026-03-23T02:00:09.028Z","response_time":59,"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":"pysal","name":"Python Spatial Analysis Library","uuid":"3769919","kind":"organization","description":"","email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/3769919?v=4","repositories_count":37,"last_synced_at":"2024-04-16T01:04:32.528Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pysal","funding_links":[],"total_stars":4081,"followers":221,"following":0,"created_at":"2022-11-02T16:31:00.418Z","updated_at":"2024-04-16T01:04:46.773Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pysal","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pysal/repositories"},"tags":[{"name":"v0.7.0","sha":"27a29e112fef7998cff4956cc92edb3b26a53eb9","kind":"tag","published_at":"2025-07-14T13:01:33.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.7.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.7.0/manifests"},{"name":"v0.7.0rc1","sha":"7ebf7fe1d7edd742daf84e2fb94dac94801c7813","kind":"tag","published_at":"2025-07-14T12:49:52.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.7.0rc1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.7.0rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.7.0rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.7.0rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.7.0rc1/manifests"},{"name":"v0.6.1","sha":"030538d0bacb0de81776d90171179e31f29ed825","kind":"tag","published_at":"2024-06-20T13:39:57.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.6.1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.6.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.1/manifests"},{"name":"v0.6.1rc1","sha":"6ec4ec1341bdd027dcef4912340d5d19cf0ea0bd","kind":"tag","published_at":"2024-06-20T13:16:53.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.6.1rc1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.6.1rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.6.1rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.1rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.1rc1/manifests"},{"name":"v0.6.0","sha":"86673f8838b42569d54a74ccf1e299bbbfb20732","kind":"tag","published_at":"2023-12-10T20:26:18.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.6.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.0/manifests"},{"name":"v0.5.0","sha":"761e2c18b131de5b2109ee31ac0e68fdd2336504","kind":"tag","published_at":"2023-01-14T03:12:19.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.5.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0/manifests"},{"name":"v0.5.0rc2","sha":"761e2c18b131de5b2109ee31ac0e68fdd2336504","kind":"tag","published_at":"2023-01-13T21:44:51.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.5.0rc2","html_url":"https://github.com/pysal/spopt/releases/tag/v0.5.0rc2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.5.0rc2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0rc2/manifests"},{"name":"v0.5.0rc1","sha":"6e382b6866ed8dd8e33a49af88c29201089c2f54","kind":"tag","published_at":"2023-01-12T21:30:45.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.5.0rc1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.5.0rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.5.0rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0rc1/manifests"},{"name":"v0.4.1","sha":"abc3a764beec1ed6fcd02f4788b905076b7ef6a7","kind":"tag","published_at":"2022-06-13T15:05:14.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.4.1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.4.1/manifests"},{"name":"v0.4.0","sha":"18366f74f81b21859c26dc10d090375b7180193d","kind":"tag","published_at":"2022-05-31T00:03:42.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.4.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.4.0/manifests"},{"name":"v0.3.0","sha":"1959844eacb98238b0d7a809dc14325debf7e37c","kind":"tag","published_at":"2022-03-18T16:02:23.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.3.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.3.0/manifests"},{"name":"v0.2.1","sha":"a9cda4f363c0e3ba220d5dd0a99b197773dac6d6","kind":"tag","published_at":"2021-11-03T01:31:43.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.2.1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"7c89cf606ddaee60d80aeae50e07b1be66cfd71f","kind":"tag","published_at":"2021-11-03T00:37:34.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.2.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.2.0/manifests"},{"name":"v0.1.2","sha":"0160311cd60332ab086acd29c07993a7cf175523","kind":"tag","published_at":"2021-06-28T23:20:17.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.1.2","html_url":"https://github.com/pysal/spopt/releases/tag/v0.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.2/manifests"},{"name":"v0.1.1","sha":"efea9b066c2c46ada148fb16188db9da6bfa364f","kind":"tag","published_at":"2021-01-31T22:22:33.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.1.1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.1/manifests"},{"name":"v0.1.0","sha":"ee3bf7cae8eca1d0d0bbdfa4dfa6c8f2a32e03af","kind":"tag","published_at":"2021-01-20T00:53:54.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.1.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.0/manifests"},{"name":"v0.0.5","sha":"0515181f7c5e53445790e7c4f737d1b38f8ec9ce","kind":"tag","published_at":"2021-01-17T18:42:49.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.0.5","html_url":"https://github.com/pysal/spopt/releases/tag/v0.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.0.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.5/manifests"},{"name":"v0.0.4","sha":"efc7185b093716bef5459fa21fc01b1a1f68582e","kind":"tag","published_at":"2021-01-17T18:10:09.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.0.4","html_url":"https://github.com/pysal/spopt/releases/tag/v0.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.4/manifests"},{"name":"v0.0.3","sha":"ed6228343b7ffbc13e4b8fb0f2df6cdcf4989868","kind":"tag","published_at":"2021-01-15T22:28:50.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.0.3","html_url":"https://github.com/pysal/spopt/releases/tag/v0.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.3/manifests"},{"name":"v0.0.2","sha":"c0b1e14efcf45d2ebc126bbf073f318b4cc7cb34","kind":"tag","published_at":"2021-01-15T20:53:36.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.0.2","html_url":"https://github.com/pysal/spopt/releases/tag/v0.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.2/manifests"}]},"repo_metadata_updated_at":"2026-03-23T03:13:07.262Z","dependent_packages_count":2,"downloads":297061,"downloads_period":"total","dependent_repos_count":8,"rankings":{"downloads":null,"dependent_repos_count":12.078861991514849,"dependent_packages_count":19.580733715997006,"stargazers_count":26.35887197404542,"forks_count":29.767906164212626,"docker_downloads_count":null,"average":21.946593461442475},"purl":"pkg:conda/spopt?repository_url=https://conda-forge.org","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/conda/spopt","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/conda/spopt","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/conda/spopt/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-03-21T02:06:25.966Z","issues_count":113,"pull_requests_count":133,"avg_time_to_close_issue":4773100.558139535,"avg_time_to_close_pull_request":1191187.1048387096,"issues_closed_count":86,"pull_requests_closed_count":124,"pull_request_authors_count":19,"issue_authors_count":22,"avg_comments_per_issue":1.9026548672566372,"avg_comments_per_pull_request":1.7218045112781954,"merged_pull_requests_count":110,"bot_issues_count":0,"bot_pull_requests_count":29,"past_year_issues_count":13,"past_year_pull_requests_count":32,"past_year_avg_time_to_close_issue":265381.44444444444,"past_year_avg_time_to_close_pull_request":903862.2307692308,"past_year_issues_closed_count":9,"past_year_pull_requests_closed_count":26,"past_year_pull_request_authors_count":11,"past_year_issue_authors_count":4,"past_year_avg_comments_per_issue":0.46153846153846156,"past_year_avg_comments_per_pull_request":1.84375,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":3,"past_year_merged_pull_requests_count":22,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/issues","maintainers":[{"login":"jGaboardi","count":153,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jGaboardi"},{"login":"ljwolf","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljwolf"},{"login":"gegen07","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gegen07"},{"login":"rongboxu","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/rongboxu"},{"login":"xf37","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/xf37"},{"login":"martinfleis","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/martinfleis"},{"login":"sjsrey","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/sjsrey"}],"active_maintainers":[{"login":"jGaboardi","count":20,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jGaboardi"},{"login":"martinfleis","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/martinfleis"},{"login":"gegen07","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gegen07"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/spopt/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/spopt/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/spopt/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/spopt/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/spopt/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/conda-forge.org/packages/spopt/codemeta","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":0,"github":"conda-forge","metadata":{"kind":"conda-forge","key":"CondaForge","api":"https://conda.anaconda.org"},"icon_url":"https://github.com/conda-forge.png","created_at":"2022-10-03T15:37:08.743Z","updated_at":"2026-04-27T18:20:20.507Z","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"}},{"id":13809310,"name":"spopt","ecosystem":"ubuntu","description":null,"homepage":"https://github.com/pysal/spopt","licenses":null,"normalized_licenses":[],"repository_url":"https://github.com/pysal/spopt","keywords_array":["universe/misc"],"namespace":"universe","versions_count":1,"first_release_published_at":"2026-02-13T19:30:06.682Z","latest_release_published_at":"2026-02-13T19:30:06.682Z","latest_release_number":"0.5.0-1","last_synced_at":"2026-03-14T05:19:25.497Z","created_at":"2026-02-13T19:30:06.454Z","updated_at":"2026-03-14T05:19:25.497Z","registry_url":"https://launchpad.net/ubuntu/+source/spopt","install_command":"apt-get install spopt","documentation_url":null,"metadata":{"component":"universe","architecture":"all","priority":"optional","binary":"python3-spopt, python-spopt-doc","standards_version":"4.6.2","maintainer":"Debian Science Maintainers \u003cdebian-science-maintainers@lists.alioth.debian.org\u003e","build_depends":"black, coinor-cbc, debhelper-compat (= 13), dh-sequence-python3, jdupes, pandoc, pre-commit, python3-all, python3-coverage, python3-distutils, python3-geopandas, python3-libpysal, python3-matplotlib, python3-nbsphinx, python3-networkx, python3-numba, python3-numpy, python3-numpydoc, python3-pandas, python3-pulp, python3-pytest, python3-pytest-cov, python3-pytest-xdist, python3-scipy, python3-setuptools, python3-sklearn, python3-spaghetti, python3-sphinx, python3-sphinx-bootstrap-theme, python3-sphinxcontrib.bibtex, python3-tqdm","build_depends_indep":null,"build_depends_arch":null},"repo_metadata":{},"repo_metadata_updated_at":"2026-02-13T19:30:07.306Z","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:deb/ubuntu/spopt?arch=source\u0026distro=ubuntu-23.10\u0026repository_url=https://launchpad.net/ubuntu/mantic","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/ubuntu/spopt","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/ubuntu/spopt","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/ubuntu/spopt/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/spopt/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/spopt/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/spopt/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/spopt/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/spopt/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages/spopt/codemeta","maintainers":[],"registry":{"name":"ubuntu-23.10","url":"https://launchpad.net/ubuntu/mantic","ecosystem":"ubuntu","default":false,"packages_count":36642,"maintainers_count":0,"namespaces_count":4,"keywords_count":0,"github":"ubuntu","metadata":{"codename":"mantic","mirror":"http://old-releases.ubuntu.com/ubuntu"},"icon_url":"https://github.com/ubuntu.png","created_at":"2026-02-04T11:01:48.636Z","updated_at":"2026-04-27T18:20:38.051Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/ubuntu-23.10/namespaces"}},{"id":12028173,"name":"spopt","ecosystem":"conda","description":"Spopt is an open-source Python library for solving optimization problems with spatial data. Originating from the `region` module in [PySAL](http://pysal.org) (Python Spatial Analysis Library), it is under active development for the inclusion of newly proposed models and methods for regionalization, facility location, and transportation-oriented solutions.","homepage":"https://pysal.org/spopt","licenses":"BSD-3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/pysal/spopt","keywords_array":[],"namespace":null,"versions_count":1,"first_release_published_at":"2025-08-21T12:01:26.000Z","latest_release_published_at":"2025-08-21T12:01:26.000Z","latest_release_number":"0.7.0","last_synced_at":"2026-04-02T19:03:29.852Z","created_at":"2025-08-21T12:48:51.618Z","updated_at":"2026-04-02T19:05:53.582Z","registry_url":"https://anaconda.org/anaconda/spopt","install_command":"conda install -c anaconda spopt","documentation_url":null,"metadata":{},"repo_metadata":{"id":37854753,"uuid":"173353142","full_name":"pysal/spopt","owner":"pysal","description":"Spatial Optimization","archived":false,"fork":false,"pushed_at":"2026-02-23T01:48:17.000Z","size":172555,"stargazers_count":370,"open_issues_count":34,"forks_count":61,"subscribers_count":11,"default_branch":"main","last_synced_at":"2026-03-29T06:54:26.555Z","etag":null,"topics":["facility-location","location-allocation","location-modeling","python","regionalization","resource-planning","routing","spatial-analysis","spatial-optimization","transportation"],"latest_commit_sha":null,"homepage":"https://pysal.org/spopt/","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/pysal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-03-01T18:56:11.000Z","updated_at":"2026-03-25T17:31:09.000Z","dependencies_parsed_at":"2024-06-18T15:34:32.094Z","dependency_job_id":"a83165ed-bd1e-4e83-b23f-6dd725b40d32","html_url":"https://github.com/pysal/spopt","commit_stats":{"total_commits":826,"total_committers":19,"mean_commits":"43.473684210526315","dds":0.5932203389830508,"last_synced_commit":"464fd650cb1662432609c06d660c39f0f36c9eb4"},"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"purl":"pkg:github/pysal/spopt","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pysal","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/sbom","scorecard":{"id":751966,"data":{"date":"2025-08-11","repo":{"name":"github.com/pysal/spopt","commit":"7ebf7fe1d7edd742daf84e2fb94dac94801c7813"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.9,"checks":[{"name":"Code-Review","score":8,"reason":"Found 12/15 approved changesets -- score normalized to 8","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":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"4 commit(s) and 9 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build_docs.yml:1","Warn: no topLevel permission defined: .github/workflows/release_and_publish.yml:1","Warn: no topLevel permission defined: .github/workflows/testing.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"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":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"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.txt:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/release_and_publish.yml:14"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build_docs.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/build_docs.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build_docs.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/build_docs.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build_docs.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/build_docs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/testing.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/testing.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/testing.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/testing.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/testing.yml:78: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/testing.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/release_and_publish.yml:27","Warn: pipCommand not pinned by hash: .github/workflows/release_and_publish.yml:28","Info:   0 out of   5 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand 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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 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-22T20:37:59.130Z","repository_id":37854753,"created_at":"2025-08-22T20:37:59.130Z","updated_at":"2025-08-22T20:37:59.130Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31224263,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-31T04:08:55.938Z","status":"ssl_error","status_checked_at":"2026-03-31T04:08:47.883Z","response_time":111,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":"pysal","name":"Python Spatial Analysis Library","uuid":"3769919","kind":"organization","description":"","email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/3769919?v=4","repositories_count":37,"last_synced_at":"2024-04-16T01:04:32.528Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pysal","funding_links":[],"total_stars":4081,"followers":221,"following":0,"created_at":"2022-11-02T16:31:00.418Z","updated_at":"2024-04-16T01:04:46.773Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pysal","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pysal/repositories"},"tags":[{"name":"v0.7.0","sha":"27a29e112fef7998cff4956cc92edb3b26a53eb9","kind":"tag","published_at":"2025-07-14T13:01:33.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.7.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.7.0/manifests"},{"name":"v0.7.0rc1","sha":"7ebf7fe1d7edd742daf84e2fb94dac94801c7813","kind":"tag","published_at":"2025-07-14T12:49:52.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.7.0rc1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.7.0rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.7.0rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.7.0rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.7.0rc1/manifests"},{"name":"v0.6.1","sha":"030538d0bacb0de81776d90171179e31f29ed825","kind":"tag","published_at":"2024-06-20T13:39:57.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.6.1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.6.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.1/manifests"},{"name":"v0.6.1rc1","sha":"6ec4ec1341bdd027dcef4912340d5d19cf0ea0bd","kind":"tag","published_at":"2024-06-20T13:16:53.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.6.1rc1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.6.1rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.6.1rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.1rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.1rc1/manifests"},{"name":"v0.6.0","sha":"86673f8838b42569d54a74ccf1e299bbbfb20732","kind":"tag","published_at":"2023-12-10T20:26:18.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.6.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.0/manifests"},{"name":"v0.5.0","sha":"761e2c18b131de5b2109ee31ac0e68fdd2336504","kind":"tag","published_at":"2023-01-14T03:12:19.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.5.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0/manifests"},{"name":"v0.5.0rc2","sha":"761e2c18b131de5b2109ee31ac0e68fdd2336504","kind":"tag","published_at":"2023-01-13T21:44:51.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.5.0rc2","html_url":"https://github.com/pysal/spopt/releases/tag/v0.5.0rc2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.5.0rc2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0rc2/manifests"},{"name":"v0.5.0rc1","sha":"6e382b6866ed8dd8e33a49af88c29201089c2f54","kind":"tag","published_at":"2023-01-12T21:30:45.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.5.0rc1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.5.0rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.5.0rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0rc1/manifests"},{"name":"v0.4.1","sha":"abc3a764beec1ed6fcd02f4788b905076b7ef6a7","kind":"tag","published_at":"2022-06-13T15:05:14.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.4.1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.4.1/manifests"},{"name":"v0.4.0","sha":"18366f74f81b21859c26dc10d090375b7180193d","kind":"tag","published_at":"2022-05-31T00:03:42.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.4.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.4.0/manifests"},{"name":"v0.3.0","sha":"1959844eacb98238b0d7a809dc14325debf7e37c","kind":"tag","published_at":"2022-03-18T16:02:23.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.3.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.3.0/manifests"},{"name":"v0.2.1","sha":"a9cda4f363c0e3ba220d5dd0a99b197773dac6d6","kind":"tag","published_at":"2021-11-03T01:31:43.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.2.1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"7c89cf606ddaee60d80aeae50e07b1be66cfd71f","kind":"tag","published_at":"2021-11-03T00:37:34.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.2.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.2.0/manifests"},{"name":"v0.1.2","sha":"0160311cd60332ab086acd29c07993a7cf175523","kind":"tag","published_at":"2021-06-28T23:20:17.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.1.2","html_url":"https://github.com/pysal/spopt/releases/tag/v0.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.2/manifests"},{"name":"v0.1.1","sha":"efea9b066c2c46ada148fb16188db9da6bfa364f","kind":"tag","published_at":"2021-01-31T22:22:33.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.1.1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.1/manifests"},{"name":"v0.1.0","sha":"ee3bf7cae8eca1d0d0bbdfa4dfa6c8f2a32e03af","kind":"tag","published_at":"2021-01-20T00:53:54.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.1.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.0/manifests"},{"name":"v0.0.5","sha":"0515181f7c5e53445790e7c4f737d1b38f8ec9ce","kind":"tag","published_at":"2021-01-17T18:42:49.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.0.5","html_url":"https://github.com/pysal/spopt/releases/tag/v0.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.0.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.5/manifests"},{"name":"v0.0.4","sha":"efc7185b093716bef5459fa21fc01b1a1f68582e","kind":"tag","published_at":"2021-01-17T18:10:09.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.0.4","html_url":"https://github.com/pysal/spopt/releases/tag/v0.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.4/manifests"},{"name":"v0.0.3","sha":"ed6228343b7ffbc13e4b8fb0f2df6cdcf4989868","kind":"tag","published_at":"2021-01-15T22:28:50.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.0.3","html_url":"https://github.com/pysal/spopt/releases/tag/v0.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.3/manifests"},{"name":"v0.0.2","sha":"c0b1e14efcf45d2ebc126bbf073f318b4cc7cb34","kind":"tag","published_at":"2021-01-15T20:53:36.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.0.2","html_url":"https://github.com/pysal/spopt/releases/tag/v0.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.2/manifests"}]},"repo_metadata_updated_at":"2026-04-02T19:05:53.581Z","dependent_packages_count":0,"downloads":244,"downloads_period":"total","dependent_repos_count":0,"rankings":{"downloads":null,"dependent_repos_count":46.518691588785046,"dependent_packages_count":42.31308411214953,"stargazers_count":null,"forks_count":null,"docker_downloads_count":null,"average":44.415887850467286},"purl":"pkg:conda/spopt","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/conda/spopt","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/conda/spopt","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/conda/spopt/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-04-02T08:03:11.733Z","issues_count":113,"pull_requests_count":135,"avg_time_to_close_issue":4773100.558139535,"avg_time_to_close_pull_request":1191187.1048387096,"issues_closed_count":86,"pull_requests_closed_count":124,"pull_request_authors_count":20,"issue_authors_count":22,"avg_comments_per_issue":1.9026548672566372,"avg_comments_per_pull_request":1.7259259259259259,"merged_pull_requests_count":110,"bot_issues_count":0,"bot_pull_requests_count":29,"past_year_issues_count":13,"past_year_pull_requests_count":34,"past_year_avg_time_to_close_issue":265381.44444444444,"past_year_avg_time_to_close_pull_request":903862.2307692308,"past_year_issues_closed_count":9,"past_year_pull_requests_closed_count":26,"past_year_pull_request_authors_count":12,"past_year_issue_authors_count":4,"past_year_avg_comments_per_issue":0.46153846153846156,"past_year_avg_comments_per_pull_request":1.852941176470588,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":3,"past_year_merged_pull_requests_count":22,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/issues","maintainers":[{"login":"jGaboardi","count":153,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jGaboardi"},{"login":"ljwolf","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljwolf"},{"login":"gegen07","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gegen07"},{"login":"rongboxu","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/rongboxu"},{"login":"xf37","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/xf37"},{"login":"martinfleis","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/martinfleis"},{"login":"sjsrey","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/sjsrey"}],"active_maintainers":[{"login":"jGaboardi","count":20,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jGaboardi"},{"login":"martinfleis","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/martinfleis"},{"login":"gegen07","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gegen07"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/spopt/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/spopt/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/spopt/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/spopt/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/spopt/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/anaconda.org/packages/spopt/codemeta","maintainers":[],"registry":{"name":"anaconda.org","url":"https://anaconda.org","ecosystem":"conda","default":true,"packages_count":5119,"maintainers_count":0,"namespaces_count":0,"keywords_count":0,"github":"Anaconda","metadata":{"kind":"anaconda","key":"Main","api":"https://repo.ananconda.com"},"icon_url":"https://github.com/Anaconda.png","created_at":"2022-10-03T15:37:08.736Z","updated_at":"2026-04-27T18:20:20.117Z","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":2929319,"name":"spopt","ecosystem":"pypi","description":"Spatial Optimization in PySAL","homepage":"https://pysal.org/spopt/","licenses":"BSD 3-Clause","normalized_licenses":["BSD-3-Clause"],"repository_url":"https://github.com/pysal/spopt","keywords_array":["spatial","optimization"],"namespace":null,"versions_count":21,"first_release_published_at":"2021-01-15T18:07:56.000Z","latest_release_published_at":"2025-07-14T13:02:26.000Z","latest_release_number":"0.7.0","last_synced_at":"2026-05-12T14:49:58.295Z","created_at":"2022-04-10T12:41:35.970Z","updated_at":"2026-05-12T15:25:20.375Z","registry_url":"https://pypi.org/project/spopt/","install_command":"pip install spopt --index-url https://pypi.org/simple","documentation_url":"https://spopt.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":["Intended Audience :: Science/Research","License :: OSI Approved :: BSD License","Operating System :: OS Independent","Programming Language :: Python :: 3","Topic :: Scientific/Engineering :: GIS"],"normalized_name":"spopt","project_status":null},"repo_metadata":{"id":37854753,"uuid":"173353142","full_name":"pysal/spopt","owner":"pysal","description":"Spatial Optimization","archived":false,"fork":false,"pushed_at":"2026-02-23T01:48:17.000Z","size":172555,"stargazers_count":370,"open_issues_count":34,"forks_count":61,"subscribers_count":11,"default_branch":"main","last_synced_at":"2026-03-29T06:54:26.555Z","etag":null,"topics":["facility-location","location-allocation","location-modeling","python","regionalization","resource-planning","routing","spatial-analysis","spatial-optimization","transportation"],"latest_commit_sha":null,"homepage":"https://pysal.org/spopt/","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/pysal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-03-01T18:56:11.000Z","updated_at":"2026-03-25T17:31:09.000Z","dependencies_parsed_at":"2024-06-18T15:34:32.094Z","dependency_job_id":"a83165ed-bd1e-4e83-b23f-6dd725b40d32","html_url":"https://github.com/pysal/spopt","commit_stats":{"total_commits":826,"total_committers":19,"mean_commits":"43.473684210526315","dds":0.5932203389830508,"last_synced_commit":"464fd650cb1662432609c06d660c39f0f36c9eb4"},"previous_names":[],"tags_count":20,"template":false,"template_full_name":null,"purl":"pkg:github/pysal/spopt","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pysal","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/sbom","scorecard":{"id":751966,"data":{"date":"2025-08-11","repo":{"name":"github.com/pysal/spopt","commit":"7ebf7fe1d7edd742daf84e2fb94dac94801c7813"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":5.9,"checks":[{"name":"Code-Review","score":8,"reason":"Found 12/15 approved changesets -- score normalized to 8","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":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Maintained","score":10,"reason":"4 commit(s) and 9 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"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":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build_docs.yml:1","Warn: no topLevel permission defined: .github/workflows/release_and_publish.yml:1","Warn: no topLevel permission defined: .github/workflows/testing.yml:1","Info: no jobLevel write permissions found"],"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"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":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"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.txt:0","Info: FSF or OSI recognized license: BSD 3-Clause \"New\" or \"Revised\" License: LICENSE.txt:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/release_and_publish.yml:14"],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-1,"reason":"internal error: error during branchesHandler.setup: internal error: githubv4.Query: Resource not accessible by integration","details":null,"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":"Pinned-Dependencies","score":0,"reason":"dependency not pinned by hash detected -- score normalized to 0","details":["Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build_docs.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/build_docs.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build_docs.yml:35: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/build_docs.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build_docs.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/build_docs.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:32: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/release_and_publish.yml:41: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/release_and_publish.yml/main?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/testing.yml:46: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/testing.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/testing.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/testing.yml/main?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/testing.yml:78: update your workflow using https://app.stepsecurity.io/secureworkflow/pysal/spopt/testing.yml/main?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/release_and_publish.yml:27","Warn: pipCommand not pinned by hash: .github/workflows/release_and_publish.yml:28","Info:   0 out of   5 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   5 third-party GitHubAction dependencies pinned","Info:   0 out of   2 pipCommand 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":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 30 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-22T20:37:59.130Z","repository_id":37854753,"created_at":"2025-08-22T20:37:59.130Z","updated_at":"2025-08-22T20:37:59.130Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31224263,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-31T04:08:55.938Z","status":"ssl_error","status_checked_at":"2026-03-31T04:08:47.883Z","response_time":111,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":"pysal","name":"Python Spatial Analysis Library","uuid":"3769919","kind":"organization","description":"","email":null,"website":null,"location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/3769919?v=4","repositories_count":37,"last_synced_at":"2024-04-16T01:04:32.528Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pysal","funding_links":[],"total_stars":4081,"followers":221,"following":0,"created_at":"2022-11-02T16:31:00.418Z","updated_at":"2024-04-16T01:04:46.773Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pysal","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pysal/repositories"},"tags":[{"name":"v0.7.0","sha":"27a29e112fef7998cff4956cc92edb3b26a53eb9","kind":"tag","published_at":"2025-07-14T13:01:33.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.7.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.7.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.7.0/manifests"},{"name":"v0.7.0rc1","sha":"7ebf7fe1d7edd742daf84e2fb94dac94801c7813","kind":"tag","published_at":"2025-07-14T12:49:52.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.7.0rc1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.7.0rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.7.0rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.7.0rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.7.0rc1/manifests"},{"name":"v0.6.1","sha":"030538d0bacb0de81776d90171179e31f29ed825","kind":"tag","published_at":"2024-06-20T13:39:57.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.6.1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.6.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.1/manifests"},{"name":"v0.6.1rc1","sha":"6ec4ec1341bdd027dcef4912340d5d19cf0ea0bd","kind":"tag","published_at":"2024-06-20T13:16:53.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.6.1rc1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.6.1rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.6.1rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.1rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.1rc1/manifests"},{"name":"v0.6.0","sha":"86673f8838b42569d54a74ccf1e299bbbfb20732","kind":"tag","published_at":"2023-12-10T20:26:18.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.6.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.6.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.6.0/manifests"},{"name":"v0.5.0","sha":"761e2c18b131de5b2109ee31ac0e68fdd2336504","kind":"tag","published_at":"2023-01-14T03:12:19.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.5.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.5.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0/manifests"},{"name":"v0.5.0rc2","sha":"761e2c18b131de5b2109ee31ac0e68fdd2336504","kind":"tag","published_at":"2023-01-13T21:44:51.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.5.0rc2","html_url":"https://github.com/pysal/spopt/releases/tag/v0.5.0rc2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.5.0rc2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0rc2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0rc2/manifests"},{"name":"v0.5.0rc1","sha":"6e382b6866ed8dd8e33a49af88c29201089c2f54","kind":"tag","published_at":"2023-01-12T21:30:45.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.5.0rc1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.5.0rc1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.5.0rc1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0rc1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.5.0rc1/manifests"},{"name":"v0.4.1","sha":"abc3a764beec1ed6fcd02f4788b905076b7ef6a7","kind":"tag","published_at":"2022-06-13T15:05:14.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.4.1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.4.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.4.1/manifests"},{"name":"v0.4.0","sha":"18366f74f81b21859c26dc10d090375b7180193d","kind":"tag","published_at":"2022-05-31T00:03:42.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.4.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.4.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.4.0/manifests"},{"name":"v0.3.0","sha":"1959844eacb98238b0d7a809dc14325debf7e37c","kind":"tag","published_at":"2022-03-18T16:02:23.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.3.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.3.0/manifests"},{"name":"v0.2.1","sha":"a9cda4f363c0e3ba220d5dd0a99b197773dac6d6","kind":"tag","published_at":"2021-11-03T01:31:43.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.2.1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"7c89cf606ddaee60d80aeae50e07b1be66cfd71f","kind":"tag","published_at":"2021-11-03T00:37:34.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.2.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.2.0/manifests"},{"name":"v0.1.2","sha":"0160311cd60332ab086acd29c07993a7cf175523","kind":"tag","published_at":"2021-06-28T23:20:17.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.1.2","html_url":"https://github.com/pysal/spopt/releases/tag/v0.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.1.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.2/manifests"},{"name":"v0.1.1","sha":"efea9b066c2c46ada148fb16188db9da6bfa364f","kind":"tag","published_at":"2021-01-31T22:22:33.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.1.1","html_url":"https://github.com/pysal/spopt/releases/tag/v0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.1/manifests"},{"name":"v0.1.0","sha":"ee3bf7cae8eca1d0d0bbdfa4dfa6c8f2a32e03af","kind":"tag","published_at":"2021-01-20T00:53:54.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.1.0","html_url":"https://github.com/pysal/spopt/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.1.0/manifests"},{"name":"v0.0.5","sha":"0515181f7c5e53445790e7c4f737d1b38f8ec9ce","kind":"tag","published_at":"2021-01-17T18:42:49.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.0.5","html_url":"https://github.com/pysal/spopt/releases/tag/v0.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.0.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.5/manifests"},{"name":"v0.0.4","sha":"efc7185b093716bef5459fa21fc01b1a1f68582e","kind":"tag","published_at":"2021-01-17T18:10:09.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.0.4","html_url":"https://github.com/pysal/spopt/releases/tag/v0.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.4/manifests"},{"name":"v0.0.3","sha":"ed6228343b7ffbc13e4b8fb0f2df6cdcf4989868","kind":"tag","published_at":"2021-01-15T22:28:50.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.0.3","html_url":"https://github.com/pysal/spopt/releases/tag/v0.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.3/manifests"},{"name":"v0.0.2","sha":"c0b1e14efcf45d2ebc126bbf073f318b4cc7cb34","kind":"tag","published_at":"2021-01-15T20:53:36.000Z","download_url":"https://codeload.github.com/pysal/spopt/tar.gz/v0.0.2","html_url":"https://github.com/pysal/spopt/releases/tag/v0.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/pysal/spopt@v0.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/tags/v0.0.2/manifests"}]},"repo_metadata_updated_at":"2026-05-12T15:25:20.342Z","dependent_packages_count":3,"downloads":35054,"downloads_period":"last-month","dependent_repos_count":35,"rankings":{"downloads":2.3034759231288056,"dependent_repos_count":2.4706347306299423,"dependent_packages_count":2.3772338816626957,"stargazers_count":4.450513528101505,"forks_count":6.33309262285736,"docker_downloads_count":2.036725659513428,"average":3.3286127243156227},"purl":"pkg:pypi/spopt","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/spopt","docker_dependents_count":4,"docker_downloads_count":189,"usage_url":"https://repos.ecosyste.ms/usage/pypi/spopt","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/spopt/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2026-04-06T10:01:11.911Z","issues_count":113,"pull_requests_count":135,"avg_time_to_close_issue":6893384.112359551,"avg_time_to_close_pull_request":1191187.1048387096,"issues_closed_count":89,"pull_requests_closed_count":124,"pull_request_authors_count":20,"issue_authors_count":22,"avg_comments_per_issue":1.9646017699115044,"avg_comments_per_pull_request":1.7259259259259259,"merged_pull_requests_count":110,"bot_issues_count":0,"bot_pull_requests_count":29,"past_year_issues_count":13,"past_year_pull_requests_count":34,"past_year_avg_time_to_close_issue":265381.44444444444,"past_year_avg_time_to_close_pull_request":903862.2307692308,"past_year_issues_closed_count":9,"past_year_pull_requests_closed_count":26,"past_year_pull_request_authors_count":12,"past_year_issue_authors_count":4,"past_year_avg_comments_per_issue":0.46153846153846156,"past_year_avg_comments_per_pull_request":1.852941176470588,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":3,"past_year_merged_pull_requests_count":22,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/issues","maintainers":[{"login":"jGaboardi","count":153,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jGaboardi"},{"login":"ljwolf","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljwolf"},{"login":"gegen07","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gegen07"},{"login":"rongboxu","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/rongboxu"},{"login":"xf37","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/xf37"},{"login":"martinfleis","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/martinfleis"},{"login":"sjsrey","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/sjsrey"}],"active_maintainers":[{"login":"jGaboardi","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jGaboardi"},{"login":"martinfleis","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/martinfleis"},{"login":"gegen07","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gegen07"}]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/spopt/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/spopt/version_numbers","latest_version_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/spopt/latest_version","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/spopt/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/spopt/related_packages","codemeta_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/spopt/codemeta","maintainers":[{"uuid":"knaaptime","login":"knaaptime","name":null,"email":null,"url":null,"packages_count":12,"html_url":"https://pypi.org/user/knaaptime/","role":null,"created_at":"2023-01-13T21:47:10.053Z","updated_at":"2023-01-13T21:47:10.053Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/knaaptime/packages"},{"uuid":"sjsrey","login":"sjsrey","name":null,"email":null,"url":null,"packages_count":18,"html_url":"https://pypi.org/user/sjsrey/","role":null,"created_at":"2023-01-13T21:47:10.056Z","updated_at":"2023-01-13T21:47:10.056Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/sjsrey/packages"},{"uuid":"jGaboardi","login":"jGaboardi","name":null,"email":null,"url":null,"packages_count":18,"html_url":"https://pypi.org/user/jGaboardi/","role":null,"created_at":"2023-01-13T21:47:10.050Z","updated_at":"2023-01-13T21:47:10.050Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/jGaboardi/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":861830,"maintainers_count":368211,"namespaces_count":0,"keywords_count":271316,"github":"pypi","metadata":{"funded_packages_count":53172},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2026-04-09T05:08:03.587Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}}],"commits":{"id":35105,"full_name":"pysal/spopt","default_branch":"main","total_commits":884,"total_committers":24,"total_bot_commits":36,"total_bot_committers":3,"mean_commits":36.833333333333336,"dds":0.5893665158371041,"past_year_total_commits":34,"past_year_total_committers":7,"past_year_total_bot_commits":4,"past_year_total_bot_committers":1,"past_year_mean_commits":4.857142857142857,"past_year_dds":0.6764705882352942,"last_synced_at":"2026-05-08T08:04:56.857Z","last_synced_commit":"2f320239dc03248f0ad1eafb27789d461cffd381","created_at":"2023-03-07T16:58:40.029Z","updated_at":"2026-05-08T08:03:46.766Z","committers":[{"name":"James Gaboardi","email":"jgaboardi@gmail.com","login":"jGaboardi","count":363},{"name":"Erin Olson","email":"rosemary.erin.o@gmail.com","login":"erinrolson","count":206},{"name":"Germano Barcelos","email":"gegenbarcelos@gmail.com","login":"gegen07","count":70},{"name":"Serge Rey","email":"sjsrey@gmail.com","login":"sjsrey","count":65},{"name":"Xin Feng","email":"xinfeng@Xins-iMac.local","login":null,"count":43},{"name":"pre-commit-ci[bot]","email":"66853113+pre-commit-ci[bot]","login":"pre-commit-ci[bot]","count":27},{"name":"eli knaap","email":"ek@knaaptime.com","login":"knaaptime","count":23},{"name":"Xin (Selena) Feng","email":"applexin.feng@gmail.com","login":"xf37","count":15},{"name":"rongboxu","email":"rongbo.xu.21@ucl.ac.uk","login":"rongboxu","count":14},{"name":"fengzixin0617","email":"116886138+fengzixin0617","login":"fengzixin0617","count":11},{"name":"ljwolf","email":"levi.john.wolf@gmail.com","login":"ljwolf","count":10},{"name":"dependabot[bot]","email":"49699333+dependabot[bot]","login":"dependabot[bot]","count":7},{"name":"rwei5","email":"ranwei@asu.edu","login":"rwei5","count":6},{"name":"Timothy Ellersiek","email":"tim@gis-ops.com","login":null,"count":6},{"name":"hegen008","email":"hegen008@umn.edu","login":"hegen008","count":5},{"name":"Zixin Feng (PGR)","email":"2755469F@student.gla.ac.uk","login":null,"count":3},{"name":"Martin Fleischmann","email":"martin@martinfleischmann.net","login":"martinfleis","count":2},{"name":"github-actions[bot]","email":"41898282+github-actions[bot]","login":"github-actions[bot]","count":2},{"name":"Abhishek Dimri","email":"125353882+Abhishek-Dimri","login":"Abhishek-Dimri","count":1},{"name":"Emmanuel Ferdman","email":"emmanuelferdman@gmail.com","login":"emmanuel-ferdman","count":1},{"name":"Krasen Samardzhiev","email":"krasensam@gmail.com","login":"u3ks","count":1},{"name":"Nick Bearman","email":"nick@geospatialtrainingsolutions.co.uk","login":"nickbearman","count":1},{"name":"Patrick Roddy","email":"patrickjamesroddy@gmail.com","login":"paddyroddy","count":1},{"name":"Pedro Camargo","email":"c@margo.co","login":"pedrocamargo","count":1}],"past_year_committers":[{"name":"fengzixin0617","email":"116886138+fengzixin0617","login":"fengzixin0617","count":11},{"name":"James Gaboardi","email":"jgaboardi@gmail.com","login":"jGaboardi","count":9},{"name":"hegen008","email":"hegen008@umn.edu","login":"hegen008","count":5},{"name":"pre-commit-ci[bot]","email":"66853113+pre-commit-ci[bot]","login":"pre-commit-ci[bot]","count":4},{"name":"Zixin Feng (PGR)","email":"2755469F@student.gla.ac.uk","login":null,"count":3},{"name":"Martin Fleischmann","email":"martin@martinfleischmann.net","login":"martinfleis","count":1},{"name":"Krasen Samardzhiev","email":"krasensam@gmail.com","login":"u3ks","count":1}],"commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-05-13T00:00:10.629Z","repositories_count":6233341,"commits_count":894161278,"contributors_count":34890684,"owners_count":1152086,"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":{"table":{"full_name":"pysal/spopt","html_url":"https://github.com/pysal/spopt","last_synced_at":"2026-05-06T03:42:45.786Z","status":"active","issues_count":113,"pull_requests_count":137,"avg_time_to_close_issue":6893384.112359551,"avg_time_to_close_pull_request":1263983.9921875,"issues_closed_count":89,"pull_requests_closed_count":128,"pull_request_authors_count":20,"issue_authors_count":22,"avg_comments_per_issue":1.9646017699115044,"avg_comments_per_pull_request":1.7007299270072993,"merged_pull_requests_count":114,"bot_issues_count":0,"bot_pull_requests_count":30,"past_year_issues_count":8,"past_year_pull_requests_count":21,"past_year_avg_time_to_close_issue":425144.2,"past_year_avg_time_to_close_pull_request":2166132.533333333,"past_year_issues_closed_count":5,"past_year_pull_requests_closed_count":15,"past_year_pull_request_authors_count":9,"past_year_issue_authors_count":3,"past_year_avg_comments_per_issue":0.5,"past_year_avg_comments_per_pull_request":1.6666666666666667,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":4,"past_year_merged_pull_requests_count":15,"created_at":"2023-05-10T22:03:19.333Z","updated_at":"2026-05-06T03:42:45.786Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/pysal%2Fspopt/issues","issue_labels_count":{"table":{"locate":33,"maintenance":16,"rough edge":15,"CI":13,"docs":12,"region":12,"notebooks/binders":9,"bug":9,"enhancement":9,"testing":8,"dependencies":7,"release":3,"needs attention":3,"solvers \u0026 solver apis":3,"github_actions":3,"GSOC2023":3,"discussion":3,"codecov":2,"installation":2,"transport/route":1,"good first issue":1,"WIP":1,"tutorials":1,"question":1,"conda-forge":1,"priority: high":1,"requirements":1}},"pull_request_labels_count":{"table":{"maintenance":28,"locate":26,"docs":21,"CI":15,"region":9,"notebooks/binders":9,"rough edge":8,"dependencies":8,"bug":8,"testing":7,"GSOC2023":4,"enhancement":3,"python":3,"github_actions":3,"solvers \u0026 solver apis":2,"good first issue":2,"GSoC2025":2,"GSoC2022":1,"priority: high":1,"conda-forge":1,"needs attention":1,"release":1}},"issue_author_associations_count":{"table":{"MEMBER":95,"NONE":16,"CONTRIBUTOR":1,"COLLABORATOR":1}},"pull_request_author_associations_count":{"table":{"MEMBER":78,"CONTRIBUTOR":39,"NONE":13,"COLLABORATOR":7}},"issue_authors":{"table":{"jGaboardi":87,"ljwolf":5,"iboates":2,"orlandombaa":1,"xf37":1,"sjsrey":1,"mbforr":1,"nilason":1,"swongraphy":1,"samueltoro7":1,"Abhishek-Dimri":1,"benjaminrhoyle":1,"martinfleis":1,"Anran0716":1,"Dekermanjian":1,"twallema":1,"ocefpaf":1,"gegen07":1,"nickbearman":1,"p91g":1,"jartantupjar":1,"walkerke":1}},"pull_request_authors":{"table":{"jGaboardi":67,"pre-commit-ci[bot]":25,"gegen07":5,"nightcoder26":4,"rongboxu":4,"ljwolf":4,"xf37":3,"hegen008":3,"speco29":3,"dependabot[bot]":3,"github-actions[bot]":2,"fengzixin0617":2,"u3ks":2,"martinfleis":2,"Abhishek-Dimri":2,"emmanuel-ferdman":2,"erinrolson":1,"paddyroddy":1,"AKSrivastava28":1,"CONFUZ3":1}},"host":{"table":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2026-05-08T00:00:21.527Z","repositories_count":14531585,"issues_count":34192226,"pull_requests_count":112082247,"authors_count":11257182,"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":{"table":{"dependencies":3,"maintenance":3,"testing":3,"codecov":1,"docs":1}},"past_year_pull_request_labels_count":{"table":{"dependencies":4,"locate":3,"maintenance":3,"region":3,"testing":2,"GSoC2025":2,"solvers \u0026 solver apis":1}},"past_year_issue_author_associations_count":{"table":{"MEMBER":6,"NONE":1}},"past_year_pull_request_author_associations_count":{"table":{"CONTRIBUTOR":8,"MEMBER":8,"NONE":3}},"past_year_issue_authors":{"table":{"jGaboardi":6,"twallema":1}},"past_year_pull_request_authors":{"table":{"jGaboardi":4,"pre-commit-ci[bot]":4,"hegen008":3,"fengzixin0617":2,"gegen07":2,"martinfleis":2,"AKSrivastava28":1,"CONFUZ3":1}},"maintainers":[{"table":{"login":"jGaboardi","count":154,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jGaboardi"}},{"table":{"login":"ljwolf","count":9,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/ljwolf"}},{"table":{"login":"gegen07","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gegen07"}},{"table":{"login":"rongboxu","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/rongboxu"}},{"table":{"login":"xf37","count":4,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/xf37"}},{"table":{"login":"martinfleis","count":3,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/martinfleis"}},{"table":{"login":"sjsrey","count":1,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/sjsrey"}}],"active_maintainers":[{"table":{"login":"jGaboardi","count":10,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/jGaboardi"}},{"table":{"login":"gegen07","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/gegen07"}},{"table":{"login":"martinfleis","count":2,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/martinfleis"}}]}},"events":{"total":{"ReleaseEvent":1,"DeleteEvent":6,"PullRequestEvent":43,"ForkEvent":10,"IssuesEvent":24,"WatchEvent":46,"IssueCommentEvent":63,"PushEvent":20,"PullRequestReviewCommentEvent":30,"PullRequestReviewEvent":33,"CreateEvent":5},"last_year":{"ReleaseEvent":1,"DeleteEvent":5,"PullRequestEvent":19,"ForkEvent":5,"IssuesEvent":7,"WatchEvent":25,"IssueCommentEvent":16,"PushEvent":10,"PullRequestReviewEvent":24,"PullRequestReviewCommentEvent":29,"CreateEvent":5}},"keywords":["facility-location","location-allocation","location-modeling","python","regionalization","resource-planning","routing","spatial-analysis","spatial-optimization","transportation"],"dependencies":[{"ecosystem":"actions","filepath":".github/workflows/build_docs.yml","sha":null,"kind":"manifest","created_at":"2023-02-17T02:46:06.657Z","updated_at":"2023-02-17T02:46:06.657Z","repository_link":"https://github.com/pysal/spopt/blob/main/.github/workflows/build_docs.yml","dependencies":[{"id":7731467401,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7731467402,"package_name":"mamba-org/provision-with-micromamba","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":7731467403,"package_name":"ad-m/github-push-action","ecosystem":"actions","requirements":"master","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/release_and_publish.yml","sha":null,"kind":"manifest","created_at":"2023-02-17T02:46:06.691Z","updated_at":"2023-02-17T02:46:06.691Z","repository_link":"https://github.com/pysal/spopt/blob/main/.github/workflows/release_and_publish.yml","dependencies":[{"id":7731467425,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7731467426,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v4","direct":true,"kind":"composite","optional":false},{"id":7731467427,"package_name":"actions/github-script","ecosystem":"actions","requirements":"v6","direct":true,"kind":"composite","optional":false},{"id":7731467428,"package_name":"pypa/gh-action-pypi-publish","ecosystem":"actions","requirements":"release/v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/testing.yml","sha":null,"kind":"manifest","created_at":"2023-02-17T02:46:06.715Z","updated_at":"2023-02-17T02:46:06.715Z","repository_link":"https://github.com/pysal/spopt/blob/main/.github/workflows/testing.yml","dependencies":[{"id":7731467455,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false},{"id":7731467456,"package_name":"mamba-org/provision-with-micromamba","ecosystem":"actions","requirements":"main","direct":true,"kind":"composite","optional":false},{"id":7731467457,"package_name":"codecov/codecov-action","ecosystem":"actions","requirements":"v3","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"pypi","filepath":"pyproject.toml","sha":null,"kind":"manifest","created_at":"2023-10-24T15:38:27.779Z","updated_at":"2023-10-24T15:38:27.779Z","repository_link":"https://github.com/pysal/spopt/blob/main/pyproject.toml","dependencies":[{"id":14275423867,"package_name":"geopandas","ecosystem":"pypi","requirements":"\u003e=0.10","direct":true,"kind":"runtime","optional":false},{"id":14275423868,"package_name":"libpysal","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":14275425264,"package_name":"mapclassify","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":14275425266,"package_name":"networkx","ecosystem":"pypi","requirements":"\u003e=2.6","direct":true,"kind":"runtime","optional":false},{"id":14275425267,"package_name":"numpy","ecosystem":"pypi","requirements":"\u003e=1.21","direct":true,"kind":"runtime","optional":false},{"id":14275425268,"package_name":"pandas","ecosystem":"pypi","requirements":"\u003e=1.3,!=1.5.0","direct":true,"kind":"runtime","optional":false},{"id":14275425269,"package_name":"pulp","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":14275425270,"package_name":"scikit-learn","ecosystem":"pypi","requirements":"\u003e=1.0","direct":true,"kind":"runtime","optional":false},{"id":14275425271,"package_name":"scipy","ecosystem":"pypi","requirements":"\u003e=1.7","direct":true,"kind":"runtime","optional":false},{"id":14275425272,"package_name":"shapely","ecosystem":"pypi","requirements":"\u003e=2","direct":true,"kind":"runtime","optional":false},{"id":14275425273,"package_name":"spaghetti","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false},{"id":14275425275,"package_name":"tqdm","ecosystem":"pypi","requirements":"\u003e=4.27.0","direct":true,"kind":"runtime","optional":false},{"id":14275425276,"package_name":"pointpats","ecosystem":"pypi","requirements":"\u003e=2.3.0","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"conda","filepath":"environment.yml","sha":null,"kind":"manifest","created_at":"2024-06-18T15:34:28.575Z","updated_at":"2024-06-18T15:34:28.575Z","repository_link":"https://github.com/pysal/spopt/blob/main/environment.yml","dependencies":[{"id":18678173413,"package_name":"folium","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173414,"package_name":"geopandas","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173415,"package_name":"glpk","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173416,"package_name":"inequality","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173417,"package_name":"jupyterlab","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173418,"package_name":"libpysal","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173419,"package_name":"mapclassify","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173420,"package_name":"matplotlib","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173421,"package_name":"matplotlib-scalebar","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173422,"package_name":"networkx","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173423,"package_name":"numpy","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173424,"package_name":"overpy","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173425,"package_name":"pandas","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173426,"package_name":"pip","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173427,"package_name":"pointpats","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173428,"package_name":"pulp","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173429,"package_name":"python","ecosystem":"conda","requirements":"3.12.*","direct":true,"kind":"runtime","optional":false},{"id":18678173430,"package_name":"scikit-learn","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173431,"package_name":"scipy","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173432,"package_name":"seaborn","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173433,"package_name":"shapely","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173434,"package_name":"spaghetti","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173435,"package_name":"tqdm","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false},{"id":18678173436,"package_name":"watermark","ecosystem":"conda","requirements":"","direct":true,"kind":"runtime","optional":false}]}],"score":21.91620628885292,"created_at":"2025-04-11T10:20:02.136Z","updated_at":"2026-05-14T04:30:24.164Z","avatar_url":"https://github.com/pysal.png","language":"Python","codemeta":null,"publiccode":null,"project_url":"https://summary.ecosyste.ms/api/v1/projects/357503","html_url":"https://summary.ecosyste.ms/projects/357503"}