{"id":1730,"name":"sandpyper","description":"sandpyper: A Python package for UAV-SfM beach volumetric and behavioural analysis - Published in JOSS (2021)","url":"https://github.com/npucino/sandpyper","last_synced_at":"2025-09-04T16:33:04.338Z","repository":{"id":46868841,"uuid":"341092845","full_name":"npucino/sandpyper","owner":"npucino","description":"Tools for beach volumetric and behavioral dynamics monitoring from multitemporal UAV-SfM datasets.","archived":false,"fork":false,"pushed_at":"2024-12-12T23:05:13.000Z","size":94910,"stargazers_count":11,"open_issues_count":5,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-08-28T00:13:19.303Z","etag":null,"topics":["beach","coastal-dynamics","erosion","remote-sensing","satellite-data","shoreline","uav-imagery"],"latest_commit_sha":null,"homepage":"https://npucino.github.io/sandpyper/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/npucino.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"docs/contributing.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":".zenodo.json"}},"created_at":"2021-02-22T05:45:37.000Z","updated_at":"2024-12-12T23:05:18.000Z","dependencies_parsed_at":"2025-04-14T15:42:40.424Z","dependency_job_id":null,"html_url":"https://github.com/npucino/sandpyper","commit_stats":null,"previous_names":[],"tags_count":27,"template":false,"template_full_name":null,"purl":"pkg:github/npucino/sandpyper","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/npucino","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/sbom","scorecard":{"id":696555,"data":{"date":"2025-08-11","repo":{"name":"github.com/npucino/sandpyper","commit":"8f51ddb98b17009c12abd2246c8a308fb814778f"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.8,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":0,"reason":"Found 1/29 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build.yml:1","Warn: no topLevel permission defined: .github/workflows/docs.yml:1","Warn: no topLevel permission defined: .github/workflows/draft-pdf.yml:1","Warn: no topLevel permission defined: .github/workflows/pypi.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":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-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":"Vulnerabilities","score":0,"reason":"14 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-6p56-wp2h-9hxr","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2024-110 / GHSA-jw8x-6495-233v","Warn: Project is vulnerable to: GHSA-jxfp-4rvq-9h9m","Warn: Project is vulnerable to: PYSEC-2023-102","Warn: Project is vulnerable to: PYSEC-2023-114","Warn: Project is vulnerable to: GHSA-g7vv-2v7x-gj9p","Warn: Project is vulnerable to: PYSEC-2013-9 / GHSA-4gv5-qhvr-36vv","Warn: Project is vulnerable to: PYSEC-2021-437 / GHSA-5xp3-jfq3-5q8x","Warn: Project is vulnerable to: PYSEC-2019-160 / GHSA-c5h8-cq4v-cvfm","Warn: Project is vulnerable to: PYSEC-2013-8 / GHSA-g3p5-fjj9-h8gj","Warn: Project is vulnerable to: PYSEC-2020-173 / GHSA-gpvv-69j7-gwj8","Warn: Project is vulnerable to: PYSEC-2023-228 / GHSA-mq26-g339-26xf","Warn: Project is vulnerable to: PYSEC-2022-43017 / GHSA-qwmp-2cf2-g9g6"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 2 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"}},{"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.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/build.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/build.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/build.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/docs.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/docs.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docs.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/docs.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/draft-pdf.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/draft-pdf.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/draft-pdf.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/draft-pdf.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/draft-pdf.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/draft-pdf.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pypi.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/pypi.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pypi.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/pypi.yml/master?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/build.yml:40","Warn: pipCommand not pinned by hash: .github/workflows/build.yml:41","Warn: pipCommand not pinned by hash: .github/workflows/build.yml:42","Warn: pipCommand not pinned by hash: .github/workflows/pypi.yml:23","Warn: pipCommand not pinned by hash: .github/workflows/pypi.yml:24","Info:   0 out of   8 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   5 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"}}]},"last_synced_at":"2025-08-22T03:52:50.555Z","repository_id":46868841,"created_at":"2025-08-22T03:52:50.556Z","updated_at":"2025-08-22T03:52:50.556Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273506721,"owners_count":25118028,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-03T02:00:09.631Z","response_time":76,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"owner":{"login":"npucino","name":"Nicolas Pucino","uuid":"44853536","kind":"user","description":"PhD student in coastal remote sensing, geospatial analysis, open-source, SfM and hyperspectral drones, multispectral satellites, field spectroscopy.","email":"","website":"https://www.linkedin.com/in/nicolaspucino/","location":"Warrnambool","twitter":null,"company":"Deakin University","icon_url":"https://avatars.githubusercontent.com/u/44853536?u=ec4998c8720819781eac02edcafd745d558ecea3\u0026v=4","repositories_count":2,"last_synced_at":"2023-03-08T09:12:40.429Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/npucino","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-18T01:53:52.828Z","updated_at":"2023-03-08T09:12:40.441Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/npucino","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/npucino/repositories"},"packages":[{"id":2909866,"name":"sandpyper","ecosystem":"pypi","description":"Tools for automatic UAV-SfM beach volumetric and behavioural analysis.","homepage":"https://github.com/npucino/sandpyper","licenses":"MIT license","normalized_licenses":["MIT"],"repository_url":"https://github.com/npucino/sandpyper","keywords_array":["sandpyper","beach","analysis","SfM","raster","volume","profiles","UAV","drone","monitoring"],"namespace":null,"versions_count":19,"first_release_published_at":"2021-02-23T02:41:49.000Z","latest_release_published_at":"2021-10-12T22:40:38.000Z","latest_release_number":"1.3.3","last_synced_at":"2025-09-03T20:35:57.734Z","created_at":"2022-04-10T12:31:56.612Z","updated_at":"2025-09-04T06:59:30.768Z","registry_url":"https://pypi.org/project/sandpyper/","install_command":"pip install sandpyper --index-url https://pypi.org/simple","documentation_url":"https://sandpyper.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":["Development Status :: 2 - Pre-Alpha","Intended Audience :: Science/Research","License :: OSI Approved :: MIT License","Natural Language :: English","Programming Language :: Python :: 3.8"],"normalized_name":"sandpyper","project_status":null},"repo_metadata":{"id":46868841,"uuid":"341092845","full_name":"npucino/sandpyper","owner":"npucino","description":"Tools for beach volumetric and behavioral dynamics monitoring from multitemporal UAV-SfM datasets.","archived":false,"fork":false,"pushed_at":"2024-12-12T23:05:13.000Z","size":94910,"stargazers_count":11,"open_issues_count":5,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-08-28T00:13:19.303Z","etag":null,"topics":["beach","coastal-dynamics","erosion","remote-sensing","satellite-data","shoreline","uav-imagery"],"latest_commit_sha":null,"homepage":"https://npucino.github.io/sandpyper/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/npucino.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"docs/contributing.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":".zenodo.json"}},"created_at":"2021-02-22T05:45:37.000Z","updated_at":"2024-12-12T23:05:18.000Z","dependencies_parsed_at":"2025-04-14T15:42:40.424Z","dependency_job_id":null,"html_url":"https://github.com/npucino/sandpyper","commit_stats":null,"previous_names":[],"tags_count":27,"template":false,"template_full_name":null,"purl":"pkg:github/npucino/sandpyper","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/npucino","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/sbom","scorecard":{"id":696555,"data":{"date":"2025-08-11","repo":{"name":"github.com/npucino/sandpyper","commit":"8f51ddb98b17009c12abd2246c8a308fb814778f"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":2.8,"checks":[{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Code-Review","score":0,"reason":"Found 1/29 approved changesets -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"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":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Warn: no topLevel permission defined: .github/workflows/build.yml:1","Warn: no topLevel permission defined: .github/workflows/docs.yml:1","Warn: no topLevel permission defined: .github/workflows/draft-pdf.yml:1","Warn: no topLevel permission defined: .github/workflows/pypi.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":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":-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":"Vulnerabilities","score":0,"reason":"14 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-6p56-wp2h-9hxr","Warn: Project is vulnerable to: GHSA-fpfv-jqm9-f5jm","Warn: Project is vulnerable to: PYSEC-2024-110 / GHSA-jw8x-6495-233v","Warn: Project is vulnerable to: GHSA-jxfp-4rvq-9h9m","Warn: Project is vulnerable to: PYSEC-2023-102","Warn: Project is vulnerable to: PYSEC-2023-114","Warn: Project is vulnerable to: GHSA-g7vv-2v7x-gj9p","Warn: Project is vulnerable to: PYSEC-2013-9 / GHSA-4gv5-qhvr-36vv","Warn: Project is vulnerable to: PYSEC-2021-437 / GHSA-5xp3-jfq3-5q8x","Warn: Project is vulnerable to: PYSEC-2019-160 / GHSA-c5h8-cq4v-cvfm","Warn: Project is vulnerable to: PYSEC-2013-8 / GHSA-g3p5-fjj9-h8gj","Warn: Project is vulnerable to: PYSEC-2020-173 / GHSA-gpvv-69j7-gwj8","Warn: Project is vulnerable to: PYSEC-2023-228 / GHSA-mq26-g339-26xf","Warn: Project is vulnerable to: PYSEC-2022-43017 / GHSA-qwmp-2cf2-g9g6"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 2 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"}},{"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.yml:29: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/build.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/build.yml:31: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/build.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/build.yml:36: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/build.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yml:11: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/docs.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yml:12: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/docs.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/docs.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/docs.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/draft-pdf.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/draft-pdf.yml/master?enable=pin","Warn: third-party GitHubAction not pinned by hash: .github/workflows/draft-pdf.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/draft-pdf.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/draft-pdf.yml:22: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/draft-pdf.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pypi.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/pypi.yml/master?enable=pin","Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pypi.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/npucino/sandpyper/pypi.yml/master?enable=pin","Warn: pipCommand not pinned by hash: .github/workflows/build.yml:40","Warn: pipCommand not pinned by hash: .github/workflows/build.yml:41","Warn: pipCommand not pinned by hash: .github/workflows/build.yml:42","Warn: pipCommand not pinned by hash: .github/workflows/pypi.yml:23","Warn: pipCommand not pinned by hash: .github/workflows/pypi.yml:24","Info:   0 out of   8 GitHub-owned GitHubAction dependencies pinned","Info:   0 out of   3 third-party GitHubAction dependencies pinned","Info:   0 out of   5 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"}}]},"last_synced_at":"2025-08-22T03:52:50.555Z","repository_id":46868841,"created_at":"2025-08-22T03:52:50.556Z","updated_at":"2025-08-22T03:52:50.556Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":273506721,"owners_count":25118028,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-03T02:00:09.631Z","response_time":76,"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":"npucino","name":"Nicolas Pucino","uuid":"44853536","kind":"user","description":"PhD student in coastal remote sensing, geospatial analysis, open-source, SfM and hyperspectral drones, multispectral satellites, field spectroscopy.","email":"","website":"https://www.linkedin.com/in/nicolaspucino/","location":"Warrnambool","twitter":null,"company":"Deakin University","icon_url":"https://avatars.githubusercontent.com/u/44853536?u=ec4998c8720819781eac02edcafd745d558ecea3\u0026v=4","repositories_count":2,"last_synced_at":"2023-03-08T09:12:40.429Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/npucino","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-18T01:53:52.828Z","updated_at":"2023-03-08T09:12:40.441Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/npucino","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/npucino/repositories"},"tags":[{"name":"v1.3.3","sha":"622296d1af9de1e66ab9e7ab3ab147e54a020bc8","kind":"commit","published_at":"2021-10-12T22:36:56.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v1.3.3","html_url":"https://github.com/npucino/sandpyper/releases/tag/v1.3.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v1.3.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.3.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.3.3/manifests"},{"name":"v1.3.2","sha":"749041d88165e2d157931d6b385e09a11239cc41","kind":"commit","published_at":"2021-10-12T22:21:32.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v1.3.2","html_url":"https://github.com/npucino/sandpyper/releases/tag/v1.3.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v1.3.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.3.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.3.2/manifests"},{"name":"v1.3.1","sha":"da833bd231e716cebf2df857338f4dae6e7758ba","kind":"commit","published_at":"2021-10-12T21:38:48.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v1.3.1","html_url":"https://github.com/npucino/sandpyper/releases/tag/v1.3.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v1.3.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.3.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.3.1/manifests"},{"name":"v1.3.0","sha":"196243917684a75f72ffb7c23125d12abedb7169","kind":"commit","published_at":"2021-10-11T23:03:05.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v1.3.0","html_url":"https://github.com/npucino/sandpyper/releases/tag/v1.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v1.3.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.3.0/manifests"},{"name":"v1.2.2","sha":"a3d54fb6ed2384befe0e331d6cfb8b6c00c25ce9","kind":"commit","published_at":"2021-10-09T09:49:36.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v1.2.2","html_url":"https://github.com/npucino/sandpyper/releases/tag/v1.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v1.2.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.2.2/manifests"},{"name":"v1.2.1","sha":"0311fcb57262e29334f0b6ccd5277b8d2b003bb0","kind":"commit","published_at":"2021-10-03T23:56:23.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v1.2.1","html_url":"https://github.com/npucino/sandpyper/releases/tag/v1.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v1.2.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.2.1/manifests"},{"name":"v1.2.0","sha":"a0c65657c2175c9bbd7a7b084affc30859385521","kind":"commit","published_at":"2021-09-22T06:26:02.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v1.2.0","html_url":"https://github.com/npucino/sandpyper/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v1.2.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.2.0/manifests"},{"name":"v1.0.2","sha":"76386a88325f3e325ae7379e69cc86a0d8ec82c5","kind":"commit","published_at":"2021-09-22T05:38:56.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v1.0.2","html_url":"https://github.com/npucino/sandpyper/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v1.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.0.2/manifests"},{"name":"v1.0.1","sha":"4490ac4505cae2af4b899ba4bc81ac2510dfc286","kind":"commit","published_at":"2021-08-23T09:34:42.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v1.0.1","html_url":"https://github.com/npucino/sandpyper/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v1.0.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v1.0.1/manifests"},{"name":"1.0.0","sha":"bbde8b7f2d8639d7459b5d7d1f8bae1440bb458c","kind":"commit","published_at":"2021-08-13T00:32:02.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/1.0.0","html_url":"https://github.com/npucino/sandpyper/releases/tag/1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@1.0.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/1.0.0/manifests"},{"name":"0.1.1","sha":"e0f048e5f034e8bdbd77824e3d21210a47fa229c","kind":"commit","published_at":"2021-06-02T09:08:07.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/0.1.1","html_url":"https://github.com/npucino/sandpyper/releases/tag/0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@0.1.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/0.1.1/manifests"},{"name":"0.1.0-beta","sha":"46263a702fd30eb0a4f767f1f3c223c95c2c8979","kind":"commit","published_at":"2021-06-02T08:45:14.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/0.1.0-beta","html_url":"https://github.com/npucino/sandpyper/releases/tag/0.1.0-beta","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@0.1.0-beta","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/0.1.0-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/0.1.0-beta/manifests"},{"name":"0.0.10","sha":"fe5d83dbbe8c5fe72ec035190f6ddcd727224bb8","kind":"commit","published_at":"2021-06-02T05:40:03.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/0.0.10","html_url":"https://github.com/npucino/sandpyper/releases/tag/0.0.10","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@0.0.10","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/0.0.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/0.0.10/manifests"},{"name":"0.1.0","sha":"fe5d83dbbe8c5fe72ec035190f6ddcd727224bb8","kind":"commit","published_at":"2021-06-02T05:40:03.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/0.1.0","html_url":"https://github.com/npucino/sandpyper/releases/tag/0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@0.1.0","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/0.1.0/manifests"},{"name":"v0.0.9","sha":"abc95f607a5fce20b08846efdd495232fb8460ec","kind":"commit","published_at":"2021-05-24T11:11:41.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v0.0.9","html_url":"https://github.com/npucino/sandpyper/releases/tag/v0.0.9","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v0.0.9","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.9/manifests"},{"name":"v0.0.8","sha":"8b4cea843a19271b436f6a186da5db4d104f3320","kind":"commit","published_at":"2021-05-24T11:04:56.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v0.0.8","html_url":"https://github.com/npucino/sandpyper/releases/tag/v0.0.8","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v0.0.8","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.8/manifests"},{"name":"v0.0.7","sha":"3eaab410266883f7c2d2790178c2cc06b48f6d0c","kind":"commit","published_at":"2021-05-24T10:50:47.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v0.0.7","html_url":"https://github.com/npucino/sandpyper/releases/tag/v0.0.7","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v0.0.7","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.7/manifests"},{"name":"0.0.6.1","sha":"488fc675c63904c8887dde50e6814a8b1c39a669","kind":"commit","published_at":"2021-05-24T10:11:57.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/0.0.6.1","html_url":"https://github.com/npucino/sandpyper/releases/tag/0.0.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@0.0.6.1","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/0.0.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/0.0.6.1/manifests"},{"name":"0.0.6-beta","sha":"211597c7dc0a5e8d85a700aad9ea8ba372d197a3","kind":"commit","published_at":"2021-05-24T07:35:25.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/0.0.6-beta","html_url":"https://github.com/npucino/sandpyper/releases/tag/0.0.6-beta","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@0.0.6-beta","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/0.0.6-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/0.0.6-beta/manifests"},{"name":"v0.0.6","sha":"211597c7dc0a5e8d85a700aad9ea8ba372d197a3","kind":"tag","published_at":"2021-05-24T07:35:25.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v0.0.6","html_url":"https://github.com/npucino/sandpyper/releases/tag/v0.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v0.0.6","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.6/manifests"},{"name":"v0.0.5-beta.2","sha":"7676aabc091df6dd69cd3248ab7b024fbf4546e1","kind":"commit","published_at":"2021-03-17T23:17:41.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v0.0.5-beta.2","html_url":"https://github.com/npucino/sandpyper/releases/tag/v0.0.5-beta.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v0.0.5-beta.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.5-beta.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.5-beta.2/manifests"},{"name":"v0.0.5","sha":"43cdace9a0c4e052e271cc1dd7881a17b919ad00","kind":"tag","published_at":"2021-02-26T11:10:18.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v0.0.5","html_url":"https://github.com/npucino/sandpyper/releases/tag/v0.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v0.0.5","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.5/manifests"},{"name":"v0.0.5-beta","sha":"dbcb2fe71f620daa8e1ee06a815c7f08c8436c3d","kind":"commit","published_at":"2021-02-26T11:03:10.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v0.0.5-beta","html_url":"https://github.com/npucino/sandpyper/releases/tag/v0.0.5-beta","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v0.0.5-beta","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.5-beta","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.5-beta/manifests"},{"name":"v0.0.4","sha":"28c4ddf0ffe0ce5b8a6e2fbd211ff69aaae3db93","kind":"tag","published_at":"2021-02-24T08:10:37.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v0.0.4","html_url":"https://github.com/npucino/sandpyper/releases/tag/v0.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v0.0.4","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.4/manifests"},{"name":"v0.0.3","sha":"083aedb38cf875625e7d2abffe999da1f2ad3940","kind":"tag","published_at":"2021-02-24T04:56:58.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v0.0.3","html_url":"https://github.com/npucino/sandpyper/releases/tag/v0.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v0.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.3/manifests"},{"name":"0.0.3","sha":"e83e98eaf086559e4df3cb6f02367674b0b29127","kind":"commit","published_at":"2021-02-24T04:40:18.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/0.0.3","html_url":"https://github.com/npucino/sandpyper/releases/tag/0.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@0.0.3","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/0.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/0.0.3/manifests"},{"name":"v0.0.2","sha":"5ca21ae5e8ed5f66f798ce8530d1ec2f8bd16bbb","kind":"commit","published_at":"2021-02-23T23:34:44.000Z","download_url":"https://codeload.github.com/npucino/sandpyper/tar.gz/v0.0.2","html_url":"https://github.com/npucino/sandpyper/releases/tag/v0.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"purl":"pkg:github/npucino/sandpyper@v0.0.2","tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/tags/v0.0.2/manifests"}]},"repo_metadata_updated_at":"2025-09-04T06:59:30.768Z","dependent_packages_count":0,"downloads":20,"downloads_period":"last-month","dependent_repos_count":1,"rankings":{"downloads":26.515095963474835,"dependent_repos_count":21.835841835996224,"dependent_packages_count":9.840959837582574,"stargazers_count":17.72846552959282,"forks_count":29.863831626725744,"docker_downloads_count":null,"average":21.156838958674438},"purl":"pkg:pypi/sandpyper","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/sandpyper","docker_dependents_count":null,"docker_downloads_count":null,"usage_url":"https://repos.ecosyste.ms/usage/pypi/sandpyper","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/sandpyper/dependencies","status":null,"funding_links":[],"critical":null,"issue_metadata":{"last_synced_at":"2025-08-31T19:02:33.152Z","issues_count":8,"pull_requests_count":7,"avg_time_to_close_issue":321382.5,"avg_time_to_close_pull_request":1984.8333333333333,"issues_closed_count":4,"pull_requests_closed_count":6,"pull_request_authors_count":2,"issue_authors_count":4,"avg_comments_per_issue":4.0,"avg_comments_per_pull_request":0.5714285714285714,"merged_pull_requests_count":5,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":9652.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":1,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.5,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":1,"issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/issues","maintainers":[{"login":"npucino","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/npucino"}],"active_maintainers":[]},"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/sandpyper/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/sandpyper/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/sandpyper/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/sandpyper/related_packages","maintainers":[{"uuid":"npucino","login":"npucino","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://pypi.org/user/npucino/","role":null,"created_at":"2023-02-25T09:49:21.183Z","updated_at":"2023-02-25T09:49:21.183Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/npucino/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":724831,"maintainers_count":308212,"namespaces_count":0,"keywords_count":237984,"github":"pypi","metadata":{"funded_packages_count":50481},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-09-04T05:23:51.177Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}}],"commits":{"id":9625297,"full_name":"npucino/sandpyper","default_branch":"master","committers":[{"name":"Nicolas Pucino","email":"44853536+npucino","login":"npucino","count":497},{"name":"Joshua Lovell","email":"joshualeonlovell@gmail.com","login":"jllovell","count":1}],"total_commits":498,"total_committers":2,"total_bot_commits":0,"total_bot_committers":0,"mean_commits":249.0,"dds":0.002008032128514081,"past_year_committers":[{"name":"Joshua Lovell","email":"joshualeonlovell@gmail.com","login":"jllovell","count":1}],"past_year_total_commits":1,"past_year_total_committers":1,"past_year_total_bot_commits":0,"past_year_total_bot_committers":0,"past_year_mean_commits":1.0,"past_year_dds":0.0,"last_synced_at":"2025-08-07T06:38:16.203Z","last_synced_commit":"8f51ddb98b17009c12abd2246c8a308fb814778f","created_at":"2025-04-11T11:19:17.865Z","updated_at":"2025-08-07T06:38:16.204Z","commits_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/commits","host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-08-12T00:00:10.817Z","repositories_count":5471474,"commits_count":852567568,"contributors_count":31063899,"owners_count":906373,"icon_url":"https://github.com/github.png","host_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://commits.ecosyste.ms/api/v1/hosts/GitHub/repositories"}},"issues_stats":{"full_name":"npucino/sandpyper","html_url":"https://github.com/npucino/sandpyper","last_synced_at":"2025-08-31T19:02:33.152Z","status":"error","issues_count":8,"pull_requests_count":7,"avg_time_to_close_issue":321382.5,"avg_time_to_close_pull_request":1984.8333333333333,"issues_closed_count":4,"pull_requests_closed_count":6,"pull_request_authors_count":2,"issue_authors_count":4,"avg_comments_per_issue":4.0,"avg_comments_per_pull_request":0.5714285714285714,"merged_pull_requests_count":5,"bot_issues_count":0,"bot_pull_requests_count":0,"past_year_issues_count":0,"past_year_pull_requests_count":2,"past_year_avg_time_to_close_issue":null,"past_year_avg_time_to_close_pull_request":9652.0,"past_year_issues_closed_count":0,"past_year_pull_requests_closed_count":1,"past_year_pull_request_authors_count":1,"past_year_issue_authors_count":0,"past_year_avg_comments_per_issue":null,"past_year_avg_comments_per_pull_request":0.5,"past_year_bot_issues_count":0,"past_year_bot_pull_requests_count":0,"past_year_merged_pull_requests_count":1,"created_at":"2023-05-14T23:27:05.309Z","updated_at":"2025-09-03T03:17:29.332Z","repository_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper","issues_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories/npucino%2Fsandpyper/issues","issue_labels_count":{"bug":2,"enhancement":1},"pull_request_labels_count":{},"issue_author_associations_count":{"NONE":7,"OWNER":1},"pull_request_author_associations_count":{"OWNER":5,"CONTRIBUTOR":2,"NONE":1},"issue_authors":{"chrisleaman":5,"Freakston":1,"dbuscombe-usgs":1,"npucino":1},"pull_request_authors":{"npucino":5,"jllovell":3},"host":{"name":"GitHub","url":"https://github.com","kind":"github","last_synced_at":"2025-09-03T00:00:08.273Z","repositories_count":10068978,"issues_count":31212674,"pull_requests_count":95211468,"authors_count":10688660,"icon_url":"https://github.com/github.png","host_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/repositories","owners_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/owners","authors_url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors"},"past_year_issue_labels_count":{},"past_year_pull_request_labels_count":{},"past_year_issue_author_associations_count":{},"past_year_pull_request_author_associations_count":{"CONTRIBUTOR":2,"NONE":1},"past_year_issue_authors":{},"past_year_pull_request_authors":{"jllovell":3},"maintainers":[{"login":"npucino","count":6,"url":"https://issues.ecosyste.ms/api/v1/hosts/GitHub/authors/npucino"}],"active_maintainers":[]},"events":{"total":{"IssueCommentEvent":1,"PushEvent":1,"PullRequestEvent":1,"PullRequestReviewCommentEvent":1,"PullRequestReviewEvent":3},"last_year":{"IssueCommentEvent":1,"PushEvent":1,"PullRequestEvent":1,"PullRequestReviewCommentEvent":1,"PullRequestReviewEvent":3}},"keywords":["beach","coastal-dynamics","erosion","remote-sensing","satellite-data","shoreline","uav-imagery"],"dependencies":[{"ecosystem":"pypi","filepath":"requirements.txt","sha":null,"kind":"manifest","created_at":"2022-09-05T05:41:39.600Z","updated_at":"2022-09-05T05:41:39.600Z","repository_link":"https://github.com/npucino/sandpyper/blob/master/requirements.txt","dependencies":[{"id":3875808872,"package_name":"geopandas","ecosystem":"pypi","requirements":"==0.8.2","direct":true,"kind":"runtime","optional":false},{"id":3875808873,"package_name":"matplotlib","ecosystem":"pypi","requirements":"==3.3.4","direct":true,"kind":"runtime","optional":false},{"id":3875808874,"package_name":"numpy","ecosystem":"pypi","requirements":"==1.20.1","direct":true,"kind":"runtime","optional":false},{"id":3875808875,"package_name":"pandas","ecosystem":"pypi","requirements":"==1.2.2","direct":true,"kind":"runtime","optional":false},{"id":3875808876,"package_name":"pysal","ecosystem":"pypi","requirements":"==2.1","direct":true,"kind":"runtime","optional":false},{"id":3875808877,"package_name":"rasterio","ecosystem":"pypi","requirements":"==1.2.0","direct":true,"kind":"runtime","optional":false},{"id":3875808878,"package_name":"richdem","ecosystem":"pypi","requirements":"==0.3.4","direct":true,"kind":"runtime","optional":false},{"id":3875808879,"package_name":"scikit-image","ecosystem":"pypi","requirements":"==0.18.1","direct":true,"kind":"runtime","optional":false},{"id":3875808880,"package_name":"scikit-learn","ecosystem":"pypi","requirements":"==0.24.1","direct":true,"kind":"runtime","optional":false},{"id":3875808881,"package_name":"scipy","ecosystem":"pypi","requirements":"==1.6.0","direct":true,"kind":"runtime","optional":false},{"id":3875808882,"package_name":"seaborn","ecosystem":"pypi","requirements":"==0.11.1","direct":true,"kind":"runtime","optional":false},{"id":3875808883,"package_name":"tqdm","ecosystem":"pypi","requirements":"==4.56.2","direct":true,"kind":"runtime","optional":false},{"id":3875808884,"package_name":"pooch","ecosystem":"pypi","requirements":"==1.4.0","direct":true,"kind":"runtime","optional":false},{"id":3875808885,"package_name":"fuzzywuzzy","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"pypi","filepath":"requirements_dev.txt","sha":null,"kind":"manifest","created_at":"2022-09-05T05:41:39.684Z","updated_at":"2022-09-05T05:41:39.684Z","repository_link":"https://github.com/npucino/sandpyper/blob/master/requirements_dev.txt","dependencies":[{"id":3875809287,"package_name":"pip","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":3875809288,"package_name":"bump2version","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":3875809289,"package_name":"wheel","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":3875809290,"package_name":"watchdog","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":3875809291,"package_name":"flake8","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":3875809292,"package_name":"tox","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":3875809293,"package_name":"coverage","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":3875809294,"package_name":"Sphinx","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false},{"id":3875809295,"package_name":"twine","ecosystem":"pypi","requirements":"*","direct":true,"kind":"development","optional":false}]},{"ecosystem":"pypi","filepath":"setup.py","sha":null,"kind":"manifest","created_at":"2022-09-05T05:41:39.829Z","updated_at":"2022-09-05T05:41:39.829Z","repository_link":"https://github.com/npucino/sandpyper/blob/master/setup.py","dependencies":[{"id":3875809773,"package_name":"x.strip","ecosystem":"pypi","requirements":"*","direct":true,"kind":"runtime","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/build.yml","sha":null,"kind":"manifest","created_at":"2025-04-11T11:19:28.284Z","updated_at":"2025-04-11T11:19:28.284Z","repository_link":"https://github.com/npucino/sandpyper/blob/master/.github/workflows/build.yml","dependencies":[{"id":22639398904,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":22639398905,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":22639398906,"package_name":"s-weigand/setup-conda","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/docs.yml","sha":null,"kind":"manifest","created_at":"2025-04-11T11:19:29.711Z","updated_at":"2025-04-11T11:19:29.711Z","repository_link":"https://github.com/npucino/sandpyper/blob/master/.github/workflows/docs.yml","dependencies":[{"id":22639398932,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":22639398933,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false},{"id":22639398934,"package_name":"s-weigand/setup-conda","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/draft-pdf.yml","sha":null,"kind":"manifest","created_at":"2025-04-11T11:19:30.181Z","updated_at":"2025-04-11T11:19:30.181Z","repository_link":"https://github.com/npucino/sandpyper/blob/master/.github/workflows/draft-pdf.yml","dependencies":[{"id":22639398941,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":22639398942,"package_name":"openjournals/openjournals-draft-action","ecosystem":"actions","requirements":"master","direct":true,"kind":"composite","optional":false},{"id":22639398943,"package_name":"actions/upload-artifact","ecosystem":"actions","requirements":"v1","direct":true,"kind":"composite","optional":false}]},{"ecosystem":"actions","filepath":".github/workflows/pypi.yml","sha":null,"kind":"manifest","created_at":"2025-04-11T11:19:30.297Z","updated_at":"2025-04-11T11:19:30.297Z","repository_link":"https://github.com/npucino/sandpyper/blob/master/.github/workflows/pypi.yml","dependencies":[{"id":22639398944,"package_name":"actions/checkout","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false},{"id":22639398945,"package_name":"actions/setup-python","ecosystem":"actions","requirements":"v2","direct":true,"kind":"composite","optional":false}]}],"score":6.556778356158042,"created_at":"2025-09-04T09:17:51.759Z","updated_at":"2025-10-07T08:04:34.443Z","avatar_url":"https://github.com/npucino.png","language":"Python","category":"Scientific Software","sub_category":"Peer-reviewed","monthly_downloads":20,"funding_links":[],"readme_doi_urls":["https://doi.org/10.5281/zenodo.5565487"],"works":{},"citation_counts":{},"total_citations":0,"keywords_from_contributors":[],"project_url":"https://science.ecosyste.ms/api/v1/projects/1730","html_url":"https://science.ecosyste.ms/projects/1730"}