diff --git a/.codespellignore b/.codespellignore index 35f2ebe7..ec2c5c6f 100644 --- a/.codespellignore +++ b/.codespellignore @@ -1 +1,2 @@ +alos ned diff --git a/docs/api.rst b/docs/api.rst index 58264daa..eb5ae3a1 100644 --- a/docs/api.rst +++ b/docs/api.rst @@ -8,7 +8,8 @@ Core The ``stactools.core`` package contains utility methods for dealing with STACs. -Functions are organized into subpackages but can be imported directly from ``stactools.core``, e.g.: +Functions are organized into subpackages but can be imported directly from +``stactools.core``, e.g.: .. code-block:: python diff --git a/docs/conf.py b/docs/conf.py index 081a3063..30fbdd74 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -15,15 +15,15 @@ import os import sys -sys.path.insert(0, os.path.abspath('.')) -sys.path.insert(0, os.path.abspath('..')) -from stactools.core import __version__ # noqa +sys.path.insert(0, os.path.abspath(".")) +sys.path.insert(0, os.path.abspath("..")) +from stactools.core import __version__ # noqa # -- Project information ----------------------------------------------------- -project = 'stactools' -copyright = '2020, stac-utils' -author = 'stac-utils' +project = "stactools" +copyright = "2020, stac-utils" +author = "stac-utils" # The short X.Y version version = __version__ @@ -40,22 +40,27 @@ # extensions coming with Sphinx (named 'sphinx.ext.*') or your custom # ones. extensions = [ - 'sphinx.ext.autodoc', 'sphinx.ext.viewcode', 'sphinx.ext.napoleon', - 'sphinx.ext.githubpages', 'sphinx.ext.extlinks', 'sphinxcontrib.fulltoc', - 'sphinx_click', 'nbsphinx' + "sphinx.ext.autodoc", + "sphinx.ext.viewcode", + "sphinx.ext.napoleon", + "sphinx.ext.githubpages", + "sphinx.ext.extlinks", + "sphinxcontrib.fulltoc", + "sphinx_click", + "nbsphinx", ] # Add any paths that contain templates here, relative to this directory. -templates_path = ['_templates'] +templates_path = ["_templates"] # The suffix(es) of source filenames. # You can specify multiple suffix as a list of string: # # source_suffix = ['.rst', '.md'] -source_suffix = '.rst' +source_suffix = ".rst" # The master toctree document. -master_doc = 'index' +master_doc = "index" # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. @@ -67,7 +72,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. # This pattern also affects html_static_path and html_extra_path. -exclude_patterns = ['_build', 'Thumbs.db', '.DS_Store', '**.ipynb_checkpoints'] +exclude_patterns = ["_build", "Thumbs.db", ".DS_Store", "**.ipynb_checkpoints"] # The name of the Pygments (syntax highlighting) style to use. pygments_style = None @@ -77,7 +82,7 @@ # The theme to use for HTML and HTML Help pages. See the documentation for # a list of builtin themes. # -html_theme = 'alabaster' +html_theme = "alabaster" # Theme options are theme-specific and customize the look and feel of a theme # further. For a list of options available for each theme, see the @@ -110,7 +115,7 @@ # -- Options for HTMLHelp output --------------------------------------------- # Output file base name for HTML help builder. -htmlhelp_basename = 'stactoolsdoc' +htmlhelp_basename = "stactoolsdoc" # -- Options for LaTeX output ------------------------------------------------ @@ -118,15 +123,12 @@ # The paper size ('letterpaper' or 'a4paper'). # # 'papersize': 'letterpaper', - # The font size ('10pt', '11pt' or '12pt'). # # 'pointsize': '10pt', - # Additional stuff for the LaTeX preamble. # # 'preamble': '', - # Latex figure (float) alignment # # 'figure_align': 'htbp', @@ -136,15 +138,14 @@ # (source start file, target name, title, # author, documentclass [howto, manual, or own class]). latex_documents = [ - (master_doc, 'stactools.tex', 'stactools Documentation', 'stac-utils', - 'manual'), + (master_doc, "stactools.tex", "stactools Documentation", "stac-utils", "manual"), ] # -- Options for manual page output ------------------------------------------ # One entry per manual page. List of tuples # (source start file, name, description, authors, manual section). -man_pages = [(master_doc, 'stactools', 'stactools Documentation', [author], 1)] +man_pages = [(master_doc, "stactools", "stactools Documentation", [author], 1)] # -- Options for Texinfo output ---------------------------------------------- @@ -152,9 +153,15 @@ # (source start file, target name, title, author, # dir menu entry, description, category) texinfo_documents = [ - (master_doc, 'stactools', 'stactools Documentation', author, 'stactools', - 'Command line utility and library for SpatioTemporal Asset Catalogs (STAC).', - 'Miscellaneous'), + ( + master_doc, + "stactools", + "stactools Documentation", + author, + "stactools", + "Command line utility and library for SpatioTemporal Asset Catalogs (STAC).", + "Miscellaneous", + ), ] # -- Options for Epub output ------------------------------------------------- @@ -172,6 +179,6 @@ # epub_uid = '' # A list of files that should not be packed into the epub file. -epub_exclude_files = ['search.html'] +epub_exclude_files = ["search.html"] # -- Extension configuration ------------------------------------------------- diff --git a/docs/index.rst b/docs/index.rst index 36a9cc2c..b7a46308 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -40,7 +40,8 @@ Use ``stac --help`` to navigate the varios commands. * ``stac info`` and ``stac describe`` display information about STACs * ``stac layout`` will modify the layout of a STAC based on item properties -One of the focuses of ``stactools`` is to provide an easy way to plug in functionality for different data sources. For example: +One of the focuses of ``stactools`` is to provide an easy way to plug in +functionality for different data sources. For example: * ``stac planet convert-order`` will convert a Planet order into a STAC. @@ -53,4 +54,4 @@ Table of Contents :maxdepth: 2 api - cli \ No newline at end of file + cli diff --git a/scripts/check_minimum_requirements b/scripts/check_minimum_requirements index e398936a..5464700b 100755 --- a/scripts/check_minimum_requirements +++ b/scripts/check_minimum_requirements @@ -3,30 +3,35 @@ import os.path import sys + from importlib_metadata import requires from packaging.requirements import Requirement package_requirements = [ Requirement(requirement) for requirement in requires("stactools") ] -requirements_min = os.path.join(os.path.dirname(os.path.dirname(__file__)), - "requirements-min.txt") +requirements_min = os.path.join( + os.path.dirname(os.path.dirname(__file__)), "requirements-min.txt" +) with open(requirements_min) as file: min_requirements = [Requirement(line) for line in file] min_requirements = dict( - (requirement.name, requirement) for requirement in min_requirements) + (requirement.name, requirement) for requirement in min_requirements +) incorrect_requirements = list() for package_requirement in package_requirements: if package_requirement.marker is not None: continue min_requirement = min_requirements[package_requirement.name] - for (package_specifier, - min_specifier) in zip(package_requirement.specifier, - min_requirement.specifier): - if package_specifier.operator == ">=" and package_specifier.version != min_specifier.version: - incorrect_requirements.append( - (package_requirement, min_requirement)) + for (package_specifier, min_specifier) in zip( + package_requirement.specifier, min_requirement.specifier + ): + if ( + package_specifier.operator == ">=" + and package_specifier.version != min_specifier.version + ): + incorrect_requirements.append((package_requirement, min_requirement)) if incorrect_requirements: print("ERROR: Incorrect min-requirements.txt!") diff --git a/scripts/rewrite_test_data.py b/scripts/rewrite_test_data.py index d0a5efd1..90baa5f4 100755 --- a/scripts/rewrite_test_data.py +++ b/scripts/rewrite_test_data.py @@ -38,7 +38,8 @@ def remap_property(item: Item, before: str, after: str) -> None: for j, datetime in enumerate(interval): if datetime: collection.extent.temporal.intervals[i][ - j] = datetime.astimezone(UTC) + j + ] = datetime.astimezone(UTC) if object.STAC_OBJECT_TYPE == "Feature": item = cast(Item, object) @@ -51,17 +52,15 @@ def remap_property(item: Item, before: str, after: str) -> None: remap_property(item, "eo:sun_azimuth", "view:sun_azimuth") remap_property(item, "eo:sun_elevation", "view:sun_elevation") - if item.collection_id is None and item.get_single_link( - "collection"): + if item.collection_id is None and item.get_single_link("collection"): item.collection_id = collection_id for key, asset in item.assets.items(): bands = asset.extra_fields.pop("eo:bands", None) if bands: - item.assets[key].extra_fields["eo:bands"] = [{ - "name": - str(band) - } for band in bands] + item.assets[key].extra_fields["eo:bands"] = [ + {"name": str(band)} for band in bands + ] if file_name not in invalid_file_names: try: diff --git a/src/stactools/cli/__init__.py b/src/stactools/cli/__init__.py index 7d18cc46..8c13ba45 100644 --- a/src/stactools/cli/__init__.py +++ b/src/stactools/cli/__init__.py @@ -18,8 +18,8 @@ def register_plugin(registry: "Registry") -> None: lint, merge, migrate, - version, validate, + version, ) registry.register_subcommand(add.create_add_command) diff --git a/src/stactools/cli/cli.py b/src/stactools/cli/cli.py index 11928772..0f4a7a19 100644 --- a/src/stactools/cli/cli.py +++ b/src/stactools/cli/cli.py @@ -1,7 +1,8 @@ import logging +from typing import Union + import click -from typing import Union from stactools.cli import registry diff --git a/src/stactools/cli/commands/add.py b/src/stactools/cli/commands/add.py index 05deb4ca..967baa39 100644 --- a/src/stactools/cli/commands/add.py +++ b/src/stactools/cli/commands/add.py @@ -1,7 +1,6 @@ -import click - from typing import Optional +import click from pystac import Catalog, Item, read_file from stactools.core import add_item diff --git a/src/stactools/cli/commands/addraster.py b/src/stactools/cli/commands/addraster.py index 36eb2979..327fad11 100644 --- a/src/stactools/cli/commands/addraster.py +++ b/src/stactools/cli/commands/addraster.py @@ -1,5 +1,6 @@ import click import pystac + from stactools.core import add_raster_to_item diff --git a/src/stactools/cli/commands/copy.py b/src/stactools/cli/commands/copy.py index e5d0d271..111ed767 100644 --- a/src/stactools/cli/commands/copy.py +++ b/src/stactools/cli/commands/copy.py @@ -1,8 +1,9 @@ +from typing import Optional + import click import pystac - -from typing import Optional from pystac.utils import make_absolute_href + from stactools.core.copy import copy_catalog, move_all_assets diff --git a/src/stactools/cli/commands/lint.py b/src/stactools/cli/commands/lint.py index a68e666f..3a01c167 100644 --- a/src/stactools/cli/commands/lint.py +++ b/src/stactools/cli/commands/lint.py @@ -1,5 +1,6 @@ -import click import sys + +import click from stac_check.lint import Linter # type: ignore diff --git a/src/stactools/cli/commands/merge.py b/src/stactools/cli/commands/merge.py index 926380d8..b837b1a6 100644 --- a/src/stactools/cli/commands/merge.py +++ b/src/stactools/cli/commands/merge.py @@ -1,7 +1,8 @@ +from typing import Optional + import click import pystac -from typing import Optional from stactools.core import merge_all_items diff --git a/src/stactools/cli/commands/validate.py b/src/stactools/cli/commands/validate.py index e96d7c87..6e5ca710 100644 --- a/src/stactools/cli/commands/validate.py +++ b/src/stactools/cli/commands/validate.py @@ -1,10 +1,10 @@ import sys -from typing import Optional, List +from typing import List, Optional import click import pystac - from pystac import Catalog, Collection, Item, STACObject, STACValidationError + from stactools.core.utils import href_exists diff --git a/src/stactools/cli/commands/version.py b/src/stactools/cli/commands/version.py index f91400d1..cf3866d6 100644 --- a/src/stactools/cli/commands/version.py +++ b/src/stactools/cli/commands/version.py @@ -1,10 +1,9 @@ -from click import echo - import pystac +from click import echo +from click.core import Command, Group from pystac.version import get_stac_version from stactools.core import __version__ -from click.core import Command, Group def create_version_command(cli: Group) -> Command: diff --git a/src/stactools/cli/registry.py b/src/stactools/cli/registry.py index 886c7ec5..c0a1bbdf 100644 --- a/src/stactools/cli/registry.py +++ b/src/stactools/cli/registry.py @@ -1,6 +1,7 @@ from pkgutil import ModuleInfo from types import ModuleType from typing import Callable, Iterator, List + from click import Command, Group @@ -25,6 +26,7 @@ def load_plugins(self) -> None: """ import importlib import pkgutil + import stactools # From https://packaging.python.org/guides/creating-and-discovering-plugins/#using-namespace-packages # noqa diff --git a/src/stactools/core/__init__.py b/src/stactools/core/__init__.py index 75852b70..32b02f77 100644 --- a/src/stactools/core/__init__.py +++ b/src/stactools/core/__init__.py @@ -1,16 +1,16 @@ # flake8: noqa -from stactools.core.io import use_fsspec +from stactools.core.add import add_item +from stactools.core.addraster import add_raster_to_item from stactools.core.copy import ( + copy_catalog, + move_all_assets, move_asset_file_to_item, move_assets, - move_all_assets, - copy_catalog, ) +from stactools.core.io import use_fsspec from stactools.core.layout import layout_catalog -from stactools.core.merge import merge_items, merge_all_items -from stactools.core.add import add_item -from stactools.core.addraster import add_raster_to_item +from stactools.core.merge import merge_all_items, merge_items __all__ = [ "add_item", diff --git a/src/stactools/core/add.py b/src/stactools/core/add.py index ca64dc15..23b8c635 100644 --- a/src/stactools/core/add.py +++ b/src/stactools/core/add.py @@ -1,6 +1,6 @@ import os -from pystac import Catalog, Item, Collection +from pystac import Catalog, Collection, Item from pystac.layout import BestPracticesLayoutStrategy from stactools.core.copy import move_assets as do_move_assets diff --git a/src/stactools/core/addraster.py b/src/stactools/core/addraster.py index 3515328b..b55e1e08 100644 --- a/src/stactools/core/addraster.py +++ b/src/stactools/core/addraster.py @@ -2,8 +2,8 @@ from typing import List import numpy +import rasterio from pystac import Item -from pystac.utils import make_absolute_href from pystac.extensions.raster import ( DataType, Histogram, @@ -11,7 +11,7 @@ RasterExtension, Statistics, ) -import rasterio +from pystac.utils import make_absolute_href logger = logging.getLogger(__name__) diff --git a/src/stactools/core/copy.py b/src/stactools/core/copy.py index 27883e48..f73ba778 100644 --- a/src/stactools/core/copy.py +++ b/src/stactools/core/copy.py @@ -1,13 +1,12 @@ -import os import logging +import os +from typing import Optional import fsspec from fsspec.core import split_protocol from fsspec.registry import get_filesystem_class - from pystac import Catalog, CatalogType, Item from pystac.utils import is_absolute_href, make_absolute_href, make_relative_href -from typing import Optional logger = logging.getLogger(__name__) diff --git a/src/stactools/core/create.py b/src/stactools/core/create.py index 7114304f..00f0d8f7 100644 --- a/src/stactools/core/create.py +++ b/src/stactools/core/create.py @@ -2,12 +2,13 @@ import os.path from typing import Optional +import rasterio import shapely.geometry -from pystac import Item, Asset +from pystac import Asset, Item from pystac.extensions.projection import ProjectionExtension -import rasterio import stactools.core.projection + from .io import ReadHrefModifier diff --git a/src/stactools/core/io/__init__.py b/src/stactools/core/io/__init__.py index 52647ad6..15533a47 100644 --- a/src/stactools/core/io/__init__.py +++ b/src/stactools/core/io/__init__.py @@ -1,7 +1,7 @@ -from typing import Callable, Optional, Any +from typing import Any, Callable, Optional -from pystac.stac_io import DefaultStacIO, StacIO import fsspec +from pystac.stac_io import DefaultStacIO, StacIO ReadHrefModifier = Callable[[str], str] """Type alias for a function parameter diff --git a/src/stactools/core/io/xml.py b/src/stactools/core/io/xml.py index 37e408d4..af7607cc 100644 --- a/src/stactools/core/io/xml.py +++ b/src/stactools/core/io/xml.py @@ -1,5 +1,5 @@ from functools import lru_cache -from typing import Callable, List, Optional +from typing import Callable, List, Optional, cast from lxml import etree from lxml.etree import _Element as lxmlElement @@ -65,7 +65,7 @@ def text(self) -> Optional[str]: @lru_cache(maxsize=100) def get_attr(self, attr: str) -> Optional[str]: - return self.element.get(attr, None) + return cast(Optional[str], self.element.get(attr, None)) @classmethod def from_file( diff --git a/src/stactools/core/merge.py b/src/stactools/core/merge.py index 16f11eee..967a32da 100644 --- a/src/stactools/core/merge.py +++ b/src/stactools/core/merge.py @@ -1,16 +1,13 @@ import os +from typing import Optional import pystac -from typing import Optional from pystac.layout import BestPracticesLayoutStrategy from pystac.utils import is_absolute_href, make_relative_href -from shapely.geometry import shape, mapping +from shapely.geometry import mapping, shape -from stactools.core.copy import ( - move_asset_file_to_item, - copy_catalog, - move_assets as do_move_assets, -) +from stactools.core.copy import copy_catalog, move_asset_file_to_item +from stactools.core.copy import move_assets as do_move_assets def merge_items( diff --git a/src/stactools/core/projection.py b/src/stactools/core/projection.py index 49a0a114..6027b7d0 100644 --- a/src/stactools/core/projection.py +++ b/src/stactools/core/projection.py @@ -1,5 +1,5 @@ from copy import deepcopy -from typing import Any, List, Optional, Union, Dict, Sequence +from typing import Any, Dict, List, Optional, Sequence, Union import pyproj import rasterio.crs diff --git a/src/stactools/core/utils/antimeridian.py b/src/stactools/core/utils/antimeridian.py index 1276b112..897a92a9 100644 --- a/src/stactools/core/utils/antimeridian.py +++ b/src/stactools/core/utils/antimeridian.py @@ -1,12 +1,12 @@ -from enum import Enum, auto import math +from enum import Enum, auto from typing import Optional import shapely.affinity import shapely.geometry import shapely.ops from pystac import Item -from shapely.geometry import Polygon, MultiPolygon, LineString +from shapely.geometry import LineString, MultiPolygon, Polygon class Strategy(Enum): diff --git a/src/stactools/core/utils/convert.py b/src/stactools/core/utils/convert.py index 61f6e352..061d6666 100644 --- a/src/stactools/core/utils/convert.py +++ b/src/stactools/core/utils/convert.py @@ -1,4 +1,4 @@ -from typing import Dict, Any, Optional +from typing import Any, Dict, Optional import rasterio import rasterio.shutil diff --git a/src/stactools/core/utils/subprocess.py b/src/stactools/core/utils/subprocess.py index b8d30a7a..77d47876 100644 --- a/src/stactools/core/utils/subprocess.py +++ b/src/stactools/core/utils/subprocess.py @@ -1,5 +1,5 @@ import logging -from subprocess import Popen, PIPE, STDOUT +from subprocess import PIPE, STDOUT, Popen from typing import IO, List logger = logging.getLogger(__name__) diff --git a/src/stactools/testing/__init__.py b/src/stactools/testing/__init__.py index 2622e8de..47f46295 100644 --- a/src/stactools/testing/__init__.py +++ b/src/stactools/testing/__init__.py @@ -1,6 +1,7 @@ import stactools.core -from .test_data import TestData + from .cli_test import CliTestCase +from .test_data import TestData __all__ = [TestData.__name__, CliTestCase.__name__] diff --git a/src/stactools/testing/cli.py b/src/stactools/testing/cli.py index bfef954b..d77bbcb8 100644 --- a/src/stactools/testing/cli.py +++ b/src/stactools/testing/cli.py @@ -1,8 +1,8 @@ """ CLI for test data maintenance and generation. """ +import logging import os import shutil -import logging from tempfile import TemporaryDirectory import click diff --git a/src/stactools/testing/cli_test.py b/src/stactools/testing/cli_test.py index 73c3609a..ba2fe754 100644 --- a/src/stactools/testing/cli_test.py +++ b/src/stactools/testing/cli_test.py @@ -1,7 +1,7 @@ -from abc import ABC, abstractmethod import logging -from typing import List, Callable import unittest +from abc import ABC, abstractmethod +from typing import Callable, List import click from click.testing import CliRunner, Result diff --git a/src/stactools/testing/test_data.py b/src/stactools/testing/test_data.py index e27d4445..bc7d0d7b 100644 --- a/src/stactools/testing/test_data.py +++ b/src/stactools/testing/test_data.py @@ -1,7 +1,7 @@ import os import shutil -from typing import Any, Dict from tempfile import TemporaryDirectory +from typing import Any, Dict from zipfile import ZipFile import fsspec diff --git a/tests/cli/commands/cli_test_utils.py b/tests/cli/commands/cli_test_utils.py index fea6fe8e..25cc7366 100644 --- a/tests/cli/commands/cli_test_utils.py +++ b/tests/cli/commands/cli_test_utils.py @@ -1,5 +1,5 @@ -import os import json +import os def expected_json(filename): diff --git a/tests/cli/commands/test_add.py b/tests/cli/commands/test_add.py index c5416f49..1855a08f 100644 --- a/tests/cli/commands/test_add.py +++ b/tests/cli/commands/test_add.py @@ -1,9 +1,11 @@ from tempfile import TemporaryDirectory import pystac -from stactools.core import move_all_assets + from stactools.cli.commands.add import create_add_command +from stactools.core import move_all_assets from stactools.testing import CliTestCase + from .test_cases import TestCases diff --git a/tests/cli/commands/test_addraster.py b/tests/cli/commands/test_addraster.py index f31c5d8a..dd1d5a30 100644 --- a/tests/cli/commands/test_addraster.py +++ b/tests/cli/commands/test_addraster.py @@ -2,11 +2,13 @@ import pystac from pystac.utils import make_absolute_href -from stactools.core import move_all_assets + from stactools.cli.commands.addraster import create_addraster_command +from stactools.core import move_all_assets from stactools.testing import CliTestCase -from .test_cases import TestCases + from .cli_test_utils import expected_json +from .test_cases import TestCases def create_temp_catalog_copy(tmp_dir): diff --git a/tests/cli/commands/test_cases.py b/tests/cli/commands/test_cases.py index 8b7f0736..a1823e05 100644 --- a/tests/cli/commands/test_cases.py +++ b/tests/cli/commands/test_cases.py @@ -3,19 +3,19 @@ import pystac from pystac import ( - Catalog, - Item, Asset, + Catalog, Extent, - TemporalExtent, - SpatialExtent, + Item, MediaType, + SpatialExtent, + TemporalExtent, ) from pystac.extensions.label import ( - LabelOverview, LabelClasses, LabelCount, LabelExtension, + LabelOverview, LabelType, ) diff --git a/tests/cli/commands/test_copy.py b/tests/cli/commands/test_copy.py index 18daf2db..53d5f177 100644 --- a/tests/cli/commands/test_copy.py +++ b/tests/cli/commands/test_copy.py @@ -7,6 +7,7 @@ from stactools.cli.commands.copy import create_copy_command, create_move_assets_command from stactools.testing import CliTestCase + from .test_cases import TestCases diff --git a/tests/cli/commands/test_lint.py b/tests/cli/commands/test_lint.py index 450c3fd9..e92506dd 100644 --- a/tests/cli/commands/test_lint.py +++ b/tests/cli/commands/test_lint.py @@ -1,11 +1,9 @@ -from typing import List, Callable +from typing import Callable, List -from click import Group, Command - -from stactools.testing import CliTestCase +from click import Command, Group from stactools.cli.commands.lint import create_lint_command - +from stactools.testing import CliTestCase from tests import test_data diff --git a/tests/cli/commands/test_merge.py b/tests/cli/commands/test_merge.py index d96b10a1..f360af3d 100644 --- a/tests/cli/commands/test_merge.py +++ b/tests/cli/commands/test_merge.py @@ -7,6 +7,7 @@ from stactools.cli.commands.merge import create_merge_command from stactools.core import move_all_assets from stactools.testing import CliTestCase + from .test_cases import TestCases diff --git a/tests/cli/commands/test_validate.py b/tests/cli/commands/test_validate.py index 9b863147..aa36c56e 100644 --- a/tests/cli/commands/test_validate.py +++ b/tests/cli/commands/test_validate.py @@ -1,8 +1,7 @@ -from typing import List, Callable -from stactools.cli.commands.validate import create_validate_command +from typing import Callable, List +from stactools.cli.commands.validate import create_validate_command from stactools.testing import CliTestCase - from tests import test_data diff --git a/tests/cli/commands/test_version.py b/tests/cli/commands/test_version.py index 6e5730e8..a9772b3f 100644 --- a/tests/cli/commands/test_version.py +++ b/tests/cli/commands/test_version.py @@ -1,10 +1,9 @@ import pystac from pystac.version import get_stac_version +from stactools.cli.commands.version import create_version_command from stactools.core import __version__ from stactools.core.utils.subprocess import call -from stactools.cli.commands.version import create_version_command - from stactools.testing import CliTestCase diff --git a/tests/core/test_create.py b/tests/core/test_create.py index 3e257420..74434111 100644 --- a/tests/core/test_create.py +++ b/tests/core/test_create.py @@ -4,7 +4,6 @@ from pystac.extensions.projection import ProjectionExtension from stactools.core import create - from tests import test_data diff --git a/tests/core/test_io.py b/tests/core/test_io.py index b744f1eb..2f2095b3 100644 --- a/tests/core/test_io.py +++ b/tests/core/test_io.py @@ -3,6 +3,7 @@ from tempfile import TemporaryDirectory import pystac + from stactools.core import use_fsspec diff --git a/tests/core/test_utils.py b/tests/core/test_utils.py index 61cc17c8..14c36e24 100644 --- a/tests/core/test_utils.py +++ b/tests/core/test_utils.py @@ -1,14 +1,14 @@ -from contextlib import contextmanager import datetime import os.path -from tempfile import TemporaryDirectory import unittest -from pystac import Item -import pytest +from contextlib import contextmanager +from tempfile import TemporaryDirectory +import pytest import rasterio import shapely.geometry -from shapely.geometry import Polygon, MultiPolygon +from pystac import Item +from shapely.geometry import MultiPolygon, Polygon from stactools.core.utils import antimeridian from stactools.core.utils.convert import cogify diff --git a/tests/testing/test_test_data.py b/tests/testing/test_test_data.py index b9541751..ee42972f 100644 --- a/tests/testing/test_test_data.py +++ b/tests/testing/test_test_data.py @@ -1,4 +1,4 @@ -from unittest import TestCase, SkipTest +from unittest import SkipTest, TestCase import pystac