https://github.com/asfhyp3/hyp3-sdk

A python wrapper around the HyP3 API

https://github.com/asfhyp3/hyp3-sdk

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: zenodo.org
  • Committers with academic emails
    5 of 13 committers (38.5%) from academic institutions
  • Institutional organization owner
    Organization asfhyp3 has institutional domain (hyp3-docs.asf.alaska.edu)
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (9.6%) to scientific vocabulary

Keywords from Contributors

labels sar glacier
Last synced: 6 months ago · JSON representation

Repository

A python wrapper around the HyP3 API

Basic Info
  • Host: GitHub
  • Owner: ASFHyP3
  • License: bsd-3-clause
  • Language: Python
  • Default Branch: develop
  • Homepage:
  • Size: 947 KB
Statistics
  • Stars: 35
  • Watchers: 14
  • Forks: 7
  • Open Issues: 18
  • Releases: 59
Created over 5 years ago · Last pushed 6 months ago
Metadata Files
Readme Changelog License Codeowners

README.md

HyP3 SDK

PyPI license PyPI pyversions PyPI version Conda version Conda platforms

DOI

A python wrapper around the HyP3 API

```python

from hyp3_sdk import HyP3 hyp3 = HyP3(username='MyUsername', password='MyPassword')

granule = 'S1AIWSLC_1SSV20150621T12022020150621T12023200647100893472D8' job = hyp3.submitrtcjob(granule=granule, name='MyNewJob') job = hyp3.watch(job) job.download_files() ```

Install

In order to easily manage dependencies, we recommend using dedicated project environments via Anaconda/Miniconda or Python virtual environments.

The HyP3 SDK can be installed into a conda environment with

conda install -c conda-forge hyp3_sdk

or into a virtual environment with

python -m pip install hyp3_sdk

Quick Usage

There are 3 main classes that the SDK exposes:

  • HyP3 to perform HyP3 operations (find jobs, refresh job information, submitting new jobs)
  • Job to perform operations on single jobs (downloading products, check status)
  • Batch to perform operations on multiple jobs at once (downloading products, check status)

An instance of the HyP3 class will be needed to interact with the external HyP3 API.

```python

from hyp3_sdk import HyP3 hyp3 = HyP3(username='MyUsername', password='MyPassword')

granule = 'S1AIWSLC_1SSV20150621T12022020150621T12023200647100893472D8' job = hyp3.submitrtcjob(granule=granule, name='MyNewJob') job = hyp3.watch(job) job.download_files() ```

Submitting Jobs

hyp3 has member functions for submitting new jobs: python rtc_job = hyp3.submit_rtc_job('granule_id', 'job_name') insar_job = hyp3.submit_insar_job('reference_granule_id', 'secondary_granule_id', 'job_name') insar_burst_job = hyp3.submit_insar_isce_burst_job('reference_granule_id', 'secondary_granule_id', 'job_name') insar_multi_burst_job = hyp3.submit_insar_isce_multi_burst_job(['ref_id_1', 'ref_id_2'], ['sec_id_1', 'sec_id_2'], 'job_name') autorift_job = hyp3.submit_autorift_job('reference_granule_id', 'secondary_granule_id', 'job_name') aria_s1_gunw_job = hyp3.submit_aria_s1_gunw_job('ref_date', 'sec_date', 'frame_id', 'job_name') opera_rtc_s1_job = hyp3.submit_opera_rtc_s1_job('granule_id') Each of these functions will return an instance of the Job class that represents a new HyP3 job request.

Finding Existing Jobs

To find HyP3 jobs that were run previously, you can use the hyp3.find_jobs() python batch = hyp3.find_jobs() This will return a Batch instance representing all jobs owned by you. You can also pass parameters to query to a specific set of jobs

Operations on Job and Batch

If your jobs are not complete you can use the HyP3 instance to update them, and wait from completion python batch = hyp3.find_jobs() if not batch.complete(): # to get updated information batch = hyp3.refresh(batch) # or to wait until completion and get updated information (which will take a fair bit) batch = hyp3.watch(batch)

Once you have complete jobs you can download the products to your machine python batch.download_files()

These operations also work on Job objects python job = hyp3.submit_rtc_job('S1A_IW_SLC__1SSV_20150621T120220_20150621T120232_006471_008934_72D8', 'MyJobName') job = hyp3.watch(job) job.download_files()

Documentation

For the full SDK API Reference, see the HyP3 documentation

Contact Us

Want to talk about the HyP3 SDK? We would love to hear from you!

Found a bug? Want to request a feature? Open an issue

General questions? Suggestions? Or just want to talk to the team? Chat with us on Gitter

Owner

  • Name: HyP3
  • Login: ASFHyP3
  • Kind: organization
  • Location: Fairbanks, AK

Alaska Satellite Facility's Hybrid Pluggable Processing Pipeline

GitHub Events

Total
  • Create event: 72
  • Issues event: 6
  • Release event: 9
  • Watch event: 7
  • Delete event: 52
  • Issue comment event: 35
  • Push event: 190
  • Pull request review comment event: 68
  • Pull request review event: 128
  • Pull request event: 128
Last Year
  • Create event: 72
  • Issues event: 6
  • Release event: 9
  • Watch event: 7
  • Delete event: 52
  • Issue comment event: 35
  • Push event: 190
  • Pull request review comment event: 68
  • Pull request review event: 128
  • Pull request event: 128

Committers

Last synced: almost 3 years ago

All Time
  • Total Commits: 435
  • Total Committers: 13
  • Avg Commits per committer: 33.462
  • Development Distribution Score (DDS): 0.556
Past Year
  • Commits: 89
  • Committers: 10
  • Avg Commits per committer: 8.9
  • Development Distribution Score (DDS): 0.663
Top Committers
Name Email Commits
Joseph H Kennedy me@j****g 193
James Rine j****2@a****u 88
Andrew Johnston a****n@a****u 39
Jake Herrmann j****n@a****u 30
jacquelynsmale 3****e@u****m 29
Andrew Player a****3@g****m 28
James Rine J****2@u****m 15
dependabot[bot] 4****]@u****m 5
Forrest Williams f****2@a****u 2
Kevin Morales k****2@g****m 2
jiangzhu j****4@a****u 2
Heidi Kristenson 6****n@u****m 1
cirrusasf 6****f@u****m 1
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 39
  • Total pull requests: 288
  • Average time to close issues: 5 months
  • Average time to close pull requests: 7 days
  • Total issue authors: 19
  • Total pull request authors: 13
  • Average comments per issue: 1.36
  • Average comments per pull request: 0.39
  • Merged pull requests: 245
  • Bot issues: 1
  • Bot pull requests: 105
Past Year
  • Issues: 3
  • Pull requests: 123
  • Average time to close issues: about 8 hours
  • Average time to close pull requests: 3 days
  • Issue authors: 3
  • Pull request authors: 8
  • Average comments per issue: 0.67
  • Average comments per pull request: 0.36
  • Merged pull requests: 101
  • Bot issues: 0
  • Bot pull requests: 68
Top Authors
Issue Authors
  • asjohnston-asf (9)
  • jhkennedy (8)
  • ZGHHGZ (4)
  • Scartography (2)
  • jtherrmann (2)
  • wangshuaicumt (1)
  • saheelBreezo (1)
  • dependabot[bot] (1)
  • Jlrine2 (1)
  • williamh890 (1)
  • Alex-Lewandowski (1)
  • goriliukasbuxton (1)
  • geoxlt (1)
  • amirafshari (1)
  • scottyhq (1)
Pull Request Authors
  • dependabot[bot] (105)
  • jtherrmann (61)
  • jhkennedy (28)
  • jacquelynsmale (23)
  • asjohnston-asf (23)
  • AndrewPlayer3 (13)
  • williamh890 (12)
  • forrestfwilliams (12)
  • cirrusasf (3)
  • Jlrine2 (3)
  • tools-bot (2)
  • hjkristenson (2)
  • kevinxmorales (1)
Top Labels
Issue Labels
bug (17) enhancement (11) good first issue (3) Jira Bug (3) documentation (2) CI/CD (1) question (1) bumpless (1) minor (1) Jira Story (1)
Pull Request Labels
bumpless (146) patch (92) minor (65) major (14) bug (7) CI/CD (6) tools-bot (2) documentation (1) enhancement (1)

Packages

  • Total packages: 2
  • Total downloads:
    • pypi 7,977 last-month
  • Total dependent packages: 5
    (may contain duplicates)
  • Total dependent repositories: 9
    (may contain duplicates)
  • Total versions: 83
  • Total maintainers: 2
pypi.org: hyp3-sdk

A python wrapper around the HyP3 API

  • Versions: 60
  • Dependent Packages: 4
  • Dependent Repositories: 4
  • Downloads: 7,977 Last month
Rankings
Dependent packages count: 2.3%
Dependent repos count: 7.5%
Downloads: 8.6%
Average: 8.9%
Stargazers count: 12.6%
Forks count: 13.3%
Maintainers (2)
Last synced: 6 months ago
conda-forge.org: hyp3_sdk
  • Versions: 23
  • Dependent Packages: 1
  • Dependent Repositories: 5
Rankings
Dependent repos count: 14.8%
Dependent packages count: 29.0%
Average: 36.1%
Stargazers count: 50.2%
Forks count: 50.6%
Last synced: 6 months ago

Dependencies

.github/workflows/distribute.yml actions
  • actions/checkout v3 composite
  • actions/checkout v2 composite
  • mamba-org/provision-with-micromamba v15 composite
  • pypa/gh-action-pypi-publish v1.6.4 composite
.github/workflows/notify-downstream.yml actions
  • benc-uk/workflow-dispatch v1.2 composite
.github/workflows/changelog.yml actions
.github/workflows/create-jira-issue.yml actions
.github/workflows/labeled-pr.yml actions
.github/workflows/release-template-comment.yml actions
.github/workflows/release.yml actions
.github/workflows/static-analysis.yml actions
.github/workflows/tag-version.yml actions
.github/workflows/test.yml actions
pyproject.toml pypi
  • python-dateutil *
  • requests *
  • tqdm *
  • urllib3 *
environment.yml conda
  • build
  • flake8
  • flake8-blind-except
  • flake8-builtins
  • flake8-import-order
  • jupyter
  • pip
  • pytest
  • pytest-cov
  • python >=3.9
  • python-dateutil
  • requests
  • responses
  • setuptools >=61
  • setuptools_scm >=6.2
  • tqdm
  • urllib3