https://github.com/asfhyp3/hyp3-sdk
A python wrapper around the HyP3 API
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
Repository
A python wrapper around the HyP3 API
Basic Info
Statistics
- Stars: 35
- Watchers: 14
- Forks: 7
- Open Issues: 18
- Releases: 59
Metadata Files
README.md
HyP3 SDK
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:
HyP3to perform HyP3 operations (find jobs, refresh job information, submitting new jobs)Jobto perform operations on single jobs (downloading products, check status)Batchto 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
- Website: https://hyp3-docs.asf.alaska.edu/
- Twitter: ASFHyP3
- Repositories: 36
- Profile: https://github.com/ASFHyP3
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
Top Committers
| Name | 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
Pull Request Labels
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
- Homepage: https://github.com/ASFHyP3/hyp3-sdk
- Documentation: https://hyp3-sdk.readthedocs.io/
- License: BSD-3-Clause
-
Latest release: 7.7.2
published 7 months ago
Rankings
Maintainers (2)
conda-forge.org: hyp3_sdk
- Homepage: https://github.com/ASFHyP3/hyp3-sdk
- License: BSD-3-Clause
-
Latest release: 1.7.1
published over 3 years ago
Rankings
Dependencies
- actions/checkout v3 composite
- actions/checkout v2 composite
- mamba-org/provision-with-micromamba v15 composite
- pypa/gh-action-pypi-publish v1.6.4 composite
- benc-uk/workflow-dispatch v1.2 composite
- python-dateutil *
- requests *
- tqdm *
- urllib3 *
- 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