Changelog¶
Update your installation to the latest version with the following command:
pip install up42-py --upgrade
conda update -c conda-forge up42-py
You can check your current version with the following command:
pip show up42-py
conda search up42-py
For more information, see UP42 Python package description.
1.0.4a5¶
May 30, 2024
- Move webhooks related code from
base.py
1.0.4a4¶
May 29, 2024
- Delegated webhook repr to its info
- Improved test coverage for webhooks
- Dropped unneeded shared and global fixtures for webhook tests
1.0.4a3¶
May 27, 2024
- Added
SessionandWorkspaceIddescriptors to provide access to session and workspace_id from other classes. - Renaming
mainmodule tobase.
1.0.4a2¶
May 24, 2024
- Added workspace singleton in
main.py, encapsulating global state (auth, workspace id). - Inject auth and workspace id instead of passing a containing object.
1.0.4a1¶
May 24, 2024
- Bumped dependencies requests from 2.31.0 to 2.32.0.
1.0.3¶
May 23, 2024
- Added tenacity as dependency.
- Added resilience on asset::stac_info and asset::stac_items
- Dropped pystac client subclassing
- Cleaned up fixtures
- Improved test coverage
- Dropped unneeded exposure of token
1.0.3a1¶
May 23, 2024
- Added tenacity as dependency.
- Added resilience on asset::stac_info and asset::stac_items
- Dropped pystac client subclassing
- Cleaned up fixtures
- Improved test coverage
- Dropped unneeded exposure of token
1.0.2¶
May 15, 2024 - Added thread safety to token retrieval.
1.0.2a1¶
May 15, 2024 - Added thread safety to token retrieval.
1.0.1¶
May 13, 2024 - Increased retries and backoff in http resilience. - Fixed bug with temporary storage overfill when downloading archives. - Bumped dependencies jinja2, tqdm, geojson.
1.0.1a4¶
May 13, 2024 - geojson dependency bumped from 3.0.1 to 3.1.0 to fix conda python 3.12 installer.
1.0.1a3¶
May 7, 2024
- Setting http_adapter default configuration to retries = 5 and backoff factor = 1
1.0.1a2¶
May 7, 2024
- Renamed download_from_gcs_unpack to download_archive
- Renamed download_gcs_not_unpack to download_file
- Improved test coverage for download_archive
- Bug fix in download_archive: use output directory provided for temporary archive storage instead of default temp folder
1.0.1a1¶
May 7, 2024 - jinja2 dependency bumped from 3.1.3 to 3.1.4. - tqdm dependency bumped from 4.66.2 to 4.66.3.
1.0.0¶
Apr 17, 2024 - Dropped deprecated functionalities: Jobs, Projects, Workflows, Viztools - Dropped deprecated code related to blocks
1.0.0a7¶
Apr 16, 2024
- Dropped get_blocks, get_block_details and get_block_coverage from main.py
1.0.0a6¶
Apr 16, 2024
- Dropped project id and api key based authentication in main.py, auth.py, http/oauth.py and http/client.py
- Adapted tests and fixtures
- Dropped viztools.py
1.0.0a5¶
Apr 16, 2024
- Dropped deprecated Workflow functions - info, workflow_tasks, get_workflow_tasks, get_parameters_info, _get_default_parameters (internal function), _construct_full_workflow_tasks_dict (internal function), get_jobs, delete
- Dropped Workflow tests and fixtures
1.0.0a4¶
Apr 15, 2024
- Dropped deprecated Jobtask functions - info, get_results_json, download_results, download_quicklooks
- Dropped Jobtask tests and fixtures
1.0.0a3¶
Apr 15, 2024
- Dropped deprecated Job functions - info, status, is_succeeded, download_quicklooks, get_results_json, download_results, get_logs, upload_results_to_bucket, get_jobtasks, get_jobtasks_results_json, get_credits
- Dropped Job tests and fixtures
1.0.0a2¶
Apr 15, 2024
- Dropped deprecated JobCollection functions - info, status, apply, download_results
- Dropped deprecated Project functions - info, get_workflows, get_project_settings, get_jobs
- Dropped Project's fixtures and tests
- Dropped JobCollection's fixtures and tests
- Dropped Workflow's get_jobs function
1.0.0a1¶
Apr 15, 2024
- Dropped deprecated viztools functions: folium_base_map(), plot_quicklooks(), plot_coverage(), draw_aoi(), _map_images() (internal function), map_quicklooks(), plot_coverage(), plot_results(), requires_viz() (internal function), map_results(), render() (internal function)
0.37.2¶
Apr 8, 2024
Dependabot security updates: - Bump black from 22.12.0 to 24.3.0 - Bump pillow from 10.2.0 to 10.3.0
0.37.1¶
Apr 5, 2024
- Removed upper bound for Python 3.12.
- Dropped support for Python 3.8.
- New authentication token are retrieved upon expiration instead of every request.
- Dropped tenacity, requests-oauthlib and types-oauthlib as dependencies.
- Updated the deprecation date for
Jobs,Workflow, andProjectsrelated features. - Multiple refactoring improvements.
0.37.1a11¶
Apr 4, 2024
- Added standard headers to
http/session.py - Added session provisioning to
auth.pyandhttp/client.py - Dropped undocumented
authenticateflag inauth.py - Dropped undocumented kwargs in
auth.pyandmain.py
0.37.1a10¶
Apr 3, 2024
- Updating the deprecation date for
Jobs,Workflow, andProjectsrelated features.
0.37.1a9¶
Apr 2, 2024
- Dropped legacy
estimation.py,test_estimation.pyandfixtures_estimation.py
0.37.1a8¶
March 28, 2024
- Dependency injection and test coverage improvement in
auth.py
0.37.1a7¶
March 27, 2024
- Raise typed error if token retrieval fails due to wrong credentials.
0.37.1a6¶
March 26, 2024
- Switched to using
http.client.Clientinauth.pyfor authentication and token management - Dropped unneeded resiliency code
- Dropped tenacity, requests-oauthlib and types-oauthlib as unneeded dependencies
0.37.1a5¶
March 21, 2024
- Run test pipeline on Python versions 3.9 to 3.12
- Removed upper bound for Python 3.12
- Dropped support for Python 3.8
0.37.1a4¶
March 21, 2024
- New http stack client to provide resilient token and requests compliant authentication.
0.37.1a3¶
March 20, 2024
- Detection of token retriever based on supplied settings.
0.37.1a2¶
March 19, 2024
- Detection of credentials settings based on supplied credentials.
0.37.1a1¶
March 19, 2024
- Dropped all the live tests.
0.37.0¶
March 15, 2024
- Fixed inadvertent title and tags removals during asset metadata updates.
- Dropped unneeded
auth::envproperty and the corresponding tests. - Generalized new authentication stack to cover account authentication case.
- Added new components within the HTTP layer to facilitate future enhancements in authentication and request processes.
- Adjusted most of the code in accordance with pylint checks.
0.37.0a14¶
March 15, 2024
- Fixed inadvertent titles and tags removals during asset metadata updates.
0.37.0a13¶
March 15, 2024
- Dropped unneeded
auth::envproperty and the corresponding tests.
0.37.0a12¶
March 14, 2024
- Adjusted
initialization.py,test_initialization.py,main.pyandtest_main.pyin accordance with Pylint checks.
0.37.0a11¶
March 14, 2024
- Adjusted
asset.py,asset_searcher.py,test_asset.pyandfixtures_asset.pyin accordance with Pylint checks. - Adjusted
test_http_adapter.pyin accordance with Pylint checks. - Dropped
test_e2e_catalog.pysince it is covered by SDK tests. - Fixed a flaky test in
test_session.py
0.37.0a10¶
March 13, 2024
- Adjusted
webhooks.py,test_webhooks.pyandfixtures_webhook.pyin accordance with Pylint checks. - Dropped
test_e2e_30sec.pysince it covers functionality dropped earlier.
0.37.0a9¶
March 13, 2024
- Adjusted
macros.py,utils.py, andtest_utils.pyin accordance with Pylint checks.
0.37.0a8¶
March 13, 2024
- Adjusted
estimation.py,test_estimation.pyandfixtures_estimation.pyin accordance with Pylint checks.
0.37.0a7¶
March 13, 2024
- Adjusted
order.py,test_order.pyandfixtures_order.pyin accordance with Pylint checks.
0.37.0a6¶
March 13, 2024
- Adjusted
host.py,tools.py,test_tools.py,storage.py,test_storage.pyandfixtures_storage.pyin accordance with Pylint checks.
0.37.0a5¶
March 11, 2024
- Adjusted
auth.pyandoauth.pywith their coverage and fixtures in accordance with Pylint checks. - Adjusted
conftest.pyin accordance with Pylint checks.
0.37.0a4¶
March 07, 2024
- Generalized new authentication stack to cover account authentication case.
0.37.0a3¶
March 07, 2024
- Adjusted
tasking.py,test_tasking.py, andfixtures_tasking.pyin accordance with Pylint checks.
0.37.0a2¶
March 06, 2024
- Adjusted
catalog.pyandtest_catalog.pyin accordance with Pylint checks. - Conducted minor refactoring in other classes due to changes in function names within the authentication module.
0.37.0a1¶
March 06, 2024
- Added a new component within the HTTP layer to facilitate future enhancements in authentication and request processes: ported a resilient and authenticated cached session.
0.37.0a0¶
March 04, 2024
Added new components within the HTTP layer to facilitate future enhancements in authentication and request processes:
- Ported the HTTP adapter, providing configurable resilience.
- Ported resilient project authentication, managing token expiration.
0.36.0¶
February 20, 2024
- Updated the
place_order()andestimate_order()functions of the CatalogBase class to the latest version of the API.
0.35.0¶
January 25, 2024
-
Discontinued support for the following edit and create functions:
-
up42:
validate_manifest()
-
Project:
max_concurrent_jobsupdate_project_settings()create_workflow()
-
Workflow:
max_concurrent_jobsupdate_name()add_workflow_tasks()get_compatible_blocks()get_parameters_info()construct_parameters()construct_parameters_parallel()estimate_job()test_job()test_jobs_parallel()run_job()run_jobs_parallel()
-
Job:
track_status()cancel_job()
-
-
Marked the following visualization functions as deprecated:
-
up42:
viztools.folium_base_map()
-
Catalog:
plot_coverage()map_quicklooks()plot_quicklooks()
-
Job:
map_results()plot_results()
-
JobCollection:
map_results()plot_results()
-
JobTask:
map_results()plot_results()plot_quicklooks()
They will be discontinued after March 31, 2024.
-
0.34.1¶
December 15, 2023
- Restored the
order.get_assetsfunction.
0.34.0¶
December 13, 2023
- Updated the
storage.get_ordersfunction to the latest version of the API. - Set Poetry as the only dependency manager.
- Discontinued support for the
order.get_assetsfunction.
0.33.1¶
November 23, 2023
Marked the following parameters of storage.get_assets as deprecated to enforce the use of the PySTAC client search.
geometryacquired_beforeacquired_aftercustom_filter
0.33.0¶
November 14, 2023
- Updated authentication by changing it from project-based to account-based.
- Added a new function to the Asset class:
get_stac_asset_urlgenerates a signed URL that allows to download a STAC asset from storage without authentication.
0.32.0¶
September 7, 2023
A new function added to the Asset class:
download_stac_assetallows you to download STAC assets from storage.
0.31.0¶
August 9, 2023
- Supported STAC assets in
asset.stac_items. - Added substatuses to
order.track_status. - Limited
catalog.search(sort_by)toacquisition_dateonly. - Removed
get_credits_historyfrom the main class. asset.stac_infonow returns thepystac.Collectionobject.- Python 3.7 is no longer supported.
0.30.1¶
July 14, 2023
Fixed the failing construct_order_parameters function and updated tests.
0.30.0¶
July 3, 2023
Added a new tags argument to the following functions:
construct_order_parameters, to assign tags to new tasking and catalog orders.get_order, to filter orders by tags.get_assets, to filter assets by tags.
0.29.0¶
June 20, 2023
Integrated new functions into the Tasking class:
get_feasibility— Returns a list of feasibility studies for tasking orders.choose_feasibility— Allows accepting one of the proposed feasibility study options.get_quotations— Returns a list of all quotations for tasking orders.decide_quotation— Allows accepting or rejecting a quotation for a tasking order.
0.28.1¶
April 6, 2023
- Updating test to latest version
0.28.0¶
February 17, 2023
- Added STAC search functionality to storage.get_assets.
Now you can filter assets by new parameters:
geometry,acquired_after,acquired_before,collection_names,producer_names,tags,search,sources. - Added storage.pystac_client. Use it to authenticate PySTAC client to access your UP42 storage assets using its library.
- Added asset.stac_info. Use it to access STAC metadata, such as acquisition, sensor, and collection information.
0.27.1¶
January 26, 2023
- Improve error communication of functions using API v2 endpoints.
- add
up42.__version__attribute to access the package version with Python. - Adapt asset class attributes (
createdtocreatedAt) to UP42 API.
0.27.0¶
December 12, 2022
- Add
asset.update_metadata()for adjusting title & tags of an asset. storage.get_assets()has new parameterscreated_after,created_before,workspace_idto better filter the desired assets. It now queries the assets of all accessible workspaces by default.- Adopt new UP42 API 2.0 endpoints for user storage & assets.
0.26.0¶
November 2, 2022
- Remove Python version upper bound, this will enable immediate but untested installation with any new Python version.
- Changes to
workflow.construct_parameters: - Deprecates the
assetsparameter (list of asset objects), instead useasset_ids(list of asset_ids). - Removes limitation of using only assets originating from blocks, now also supports assets from catalog & tasking.
- In addition to required parameters, now adds all optional parameters that have default values.
tasking.construct_order_parametersnow accepts a Point feature (e.g. use with Blacksky).- Fix:
get_data_productswithbasic=Falsenow correctly returns only tasking OR catalog products. - The up42 object now correctly does not give access to third party imports anymore (restructured init module).
0.25.0¶
October 25, 2022
- Add dedicated tasking class for improved handling of satellite tasking orders.
construct_order_parametersnow also adds the parameters specific to the selected data-product, and suggests possible values based on the data-product schema.
0.24.0¶
October 20, 2022
- Add
catalog.get_data_product_schema()for details on the order parameters - Switches parameter
sensortocollectionincatalog.download_quicklooks. - Various small improvements e.g. quicklooks automatic band selection, Reduced use of default parameters in constructor methods, error message display, optimized API call handling for parameter validation etc.
- Internal: Separation of Catalog and CatalogBase to prepare addition of Tasking class, reorganize test fixtures.
0.23.1¶
October 5, 2022
- Fixes issue with filename of downloaded assets containing two suffix
.e.g../output..zip. Resolves #350
0.23.0¶
September 20, 2022
- Integrates the UP42 data productsm e.g. the selection "Display" and "Reflectance" configuration in the ordering process. The new ordering process requires the selection of a specific data product.
- The
order_parametersargument forcatalog.estimate_orderandcatalog.place_ordernow has a different structure. The previous option to just specify the collection name will soon be deactivated in the UP42 API! - New function
catalog.get_data_products - New function
catalog.construct_order_parameters catalog.construct_search_parametersreplacescatalog.construct_parameterswhich is deprecated and will be removed in v0.25.0
0.22.2¶
July 21, 2022
- Fix unpacking of order assets if no output topfolder inherent in archive
0.22.1¶
July 19, 2022
- Fix conda release (include requirements-viz file)
0.22.0¶
July 5, 2022
- Adds webhooks functionality to the SDK, see new webhooks docs chapter.
- Introduces optional installation option for the visualization functionalities. The required dependencies are now not installed by default.
- Removes
order.metadataproperty, as removed from UP42 API. - Fix: Using a MultiPolygon geometry in construct_parameters will now correctly raise an error as not accepted.
- Documentation overhaul & various improvements
0.21.0¶
May 12, 2022
- Adding
up42.get_balanceandup42.get_credits_historyfeatures for allowing account information retrieval. - Adding
up42.get_block_coveragefeatures for retrieval of the catalog blocks' coverage as GeoJSON. project.get_jobsnow has sorting criteria, sorting order and limit parameters.- Catalog search now enables search for Pleiades Neo etc. (uses host specific API endpoints)
- Fix:
project.get_jobsnow correctly queries the full number of jobs.
0.20.2¶
April 10, 2022
- Update documentation
- Non functional changes to enable conda release
- Update requirements and removing overlapping subdependencies
0.20.1¶
April 5, 2022
- Update documentation for latest changes on the user console.
- Remove outdated examples.
- Add required files on the dist version for allowing creation of conda meta files.
0.20.0¶
February 15, 2022
- Enables getting credits consumed by a job via
job.get_credits.
0.19.0¶
January 28, 2022
- Add support for UP42 data collections via
catalog.get_collections. - Switch
catalog.construct_parametersto usecollectioninstead ofsensorfor the collection selection. - Refactor retry mechanism. Resolves issue of unintended token renewals & further limits retries.
0.18.1¶
December 20, 2021
- Allow installation with Python 3.9
0.18.0¶
November 10, 2021
- Add sorting criteria, sorting order and results limit parameters to
storage.get_ordersandstorage.get_assets. Now also uses results pagination which avoids timeout issues when querying large asset/order collections. - Significant speed improvement for:
-
.get_jobs,.get_workflows,.get_assets,.get_orderscalls.workflow.create_workflowwhen used withexisting=True.- Printing objects representations, which now does not trigger additional object info API calls.
- Removal: Removes deprecated handling of multiple features as input geometry in
.construct_parametersInstead, using multiple features or a MultiPolygon will now raise an error. This aligns the Python SDK with the regular UP42 platform behaviour. - Removal: Remove the Python SDK Command Line Interface.
- Fix: JobTask.info and the printout now uses the correct jobtask information.
0.17.0¶
September 10, 2021
- Adds
usage_typeparameter for selection of "DATA" and "ANALYTICS" data in catalog search. - Adds automatic handling of catalog search results pagination when requesting more than 500 results.
- Adds support for datetime objects and all iso-format compatible time strings to
construct_parameters. - Fix:
get_compatible_blockswith an empty workflow now returns all data blocks. - Start deprecation for
handle_multiple_featuresparameter inconstruct_parametersto guarantee parity with UP42 platform. In the future, the UP42 SDK will only handle single geometries. - Uses Oauth for access token handling.
0.16.0¶
June 30, 2021
- Limit memory usage for large file downloads (#237)
- Remove deprecated job.get_status() (Replace by job.status) (#224)
- Remove deprecated jobcollection.get_job_info() and jobcollection.get_status() (Replaced by jobcollection.info and jobcollection.status)
- Remove order-id functionality (#228)
- Limit installation to Python <=3.9.4
- Internal code improvements (e.g. project settings, retry)
0.15.2¶
April 7, 2021
- Enables plotting of jobcollection with
.map_results(). - Fixes
.cancel_job()functionality.
0.15.1¶
March 12, 2021
- Fixes breaking API change in catalog search.
- Catalog search result now contains a
sceneIdproperty instead ofscene_id.
0.15.0¶
January 27, 2021
- Add
Storage,OrderandAssetobjects. - Add possibility to create orders from
CatalogwithCatalog.place_order. - Add possibility to use assets in job parameters with
Workflow.construct_paramaters. - Update job estimation endpoint.
- Multiple documentation fixes.
0.14.0¶
December 7, 2020
- Add
workflow.estimate_job()function for estimation of credit costs & job duration before running a job. - Add
bands=[3,2,1]parameter in.plot_results()and.map_results()for band & band order selection. .plot_results()now accepts kwargs of rasterio.plot.show and matplotlib.- Add
up42.initialize_jobcollection() - Add
get_estimation=Falseparameter toworkflow.test_job. - Add ship-identification example.
- Overhaul "Getting started" examples.
0.13.1¶
November 18, 2020
- Handle request rate limits via retry mechanism.
- Limit
map_quicklooks()to 100 quicklooks. - Add aircraft detection example & documentation improvements.
0.13.0¶
October 30, 2020
- New consistent use & documentation of the basic functionality:
- All basic functions (e.g.
up42.get_blocks) are accessible from theup42import object. Now consistently documented in theup42object code reference. - The option to use this basic functionality from any lower level object will soon be
removed (e.g.
project.get_blocks,workflow.get_blocks). Now triggers a deprecation warning.
- All basic functions (e.g.
- The plotting functionality of each object is now documented directly in that object's code reference.
- Fix: Repair catalog search for sobloo.
- Various improvements to docs & code reference.
- Overhaul & simplify test fixtures.
- Split off viztools module from tools module.
0.12.0¶
October 14, 2020
- Simplify object representation, also simplifies logger messages.
- Add
.infoproperty to all objects to get the detailed object information, deprecation process for.get_info. - Add
.statusproperty to job, jobtask and jobcollection objects. Deprecation process for.get_status. - Add selection of job mode for
.get_jobs. - Add description of initialization of each object to code reference.
- Fix: Use correct cutoff time 23:59:59 in default datetimes.
- Fix: Download jobtasks to respective jobtask subfolders instead of the job folder.
- Unpin geopandas version in requirements.
- Move sdk documentation to custom subdomain "sdk.up42.com".
- Simplify mock tests & test fixtures
0.11.0¶
August 13, 2020
- Fix: Remove buffer 0 for fixing invalid geometry.
- Add
.map_quicklooksmethod for visualising quicklooks interactively. - Add an example notebook for mapping quicklooks using
.map_quicklooksmethod.
0.10.1¶
August 13, 2020
- Hotfix: Fixes usage of multiple features as the input geometry.
0.10.0¶
August 7, 2020
- Add parallel jobs feature. Allows running jobs for multiple geometries, scene_ids or
timeperiods in parallel. Adds
workflow.construct_parameters_parallel,workflow.test_job_parallel,workflow.run_job_paralleland the newJobCollectionobject. - Adjusts
workflow.get_jobsandproject.get_jobsto return JobCollections. - Adjusts airports-parallel example notebook to use the parallel jobs feature.
- Adjusts flood mapping example notebook to use OSM block.
- Adds option to not unpack results in
job.download_results. - Now allows passing only scene_ids to
workflow.construct_parameters. - Improves layout of image results plots for multiple results.
- Added binder links.
- Now truncates log messages > 2k characters.
- Various small improvements & code refactorings.
0.9.3¶
July 15, 2020
- Add support for secondary GeoJSON file to
job.map_results
0.9.2¶
July 4, 2020
- Fix inconsistency with
job.map_resultsselecting the JSON instead of the image
0.9.1¶
June 25, 2020
- Fixes typo in catalog search parameters
0.9.0¶
May 7, 2020
- Enable block_name and block_display_name for
workflow.add_workflow_tasks - Replace requirement to specify provider by sensor for
catalog.download_quicklooks - Add option to disable logging in
up42.settings - Add
project.get_jobsand limitworkflow.get_jobsto jobs in the workflow. - Fix download of all output files
- Job name selectabable in
workflow.test_jobandworkflow.run_job(with added suffix _py) - Fix CRS issues in make
job.map_results, make plotting functionalities more robust
0.8.3¶
April 30, 2020
- Pin geopandas to 0.7.0, package requires new CRS convention
0.8.2¶
April 24, 2020
- Removed
job.create_and_run_job, now split intojob.test_jobandjob.run_job