All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
v0.3.2 - 2022-01-11
Client.search
accepts an optionalfilter_lang
argument forfilter
requests #128
- Values from
parameters
andheaders
arguments toClient.open
andClient.from_file
are now also used in requests made fromCollectionClient
instances fetched from the same API (#126) - The tests folder is no longer installed as a package.
v0.3.1 - 2021-11-17
- Update min PySTAC version to 1.2
- Default page size limit set to 100 rather than relying on the server default
- Fetch single collection directly from endpoint in API rather than iterating through children (Issue #114)[stac-utils#114]
- Adds
--block-network
option to all test commands to ensure no network requests are made during unit tests #119 parameters
argument toStacApiIO
,Client.open
, andClient.from_file
to allow query string parameters to be passed to all requests #118
Client.get_collections
raised an exception when API did not publish/collections
conformance class instead of falling back to using child links #120
v0.3.0 - 2021-09-28
- Jupyter Notebook tutorials
- Basic CQL-JSON filtering #100
- Improved performance when constructing
pystac.ItemCollection
objects. - Relax
requests
dependency #87 - Use regular expressions for checking conformance classes #97
- Reorganized documentation, updated all docs
ItemSearch
now correctly handles times without a timezone specifier #92- queries including
gsd
cast to string to float when using shortcut query syntax (i.e., "key=val" strings). #98 - Documentation lints #108
v0.2.0 - 2021-08-04
Client.open
falls back to theSTAC_URL
environment variable if no url is provided as an argument #48- New Search.get_pages() iterator function to retrieve pages as raw JSON, not as ItemCollections
StacApiIO
class added, subclass from PySTACStacIO
. AStacApiIO
instance is used for all IO for a Client instance, and all requests are in a single HTTP session, handle pagination and respects conformanceconformance.CONFORMANCE_CLASSES
dictionary added containing all STAC API Capabilities from stac-api-speccollections
subcommand to CLI, for saving all Collections in catalog as JSONClient.get_collections
overrides Catalog to use /collections endpoint if API conformsClient.get_collection(<collection_id>)
for getting specific collectionClient.get_items
andClient.get_all_items
override Catalog functions to use search endpoint instead of traversing catalog
- Update to use PySTAC 1.1.0
- IO changed to use PySTAC's new StacIO base class.
Search.item_collections()
renamed toSearch.get_item_collections()
Search.item_collections()
renamed toSearch.get_items()
- Conformance is checked by each individual function that requires a particular conformance
- STAC API testing URLs changed to updated APIs
ItemSearch.get_pages()
function moved to StacApiIO class for general use- Logging is now enabled in the CLI in all cases. If data are being printed to stdout, logging goes to stderr. #79
- Improved logging for GET requests (prints encoded URL)
- Running
stac-client
with no arguments no longer raises a confusing exception #52 Client.get_collections_list
#44- The regular expression used for datetime parsing #59
Client.from_file
now works as expected, usingClient.open
is not required, although it will fetch STAC_URL from an envvar
get_pages
andsimple_stac_resolver
functions frompystac_client.stac_io
(The new StacApiIO class understandsLink
objects)Client.search()
no longer accepts anext_resolver
argument- pystac.extensions modules, which were based on PySTAC's previous extension implementation, replaced in 1.0.0
stac_api_object.StacApiObjectMixin
, replaced with conformance checking inStacApiIO
- PySTAC Collection objects can no longer be passed in as
collections
arguments to theItemSearch
class (just pass ids) Catalog.get_collection_list
(was alias toget_child_links
) because made assumption about this being an API only. Also redundant withCatalog.get_collections
Search.item_collections()
Search.items()
- STAC_URL environment variable in Client.open(). url parameter in Client is now required
- STAC_URL environment variable in CLI. CLI now has a required positional argument for the URL
v0.1.1 - 2021-04-16
ItemSearch.items_as_collection
#37- Documentation published on ReadTheDocs #46
- Include headers in STAC_IO #38
- README updated to reflect actual CLI behavior
- CLI: pass in heades as list of KEY=VALUE pairs
v0.1.0 - 2021-04-14
Initial release.