Update your installation to the latest version with the following command:
=== "pip"
```bash
pip install up42-py --upgrade
```
=== "conda"
```bash
conda update -c conda-forge up42-py
```
You can check your current version with the following command:
=== "pip"
```bash
pip show up42-py
```
=== "conda"
```bash
conda search up42-py
```
For more information, see UP42 Python package description.
Dec 20, 2024
- Switched to using stac client descriptor in
Asset
class and reduced duplication. - Publish
stac_client
function toup42
namespace. - Added
file
property toAsset
class to unify withpystac::Asset
experience. - Deprecated
Asset::download
method in favour ofAsset.file::download
.
Dec 19, 2024
- Use unauthenticated session for signed url image file in
FileProvider
module withFileProvider
class.
Dec 19, 2024
- Experiment
stac
module withFileProvider
descriptor forpystac::Asset
. - Added STAC object dynamic extension on
up42
import. - Deprecated
Asset::download_stac_asset
in favour ofpystac::Asset.file::download
. - Deprecated
Asset::get_stac_asset_url
in favour ofpystac::Asset.file.url
.
Dec 19, 2024
- Made
BatchOrderTemplate::tags
optional. - Deprecated
up42::initialize_tasking
. - Deprecated
Tasking::get_feasibility
. - Deprecated
Tasking::choose_feasibility
.
Dec 19, 2024
- Added
Asset::save
method. - Deprecated
Asset::update_metadata
in favour ofAsset::save
.
Dec 19, 2024
- Added model fields to
Asset
class. - Deprecated
Asset.asset_id
in favour ofAsset.id
. - Deprecated
up42::initialize_catalog
since allCatalog
andCatalogBase
methods are deprecated.
Dec 19, 2024
- Added coverage for
Asset::all
method. - Exported
AssetSorting
toup42
namespace. - Reduced test dependencies on
Asset
structure.
Dec 19, 2024
- Converted
Asset
to a data class withget
andall
methods. - Fix authenticated download in
Catalog::download_quicklooks
. - Deprecated
Storage::get_assets
in favour ofAsset::all
. - Deprecated
up42::initialize_asset
in favour ofAsset::get
. - Deprecated
up42::initialize_storage
.
Dec 19, 2024
- Enabled access to authenticated image files via extraction session to a parameter.
Dec 18, 2024
- Generalized downloadable images to
ImageFile
inutils
module. - Added
quicklook
property toScene
class. - Deprecated
Catalog::download_quicklooks
in favour ofProvider::search
. - Simplified
Catalog::download_quicklooks
to useImageFile
class internally.
Dec 18, 2024
- Added
is_host
property toProvider
class. - Added
search
method toProvider
class. - Deprecated
Catalog::construct_search_parameters
in favour ofProvider::search
. - Deprecated
Catalog::search
in favour ofProvider::search
. - Simplified
CatalogBase::estimate_order
to a static method. - Simplified
CatalogBase::place_order
to a class method.
Dec 18, 2024
- Added
schema
property toDataProduct
class. - Modified deprecation of
CatalogBase::get_data_product_schema
in favour ofDataProduct.schema
.
Dec 18, 2024
- Added
Quotation
active record totasking
module. - Exported
Quotation
andQuotationSorting
toup42
namespace. - Deprecated
Tasking::get_quotations
in favour ofQuotation::all
. - Deprecated
Tasking::decide_quotation
in favour ofQuotation
class methods.
Dec 18, 2024
- Added
order_template
module withBatchOrderTemplate
and supporting classes. - Deprecated
Tasking.construct_order_parameters
in favour ofBatchOrderTemplate
. - Deprecated
Catalog.construct_order_parameters
in favour ofBatchOrderTemplate
. - Deprecated
CatalogBase::estimate_order
in favour ofBatchOrderTemplate.estimate
. - Deprecated
CatalogBase::place_order
in favour ofBatchOrderTemplate::place
. - Deprecated
Order::estimate
in favour ofBatchOrderTemplate.estimate
. - Deprecated
Order::place
in favour ofBatchOrderTemplate::place
. - Deprecated
CatalogBase::get_data_product_schema
.
Dec 17, 2024
- Deprecated
up42::initiliaze_order
in favour ofOrder::get
. - Add missing properties to
Order
data class and auxiliary classes. - Deprecated
Order.order_id
in favour ofOrder.id
. - Deprecated
Order.order_details
in favour ofOrder.details
.
Dec 17, 2024
- Modified
Storage::get_orders
testing to eliminate dependency on order data.
Dec 17, 2024
- Introduced
Order::all
method to filter and list orders. - Deprecated
Storage::get_orders
method.
Dec 17, 2024
- Fixed
Order::place
method to retrieve order info via additional call and not from response. - Modified
up42::initialize_order
testing to eliminate dependency on order data. - Modified
CatalogBase::place_order
testing to eliminate dependency on order data.
Dec 17, 2024
- Converted
Order
to dataclass. - Dropped eager loading of
Order::info
. - Added
Order::get
class method as part of conversion to active record pattern. - Extended
Order::order_details
to cover archive orders as well. - Dropped
Order::__repr__
in favour of native dataclass implementation. - Added
Order::track
method and deprecatedOrder::track_status
method.
Dec 10, 2024
- Restore accepting string instead of enum in
Storage::get_orders
. - Improve coverage for
Tasking::decide_quotation
. - Improve coverage for
Tasking::get_feasibility
. - Improve coverage for
Tasking::choose_feasibility
. - Updating endpoint for
base::get_credits_balance
. - Switched workspace id retrieval from the deprecated endpoint to the user info endpoint.
- Added requesting
openid
scope when retrieving token. - Move
tests/fixtures/fixtures_globals.py
totests/constants.py
. - Move
collection_credentials
fromauth.py
toclient.py
. - Switched to base descriptors in
Storage
class and drop the dependencies fromauth.py
module.
- Fixed bug with passing enum entries instead of values in
Storage::get_orders
. - Fixed
Catalog::construct_search_parameters
limit
description in the documentation. - Fixed paging bug for case of empty response.
- Fixed confusing name for type
FeasibilityDecision
toFeasibilityStatus
. - Fixed test coverage for
Tasking::get_quotations
. - Fixed test coverage for
Tasking::construct_order_parameters
. - Fixed types of
Asset::asset_id
andAsset::_get_info
. - Unified paging between
Order
,Tasking
andStorage
classes.
- Drop process template
DetectionTreesHeightsSpacept
. - Dropped limiting false statuses in
Storage::get_orders
since the type hinting is enabled. - Dropped failing wrong
sortby
value inStorage::get_orders
since the type hinting is enabled. - Dropped
Tasking::auth
property. - Dropped legacy
auth.py
. - Dropped legacy fixtures for storage test coverage.
- Dropped
asset_searcher.py
module. - Dropped unused
Auth::request
and the corresponding test coverage. - Dropped unneeded
Storage::__repr__
. - Dissolve
auth.Auth
in_Workspace::authenticate
.
Dec 4, 2024
- Move
tests/fixtures/fixtures_globals.py
totests/constants.py
. - Move constants used in a single test module to the corresponding module.
Dec 3, 2024
- Drop process template
DetectionTreesHeightsSpacept
.
Dec 2, 2024
- Added requesting
openid
scope when retrieving token. - Switched workspace id retrieval from the deprecated endpoint to the user info endpoint.
Dec 2, 2024
- Remove duplication of workspace mocking in tests.
- Remove duplication of setting raising session in tests.
- Move
collection_credentials
fromauth.py
toclient.py
. - Dissolve
auth.Auth
in_Workspace::authenticate
. - Drop legacy
auth.py
.
Nov 29, 2024
- Restore accepting string instead of enum in
Storage::get_orders
.
Nov 28, 2024
- Dropped legacy fixtures for storage test coverage.
- Unified paging between
Order
,Tasking
andStorage
classes. - Fixed paging bug for case of empty response.
- Dropped
asset_searcher.py
module. - Switched to base descriptors in
Storage
class and drop the dependencies fromauth.py
module. - Dropped unused
Auth::request
and the corresponding test coverage. - Dropped unneeded
Storage::__repr__
. - Dropped limiting false statuses in
Storage::get_orders
since the type hinting is enabled. - Fixed bug with passing enum entries instead of values in
Storage::get_orders
. - Dropped failing wrong
sortby
value inStorage::get_orders
since the type hinting is enabled.
Nov 28, 2024
- Drop legacy fixtures for order testing.
- Delete unused mocking data.
- Fix confusing name for type
FeasibilityDecision
toFeasibilityStatus
.
Nov 27, 2024
- Drop
Tasking::auth
property. - Improve coverage for
Tasking::decide_quotation
. - Improve coverage for
Tasking::get_feasibility
. - Improve coverage for
Tasking::choose_feasibility
. - Drop legacy test fixtures.
Nov 25, 2024
- Fix test coverage for
Tasking::get_quotations
.
Nov 18, 2024
- Updating endpoint for
base::get_credits_balance
.
Oct 29, 2024
- Fix
Catalog::construct_search_parameters
limit
description in the documentation.
Oct 28, 2024
- Fix test coverage for
Tasking::construct_order_parameters
.
Oct 28, 2024
- Fix types of
Asset::asset_id
andAsset::_get_info
.
Oct 9, 2024
- Moving
estimate_order
method toCatalogBase
class. Order.get_assets
now allows to get assets from orders inBEING_FULFILLED
state.
- Fix test coverage for
Catalog
,Order
, andAsset
classes.
- Switch to
workspace_id
descriptor inCatalogBase
. - Switch
Asset
andOrder
classes to usesession
descriptor. - Remove
utils::autocomplete_order_parameters
and inline toCatalog::construct_order_parameters
andTasking::construct_order_parameters
. - Make
CatalogBase::type
mandatory. - Drop
CatalogBase::auth
and introduceTasking::auth
for backwards compatibility. - Drop
Tasking::__repr__
. - Switch
OrderParamsV2
as output type for_translate_construct_parameters
in order module. - Switch
OrderParams
as input type forCatalogBase::place
andCatalog::estimate
fromOptional[dict]
. - Changed
Order::status
type fromstr
toLiteral
. - Changed
Order::track_status
report_time input type to float.
Oct 8, 2024
- Make
CatalogBase::type
mandatory. - Drop
CatalogBase::auth
and introduceTasking::auth
for backwards compatibility. - Switch to
workspace_id
descriptor inCatalogBase
. - Drop
Tasking::__repr__
.
Oct 8, 2024
- Moving
estimate_order
method toCatalogBase
class.
Oct 8, 2024
- Fix test coverage for
Catalog::download_quicklooks
.
Oct 7, 2024
- Fix test coverage for
Catalog::construct_order_parameters
.
Sep 26, 2024
- Fix test coverage for
Catalog::search
.
Sep 25, 2024
- Fix test coverage for
Catalog::construct_search_parameters
.
Sep 25, 2024
- Fix test coverage for
CatalogBase
class.
Sep 20, 2024
- Remove
utils::autocomplete_order_parameters
and inline toCatalog::construct_order_parameters
andTasking::construct_order_parameters
.
Sep 11, 2024
Order.get_assets
now allows to get assets from orders inBEING_FULFILLED
state.- Switch
Order
class to usesession
descriptor. - Set
OrderParams
as input type forCatalogBase::place
andCatalog::estimate
fromOptional[dict]
. - Added
OrderParamsV2
as output type for_translate_construct_parameters
in order module. - Changed
Order::status
type fromstr
toLiteral
.
Sep 10, 2024
- Switch
Asset
class to usesession
descriptor. - Improve test coverage
Asset
class.
Sep 2, 2024
- Fix test coverage for
Order::estimate
,Order::place
, andOrder::track_status
methods. - Change
Order::track_status
report_time input type to float.
Aug 30, 2024
- Improve test coverage
Order
class.
Aug 15, 2024
- Switch
ProductGlossary::IntegrationValue
fromEnum
toLiteral
. - Fixed
FEASIBILITY_STUDY_MAY_BE_REQUIRED
value in theglossary.IntegrationValue
Literal.
Aug 15, 2024
- Fixed
FEASIBILITY_STUDY_MAY_BE_REQUIRED
in theglossary.IntegrationValue
Literal.
Aug 13, 2024
- Extract
IntegrationValue
type alias.
Aug 13, 2024
- Switch
ProductGlossary::IntegrationValue
fromEnum
toLiteral
.
Aug 8, 2024
- Breaking: Switch to the new product glossary V2 endpoint in
ProductGlossary::get_collections
. - Breaking: Updated
Collection
class incatalog.py
to match newProductGlossary
endpoints. - Moved
ProductGlossary
and its dependencies toglossary.py
. - Published
CollectionType
in the global namespace.
The following deprecated code was dropped (Breaking):
-
Functions in
up42
global namespaceinitialize_webhook
get_webhooks
create_webhook
get_webhook_events
in
CatalogBase
class- keyword arguments in
place_order
method - used to pass argumentsscene
andgeometry
in
Catalog
class- keyword arguments in
estimate_order
method - used to pass argumentsscene
andgeometry
sortby
andascending
arguments inconstruct_search_parameters
methodacquired_after
,acquired_before
,geometry
andcustom_filter
arguments inget_assets
method inWebhook
classinfo
andwebhook_id
propertiesupdate
andcreate
methodsreturn_json
argument inall
method.
-
Dropped
ProductGlossary
classesProducer
andHost
incatalog.py
. -
Dropped
processing_templates.AugmentationSpacept
.
Aug 7, 2024
- Moved
ProductGlossary
and its dependencies toglossary.py
. - Published
CollectionType
in the global namespace.
Aug 6, 2024 The following deprecated code was dropped:
- Functions in
up42
global namespaceinitialize_webhook
get_webhooks
create_webhook
get_webhook_events
- in
CatalogBase
class- keyword arguments in
place_order
method - used to pass argumentsscene
andgeometry
- keyword arguments in
- in
Catalog
class- keyword arguments in
estimate_order
method - used to pass argumentsscene
andgeometry
sortby
andascending
arguments inconstruct_search_parameters
methodacquired_after
,acquired_before
,geometry
andcustom_filter
arguments inget_assets
method
- keyword arguments in
- in
Webhook
classinfo
andwebhook_id
propertiesupdate
andcreate
methodsreturn_json
argument inall
method.
Aug 06, 2024
- Switch to the new product glossary V2 endpoint in
ProductGlossaty::get_collections
. - Updated
Collection
class incatalog.py
to match newProductGlossary
endpoints. - Dropped
ProductGlossary
classesProducer
andHost
incatalog.py
.
Jul 31, 2024
- Dropped
processing_templates.AugmentationSpacept
.
Jul 31, 2024
- Dropped
ProductGlossary::get_data_products
and switched toProductGlossary::get_collections
in dependencies.
Jul 31, 2024
- Added EULA acceptance check to processing job templates.
- Added EULA related statuses to processing jobs.
- Added various failure statuses to job tracking stop list.
- Added
session
descriptor toCatalogBase
. - Deprecated
get_data_products
method inCatalogBase
class. - Extract
CollectionType
type alias. - Extract
ProductGlossary
incatalog.py
. - Provide type hints for
ProductGlossary
methods. - Switch to new token endpoint in
auth.py
andoauth.py
.
- Fix type hint for
get_webhook_events
.
- Drop unused
return_text
parameter inAuth::request
. - Improve test coverage for
Catalog::search
. - Improve
Catalog::download_quicklooks
code. - Improve test coverage for
Catalog::download_quicklooks
type alias. - Reduce the usage
auth::request
inbase.py
. - Simplify the usage of
get_data_products
inCatalogBase
. - Simplify pagination in
Catalog::search
code. - Use token duration information from token data instead of static configuration.
- Use expiry offset to refresh token 30s earlier.
- Bumped dependencies
certifi
from 2024.2.2 to 2024.7.4. - Bumped dependencies
setuptools
from 69.1.1 to 70.0.0. - Bumped dependencies
urllib
from 2.2.1 to 2.2.2. - Bumped dependencies
zipp
from 3.17.0 to 3.19.1.
Jul 30, 2024
- Added EULA acceptance check to processing job templates.
- Added various failure statuses to job tracking stop list.
- Added EULA related statuses to processing jobs.
Jul 29, 2024
- Deprecated
get_data_products
method inCatalogBase
class.
Jul 17, 2024
- Bumped dependencies
zipp
from 3.17.0 to 3.19.1.
Jul 17, 2024
- Bumped dependencies
setuptools
from 69.1.1 to 70.0.0.
Jul 16, 2024
- Simplify pagination in
Catalog::search
code. - Improve test coverage for
Catalog::search
.
Jul 15, 2024
- Improve
Catalog::download_quicklooks
code. - Improve test coverage for
Catalog::download_quicklooks
type alias. - Drop unused
return_text
parameter inAuth::request
. - Add
session
descriptor toCatalogBase
.
Jul 15, 2024
- Extract
CollectionType
type alias.
Jul 15, 2024
- Extract
ProductGlossary
incatalog.py
. - Provide type hints for
ProductGlossary
methods. - Simplify the usage of
get_data_products
inCatalogBase
. - Fix type hint for
get_webhook_events
. - Reduce the usage
auth::request
inbase.py
.
Jul 8, 2024
- Bumped dependencies
certifi
from 2024.2.2 to 2024.7.4.
Jul 8, 2024
- Bumped dependencies
urllib
from 2.2.1 to 2.2.2.
Jun 27, 2024
- Switch to new token endpoint in
auth.py
andoauth.py
. - Use token duration information from token data instead of static configuration.
- Use expiry offset to refresh token 30s earlier.
Jun 25, 2024
Job
,JobSorting
andJobStatus
classes now available inup42
namespace.- Change default created and credits ordering as descending.
- Change default status ordering to descending.
- Rename
templates.py
toprocessing_templates.py
.
- Fix multiple process id value query parameter to use concatenation with commas.
- Fix multiple status value query parameter to use concatenation with commas.
- Fix processing job tracking to wait until credits are captured or released.
- Fix missing process ids for processing templates.
- Trim off milliseconds in job metadata timestamps to avoid rounding errors.
- Trim nanoseconds in job metadata timestamps since not supported by native Python datetime.
- Update processing template names.
- Add missing
workspace_id
query param to job execution. - Convert relative paths in processing job page links to absolute ones.
Jun 20, 2024
- Trim off milliseconds in job metadata timestamps to avoid rounding errors.
- Fix multiple process id value query parameter to use concatenation with commas.
- Change default created and credits ordering as descending.
Jun 20, 2024
- Trim nanoseconds in job metadata timestamps since not supported by native Python datetime.
- Fix processing job tracking to wait until credits are captured or released.
- Fix multiple status value query parameter to use concatenation with commas.
- Change default status ordering to descending.
Jun 20, 2024
- Update processing template names.
Jun 19, 2024
- Add missing workspace id query param to job execution.
Jun 19, 2024
- Export
JobStatus
inup42
namespace.
Jun 18, 2024
- Convert relative paths in processing job page links to absolute ones.
Jun 18, 2024
- Export
Job
andJobSorting
inup42
namespace. - Fix missing process ids for processing templates.
- Rename
templates.py
toprocessing_templates.py
.
Jun 17, 2024
- Introduced the
Job
class for interacting with processing jobs. - Implemented job querying capabilities (processing.py).
- Added a collection attribute to the
Job
class. - Introduced processing job tracking.
- Created basic single and multi-item processing job templates in templates.py.
- Enabled job template execution (templates.py).
- Added specialized templates for
SpaceptAugmentation
,NSUpsamling
, andPansharpening
. - Added cost evaluation to the JobTemplate class (number comparison).
- Implemented
SingleItemJobTemplate
andMultiItemJobTemplate
helper classes.
- Renamed the
main
module tobase
for clarity. - Added descriptors:
Session
,WorkspaceId
, andStacClient
tobase
module for improved access within classes.
- Refactored webhooks as active records.
- Consolidated webhook code into a dedicated module/class.
- Enhanced test coverage for webhooks.
- Deprecated legacy webhook code.
- Updated requests to 2.32.0.
- Relaxed geopandas version constraint to < 1.
- Upgraded tornado to 6.4.1.
- Enabled deep copy in Up42Auth for compatibility.
- Fix
tenacity not Found
Error by upgradingtenacity
dependency. - Removed deprecated Catalog::construct_parameters method.
Jun 17, 2024
- Support deep copy in
Up42Auth
to be compliant with pystac client. - Align processing job query parameter names.
Jun 17, 2024
- Added processing job tracking.
- Upgrade tenacity.
Jun 13, 2024
- Added errors and credits retrieval to processing jobs.
Jun 13, 2024
- Deprecate legacy webhook code.
- Drop long deprecated
Catalog::construct_parameters
.
Jun 13, 2024
- Added
collection
to job class in processing module. - Added
StacClient
descriptor to base module.
Jun 11, 2024
- Added job querying to
processing.py
Jun 11, 2024
- Added job template execution to
templates.py
Jun 10, 2024
- Added class
Job
toprocessing
module to access processing job features.
June 10, 2024
- Allow dependency
geopandas
from 0.13.2 to any version less than1
.
Jun 10, 2024
- Bumped dependencies
tornado
from 6.4 to 6.4.1.
Jun 10, 2024
- Added job templates for
SpaceptAugmentation
,NSUpsamling
,Pansharpening
totemplates.py
Jun 7, 2024
- Added simple single and multi item processing job templates to
templates.py
Jun 7, 2024
- Added cost evaluation to
JobTemplate
class with number comparison support.
Jun 6, 2024
- Added module
processing.py
with baseJobTemplate
class with post-construct inputs validation. - Added helper
SingleItemJobTemplate
andMultiItemJobTemplate
classes as bases for future specific processing templates.
May 30, 2024
- Moved instance methods of
Webhooks
class to class methods ofWebhook
class and dropped the former.
May 30, 2024
- Remodeled webhook as active record.
May 30, 2024
- Move webhooks related code from
base.py
May 29, 2024
- Delegated webhook repr to its info
- Improved test coverage for webhooks
- Dropped unneeded shared and global fixtures for webhook tests
May 27, 2024
- Added
Session
andWorkspaceId
descriptors to provide access to session and workspace_id from other classes. - Renaming
main
module tobase
.
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.
May 24, 2024
- Bumped dependencies
requests
from 2.31.0 to 2.32.0.
May 23, 2024
- Added tenacity as dependency.
- Added resilience on
asset::stac_info
andasset::stac_items
- Dropped pystac client subclassing
- Cleaned up fixtures
- Improved test coverage
- Dropped unneeded exposure of token
May 23, 2024
- Added tenacity as dependency.
- Added resilience on
asset::stac_info
andasset::stac_items
- Dropped pystac client subclassing
- Cleaned up fixtures
- Improved test coverage
- Dropped unneeded exposure of token
May 15, 2024
- Added thread safety to token retrieval.
May 15, 2024
- Added thread safety to token retrieval.
May 13, 2024
- Increased retries and backoff in http resilience.
- Fixed bug with temporary storage overfill when downloading archives.
- Bumped dependencies jinja2, tqdm, geojson.
May 13, 2024
- geojson dependency bumped from 3.0.1 to 3.1.0 to fix conda python 3.12 installer.
May 7, 2024
- Setting http_adapter default configuration to
retries = 5
andbackoff factor = 1
May 7, 2024
- Renamed
download_from_gcs_unpack
todownload_archive
- Renamed
download_gcs_not_unpack
todownload_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
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.
Apr 17, 2024
- Dropped deprecated functionalities: Jobs, Projects, Workflows, Viztools
- Dropped deprecated code related to blocks
Apr 16, 2024
- Dropped
get_blocks
,get_block_details
andget_block_coverage
frommain.py
Apr 16, 2024
- Dropped project id and api key based authentication in
main.py
,auth.py
,http/oauth.py
andhttp/client.py
- Adapted tests and fixtures
- Dropped viztools.py
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
Apr 15, 2024
- Dropped deprecated Jobtask functions - info, get_results_json, download_results, download_quicklooks
- Dropped Jobtask tests and fixtures
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
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
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)
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
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
, andProjects
related features. - Multiple refactoring improvements.
Apr 4, 2024
- Added standard headers to
http/session.py
- Added session provisioning to
auth.py
andhttp/client.py
- Dropped undocumented
authenticate
flag inauth.py
- Dropped undocumented kwargs in
auth.py
andmain.py
Apr 3, 2024
- Updating the deprecation date for
Jobs
,Workflow
, andProjects
related features.
Apr 2, 2024
- Dropped legacy
estimation.py
,test_estimation.py
andfixtures_estimation.py
March 28, 2024
- Dependency injection and test coverage improvement in
auth.py
March 27, 2024
- Raise typed error if token retrieval fails due to wrong credentials.
March 26, 2024
- Switched to using
http.client.Client
inauth.py
for authentication and token management - Dropped unneeded resiliency code
- Dropped tenacity, requests-oauthlib and types-oauthlib as unneeded dependencies
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
March 21, 2024
- New http stack client to provide resilient token and requests compliant authentication.
March 20, 2024
- Detection of token retriever based on supplied settings.
March 19, 2024
- Detection of credentials settings based on supplied credentials.
March 19, 2024
- Dropped all the live tests.
March 15, 2024
- Fixed inadvertent title and tags removals during asset metadata updates.
- Dropped unneeded
auth::env
property 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.
March 15, 2024
- Fixed inadvertent titles and tags removals during asset metadata updates.
March 15, 2024
- Dropped unneeded
auth::env
property and the corresponding tests.
March 14, 2024
- Adjusted
initialization.py
,test_initialization.py
,main.py
andtest_main.py
in accordance with Pylint checks.
March 14, 2024
- Adjusted
asset.py
,asset_searcher.py
,test_asset.py
andfixtures_asset.py
in accordance with Pylint checks. - Adjusted
test_http_adapter.py
in accordance with Pylint checks. - Dropped
test_e2e_catalog.py
since it is covered by SDK tests. - Fixed a flaky test in
test_session.py
March 13, 2024
- Adjusted
webhooks.py
,test_webhooks.py
andfixtures_webhook.py
in accordance with Pylint checks. - Dropped
test_e2e_30sec.py
since it covers functionality dropped earlier.
March 13, 2024
- Adjusted
macros.py
,utils.py
, andtest_utils.py
in accordance with Pylint checks.
March 13, 2024
- Adjusted
estimation.py
,test_estimation.py
andfixtures_estimation.py
in accordance with Pylint checks.
March 13, 2024
- Adjusted
order.py
,test_order.py
andfixtures_order.py
in accordance with Pylint checks.
March 13, 2024
- Adjusted
host.py
,tools.py
,test_tools.py
,storage.py
,test_storage.py
andfixtures_storage.py
in accordance with Pylint checks.
March 11, 2024
- Adjusted
auth.py
andoauth.py
with their coverage and fixtures in accordance with Pylint checks. - Adjusted
conftest.py
in accordance with Pylint checks.
March 07, 2024
- Generalized new authentication stack to cover account authentication case.
March 07, 2024
- Adjusted
tasking.py
,test_tasking.py
, andfixtures_tasking.py
in accordance with Pylint checks.
March 06, 2024
- Adjusted
catalog.py
andtest_catalog.py
in accordance with Pylint checks. - Conducted minor refactoring in other classes due to changes in function names within the authentication module.
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.
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.
February 20, 2024
- Updated the
place_order()
andestimate_order()
functions of the CatalogBase class to the latest version of the API.
January 25, 2024
-
Discontinued support for the following edit and create functions:
-
up42:
validate_manifest()
-
Project:
max_concurrent_jobs
update_project_settings()
create_workflow()
-
Workflow:
max_concurrent_jobs
update_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.
-
December 15, 2023
- Restored the
order.get_assets
function.
December 13, 2023
- Updated the
storage.get_orders
function to the latest version of the API. - Set Poetry as the only dependency manager.
- Discontinued support for the
order.get_assets
function.
November 23, 2023
Marked the following parameters of storage.get_assets
as deprecated to enforce the use of the PySTAC client search.
geometry
acquired_before
acquired_after
custom_filter
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_url
generates a signed URL that allows to download a STAC asset from storage without authentication.
September 7, 2023
A new function added to the Asset class:
download_stac_asset
allows you to download STAC assets from storage.
August 9, 2023
- Supported STAC assets in
asset.stac_items
. - Added substatuses to
order.track_status
. - Limited
catalog.search(sort_by)
toacquisition_date
only. - Removed
get_credits_history
from the main class. asset.stac_info
now returns thepystac.Collection
object.- Python 3.7 is no longer supported.
July 14, 2023
Fixed the failing construct_order_parameters function and updated tests.
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.
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.
April 6, 2023
- Updating test to latest version
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.
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 (
created
tocreatedAt
) to UP42 API.
December 12, 2022
- Add
asset.update_metadata()
for adjusting title & tags of an asset. storage.get_assets()
has new parameterscreated_after
,created_before
,workspace_id
to 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.
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
assets
parameter (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.
- Deprecates the
tasking.construct_order_parameters
now accepts a Point feature (e.g. use with Blacksky).- Fix:
get_data_products
withbasic=False
now correctly returns only tasking OR catalog products. - The up42 object now correctly does not give access to third party imports anymore (restructured init module).
October 25, 2022
- Add dedicated tasking class for improved handling of satellite tasking orders.
construct_order_parameters
now also adds the parameters specific to the selected data-product, and suggests possible values based on the data-product schema.
October 20, 2022
- Add
catalog.get_data_product_schema()
for details on the order parameters - Switches parameter
sensor
tocollection
incatalog.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.
October 5, 2022
- Fixes issue with filename of downloaded assets containing two suffix
.
e.g../output..zip
. Resolves #350
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_parameters
argument forcatalog.estimate_order
andcatalog.place_order
now 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_parameters
replacescatalog.construct_parameters
which is deprecated and will be removed in v0.25.0
July 21, 2022
- Fix unpacking of order assets if no output topfolder inherent in archive
July 19, 2022
- Fix conda release (include requirements-viz file)
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.metadata
property, 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
May 12, 2022
- Adding
up42.get_balance
andup42.get_credits_history
features for allowing account information retrieval. - Adding
up42.get_block_coverage
features for retrieval of the catalog blocks' coverage as GeoJSON. project.get_jobs
now 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_jobs
now correctly queries the full number of jobs.
April 10, 2022
- Update documentation
- Non functional changes to enable conda release
- Update requirements and removing overlapping subdependencies
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.
February 15, 2022
- Enables getting credits consumed by a job via
job.get_credits
.
January 28, 2022
- Add support for UP42 data collections via
catalog.get_collections
. - Switch
catalog.construct_parameters
to usecollection
instead ofsensor
for the collection selection. - Refactor retry mechanism. Resolves issue of unintended token renewals & further limits retries.
December 20, 2021
- Allow installation with Python 3.9
November 10, 2021
- Add sorting criteria, sorting order and results limit parameters to
storage.get_orders
andstorage.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_orders
calls.workflow.create_workflow
when 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_parameters
Instead, 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.
September 10, 2021
- Adds
usage_type
parameter 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_blocks
with an empty workflow now returns all data blocks. - Start deprecation for
handle_multiple_features
parameter inconstruct_parameters
to guarantee parity with UP42 platform. In the future, the UP42 SDK will only handle single geometries. - Uses Oauth for access token handling.
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)
April 7, 2021
- Enables plotting of jobcollection with
.map_results()
. - Fixes
.cancel_job()
functionality.
March 12, 2021
- Fixes breaking API change in catalog search.
- Catalog search result now contains a
sceneId
property instead ofscene_id
.
January 27, 2021
- Add
Storage
,Order
andAsset
objects. - Add possibility to create orders from
Catalog
withCatalog.place_order
. - Add possibility to use assets in job parameters with
Workflow.construct_paramaters
. - Update job estimation endpoint.
- Multiple documentation fixes.
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=False
parameter toworkflow.test_job
. - Add ship-identification example.
- Overhaul "Getting started" examples.
November 18, 2020
- Handle request rate limits via retry mechanism.
- Limit
map_quicklooks()
to 100 quicklooks. - Add aircraft detection example & documentation improvements.
October 30, 2020
- New consistent use & documentation of the basic functionality:
- All basic functions (e.g.
up42.get_blocks
) are accessible from theup42
import object. Now consistently documented in theup42
object 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.
October 14, 2020
- Simplify object representation, also simplifies logger messages.
- Add
.info
property to all objects to get the detailed object information, deprecation process for.get_info
. - Add
.status
property 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
August 13, 2020
- Fix: Remove buffer 0 for fixing invalid geometry.
- Add
.map_quicklooks
method for visualising quicklooks interactively. - Add an example notebook for mapping quicklooks using
.map_quicklooks
method.
August 13, 2020
- Hotfix: Fixes usage of multiple features as the input geometry.
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_parallel
and the newJobCollection
object. - Adjusts
workflow.get_jobs
andproject.get_jobs
to 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.
July 15, 2020
- Add support for secondary GeoJSON file to
job.map_results
July 4, 2020
- Fix inconsistency with
job.map_results
selecting the JSON instead of the image
June 25, 2020
- Fixes typo in catalog search parameters
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_jobs
and limitworkflow.get_jobs
to jobs in the workflow. - Fix download of all output files
- Job name selectabable in
workflow.test_job
andworkflow.run_job
(with added suffix _py) - Fix CRS issues in make
job.map_results
, make plotting functionalities more robust
April 30, 2020
- Pin geopandas to 0.7.0, package requires new CRS convention
April 24, 2020
- Removed
job.create_and_run_job
, now split intojob.test_job
andjob.run_job