Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions xrspatial/geotiff/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -987,8 +987,7 @@ def open_geotiff(source: str | BinaryIO, *,
# that kwarg conflict is reported -- the tier rejection wins, which
# matches refusing the unsupported source before validating kwargs
# that would not be honoured anyway.
from ._validation import _validate_stable_only_remote
from ._validation import _validate_stable_only_vrt
from ._validation import _validate_stable_only_remote, _validate_stable_only_vrt
if _is_vrt_source:
_validate_stable_only_vrt(
source,
Expand Down
7 changes: 3 additions & 4 deletions xrspatial/geotiff/_writers/eager.py
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,9 @@
from .._nodata import NodataLifecycle as _NL
from .._runtime import (GeoTIFFFallbackWarning, _geotiff_strict_mode, _gpu_fallback_warning_message,
_resolve_spatial_coords)
from .._validation import (_validate_3d_writer_dims, _validate_gpu_arg,
_validate_no_rotated_affine, _validate_nodata_arg,
_validate_tile_size_arg, _validate_writer_spatial_shape,
validate_write_metadata)
from .._validation import (_validate_3d_writer_dims, _validate_gpu_arg, _validate_no_rotated_affine,
_validate_nodata_arg, _validate_tile_size_arg,
_validate_writer_spatial_shape, validate_write_metadata)
from .._writer import _COG_REQUIRES_TILED_MSG, write
from .gpu import _write_geotiff_gpu

Expand Down
2 changes: 1 addition & 1 deletion xrspatial/geotiff/tests/attrs/test_contract.py
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@

from xrspatial.geotiff import ConflictingNodataError
from xrspatial.geotiff import _attrs as _attrs_module
from xrspatial.geotiff import open_geotiff, _read_vrt, to_geotiff
from xrspatial.geotiff import _read_vrt, open_geotiff, to_geotiff
from xrspatial.geotiff._attrs import _ATTRS_CONTRACT_VERSION, _resolve_nodata_attr

from .._helpers.markers import requires_gpu
Expand Down
6 changes: 2 additions & 4 deletions xrspatial/geotiff/tests/golden_corpus/test_dask_numpy.py
Original file line number Diff line number Diff line change
Expand Up @@ -47,10 +47,8 @@
_OPTIN = {"allow_experimental_codecs": True, "allow_internal_only_jpeg": True}

from xrspatial.geotiff.tests.golden_corpus import generate # noqa: E402
from xrspatial.geotiff.tests.golden_corpus._marks import ( # noqa: E402
fast_slow_marks_for,
optional_dep_marks_for,
)
from xrspatial.geotiff.tests.golden_corpus._marks import fast_slow_marks_for # noqa: E402
from xrspatial.geotiff.tests.golden_corpus._marks import optional_dep_marks_for # noqa: E402
from xrspatial.geotiff.tests.golden_corpus._oracle import compare_to_oracle # noqa: E402

FIXTURES_DIR = (
Expand Down
6 changes: 2 additions & 4 deletions xrspatial/geotiff/tests/golden_corpus/test_eager_numpy.py
Original file line number Diff line number Diff line change
Expand Up @@ -75,10 +75,8 @@
_OPTIN = {"allow_experimental_codecs": True, "allow_internal_only_jpeg": True}

from xrspatial.geotiff.tests.golden_corpus import generate # noqa: E402
from xrspatial.geotiff.tests.golden_corpus._marks import ( # noqa: E402
fast_slow_marks_for,
optional_dep_marks_for,
)
from xrspatial.geotiff.tests.golden_corpus._marks import fast_slow_marks_for # noqa: E402
from xrspatial.geotiff.tests.golden_corpus._marks import optional_dep_marks_for # noqa: E402
from xrspatial.geotiff.tests.golden_corpus._oracle import compare_to_oracle # noqa: E402

FIXTURES_DIR = (
Expand Down
6 changes: 2 additions & 4 deletions xrspatial/geotiff/tests/golden_corpus/test_fsspec.py
Original file line number Diff line number Diff line change
Expand Up @@ -63,10 +63,8 @@
_OPTIN = {"allow_experimental_codecs": True, "allow_internal_only_jpeg": True}

from xrspatial.geotiff.tests.golden_corpus import generate # noqa: E402
from xrspatial.geotiff.tests.golden_corpus._marks import ( # noqa: E402
fast_slow_marks_for,
optional_dep_marks_for,
)
from xrspatial.geotiff.tests.golden_corpus._marks import fast_slow_marks_for # noqa: E402
from xrspatial.geotiff.tests.golden_corpus._marks import optional_dep_marks_for # noqa: E402
from xrspatial.geotiff.tests.golden_corpus._oracle import compare_to_oracle # noqa: E402

FIXTURES_DIR = (
Expand Down
2 changes: 1 addition & 1 deletion xrspatial/geotiff/tests/golden_corpus/test_vrt.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
pytest.importorskip("yaml")
rasterio = pytest.importorskip("rasterio")

from xrspatial.geotiff import open_geotiff, build_vrt # noqa: E402
from xrspatial.geotiff import build_vrt, open_geotiff # noqa: E402

# Golden-corpus fixtures span every codec/tier, including the
# experimental and internal-only ones. Opting in here lets the parity
Expand Down
6 changes: 3 additions & 3 deletions xrspatial/geotiff/tests/gpu/test_codec.py
Original file line number Diff line number Diff line change
Expand Up @@ -110,7 +110,7 @@ def test_gpu_write_roundtrip_after_batched_compress_1712(compression):
"""GPU compress path round-trips uncorrupted for deflate + zstd."""
import cupy

from xrspatial.geotiff import open_geotiff, _write_geotiff_gpu
from xrspatial.geotiff import _write_geotiff_gpu, open_geotiff

rng = np.random.default_rng(seed=1712)
arr_cpu = rng.random((512, 512), dtype=np.float32)
Expand Down Expand Up @@ -138,7 +138,7 @@ def test_gpu_write_zero_tile_edge_case_1712():
"""A 0-tile compress returns an empty list without indexing into None."""
import cupy

from xrspatial.geotiff import open_geotiff, _write_geotiff_gpu
from xrspatial.geotiff import _write_geotiff_gpu, open_geotiff

arr_gpu = cupy.zeros((32, 32), dtype=cupy.float32)
darr = xr.DataArray(arr_gpu, dims=["y", "x"])
Expand Down Expand Up @@ -1783,7 +1783,7 @@ class TestErrorMessageStable_1933:
"""The GPU error wording matches the eager/dask wording."""

def test_gpu_error_message_matches_eager(self, tmp_path):
from xrspatial.geotiff import open_geotiff, _read_geotiff_gpu
from xrspatial.geotiff import _read_geotiff_gpu, open_geotiff

arr = np.arange(64, dtype=np.uint32).reshape(8, 8)
path = tmp_path / "pred3_uint32_msg.tif"
Expand Down
4 changes: 2 additions & 2 deletions xrspatial/geotiff/tests/gpu/test_kernels_and_kwargs.py
Original file line number Diff line number Diff line change
Expand Up @@ -3078,7 +3078,7 @@ class TestErrorMessageParity_1929:
"""

def test_gpu_vs_cpu_message_matches(self, tmp_path):
from xrspatial.geotiff import to_geotiff, _write_geotiff_gpu
from xrspatial.geotiff import _write_geotiff_gpu, to_geotiff

out_cpu = str(tmp_path / "cpu_msg_1929.tif")
out_gpu = str(tmp_path / "gpu_msg_1929.tif")
Expand Down Expand Up @@ -3121,7 +3121,7 @@ class TestKwargDefaultParity_1929:
"""

def test_default_is_false_on_all_writers(self):
from xrspatial.geotiff import to_geotiff, _write_geotiff_gpu
from xrspatial.geotiff import _write_geotiff_gpu, to_geotiff
from xrspatial.geotiff._writers.eager import _write_vrt_tiled

for fn in (to_geotiff, _write_geotiff_gpu, _write_vrt_tiled):
Expand Down
18 changes: 9 additions & 9 deletions xrspatial/geotiff/tests/gpu/test_reader.py
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ def multi_band_tiff_1605(tmp_path):
def test_read_geotiff_gpu_window_matches_eager_1605(single_band_tiff_1605):
"""Direct call: GPU window slice matches CPU eager window slice."""
path, source_arr = single_band_tiff_1605
from xrspatial.geotiff import open_geotiff, _read_geotiff_gpu
from xrspatial.geotiff import _read_geotiff_gpu, open_geotiff

window = (2, 4, 12, 14)

Expand Down Expand Up @@ -126,7 +126,7 @@ def test_open_geotiff_gpu_window_no_longer_silently_dropped_1605(
def test_read_geotiff_gpu_band_selection_1605(multi_band_tiff_1605):
"""Direct call: band=k returns the kth band as a 2D DataArray."""
path, source_arr = multi_band_tiff_1605
from xrspatial.geotiff import open_geotiff, _read_geotiff_gpu
from xrspatial.geotiff import _read_geotiff_gpu, open_geotiff

cpu = open_geotiff(path, band=1)
gpu = _read_geotiff_gpu(path, band=1)
Expand Down Expand Up @@ -158,7 +158,7 @@ def test_open_geotiff_gpu_band_no_longer_silently_dropped_1605(
def test_read_geotiff_gpu_window_and_band_1605(multi_band_tiff_1605):
"""window + band combine cleanly."""
path, source_arr = multi_band_tiff_1605
from xrspatial.geotiff import open_geotiff, _read_geotiff_gpu
from xrspatial.geotiff import _read_geotiff_gpu, open_geotiff

window = (1, 2, 11, 17)
cpu = open_geotiff(path, window=window, band=0)
Expand Down Expand Up @@ -529,7 +529,7 @@ def test_stripped_max_pixels_cap_is_enforced_1732():
def test_stripped_window_returns_only_window_1732():
"""Windowed read on a stripped file returns the window-sized array
with coords and transform that match the window origin."""
from xrspatial.geotiff import open_geotiff, _read_geotiff_gpu, to_geotiff
from xrspatial.geotiff import _read_geotiff_gpu, open_geotiff, to_geotiff

rng = np.random.RandomState(20260512)
data = rng.randint(0, 200, size=(64, 96)).astype(np.uint8)
Expand Down Expand Up @@ -1105,7 +1105,7 @@ def _attrs_subset_2324(da):

def test_sidecar_without_geokeys_attrs_match_cpu_vs_dask_2324(tmp_path):
"""Baseline: CPU eager and dask agree on inherited georef."""
from xrspatial.geotiff import open_geotiff, _read_geotiff_dask
from xrspatial.geotiff import _read_geotiff_dask, open_geotiff

from ..integration.test_sidecar import _write_pair

Expand Down Expand Up @@ -1135,7 +1135,7 @@ def test_sidecar_without_geokeys_attrs_match_cpu_vs_dask_2324(tmp_path):
@_gpu_only
def test_sidecar_without_geokeys_gpu_matches_cpu_2324(tmp_path):
"""GPU eager georef matches CPU / dask."""
from xrspatial.geotiff import open_geotiff, _read_geotiff_gpu
from xrspatial.geotiff import _read_geotiff_gpu, open_geotiff

from ..integration.test_sidecar import _write_pair

Expand All @@ -1161,7 +1161,7 @@ def test_sidecar_without_geokeys_gpu_matches_cpu_2324(tmp_path):
@_gpu_only
def test_sidecar_with_own_geokeys_gpu_matches_cpu_2324(tmp_path):
"""GPU path routes a sidecar-owned georef payload to sidecar bytes."""
from xrspatial.geotiff import open_geotiff, _read_geotiff_gpu
from xrspatial.geotiff import _read_geotiff_gpu, open_geotiff

from ..integration.test_sidecar import _write_pair

Expand Down Expand Up @@ -1268,7 +1268,7 @@ def test_http_url_returns_cupy_matching_cpu_2161(small_tif_bytes_2161,
"""HTTP URLs route through the CPU decode + GPU upload helper."""
import cupy

from xrspatial.geotiff import open_geotiff, _read_geotiff_gpu
from xrspatial.geotiff import _read_geotiff_gpu, open_geotiff

payload, arr_ref, _local = small_tif_bytes_2161
monkeypatch.setenv('XRSPATIAL_GEOTIFF_ALLOW_PRIVATE_HOSTS', '1')
Expand Down Expand Up @@ -1298,7 +1298,7 @@ def test_memory_fsspec_uri_returns_cupy_matching_cpu_2161(
fsspec = pytest.importorskip("fsspec")
import cupy

from xrspatial.geotiff import open_geotiff, _read_geotiff_gpu
from xrspatial.geotiff import _read_geotiff_gpu, open_geotiff

payload, arr_ref, _local = small_tif_bytes_2161
fs = fsspec.filesystem("memory")
Expand Down
4 changes: 2 additions & 2 deletions xrspatial/geotiff/tests/gpu/test_writer.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,8 +44,8 @@
import pytest
import xarray as xr

from xrspatial.geotiff import (GeoTIFFFallbackWarning, _gpu_decode, open_geotiff, to_geotiff,
_write_geotiff_gpu)
from xrspatial.geotiff import (GeoTIFFFallbackWarning, _gpu_decode, _write_geotiff_gpu,
open_geotiff, to_geotiff)
from xrspatial.geotiff._compression import JPEG2000_AVAILABLE, LERC_AVAILABLE, LZ4_AVAILABLE
from xrspatial.geotiff._geotags import GeoTransform, _epsg_to_wkt
from xrspatial.geotiff._header import parse_header, parse_ifd
Expand Down
6 changes: 3 additions & 3 deletions xrspatial/geotiff/tests/integration/test_dask_pipeline.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
import pytest
import xarray as xr

from xrspatial.geotiff import open_geotiff, _read_geotiff_dask, to_geotiff
from xrspatial.geotiff import _read_geotiff_dask, open_geotiff, to_geotiff
from xrspatial.geotiff._writer import write

# ----------------------------------------------------------
Expand Down Expand Up @@ -455,7 +455,7 @@ def test_dask_overview_level_zero_matches_full_res(tmp_path):

def test_dask_overview_level_one_returns_half_res(tmp_path):
"""``overview_level=1`` materialises the half-resolution overview."""
from xrspatial.geotiff import open_geotiff, _read_geotiff_dask
from xrspatial.geotiff import _read_geotiff_dask, open_geotiff

rng = np.random.RandomState(0xD0E)
arr = rng.randint(0, 256, size=(128, 192), dtype=np.uint8)
Expand All @@ -477,7 +477,7 @@ def test_dask_overview_level_one_returns_half_res(tmp_path):

def test_dask_overview_level_two_returns_quarter_res(tmp_path):
"""``overview_level=2`` materialises the quarter-resolution overview."""
from xrspatial.geotiff import open_geotiff, _read_geotiff_dask
from xrspatial.geotiff import _read_geotiff_dask, open_geotiff

rng = np.random.RandomState(0xD0E)
arr = rng.randint(0, 256, size=(128, 192), dtype=np.uint8)
Expand Down
2 changes: 1 addition & 1 deletion xrspatial/geotiff/tests/integration/test_gpu_pipeline.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,7 @@ def test_open_geotiff_gpu_chunks_int_round_trip(tmp_path):

def test_read_geotiff_gpu_chunks_tuple_round_trip(tmp_path):
"""`_read_geotiff_gpu(chunks=(rh, cw))` accepts tuple chunk specs."""
from xrspatial.geotiff import open_geotiff, _read_geotiff_gpu, to_geotiff
from xrspatial.geotiff import _read_geotiff_gpu, open_geotiff, to_geotiff

rng = np.random.RandomState(11)
arr = rng.randint(0, 60_000, (192, 256)).astype(np.uint16)
Expand Down
5 changes: 2 additions & 3 deletions xrspatial/geotiff/tests/integration/test_http_sources.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,11 +21,10 @@
import pytest
import xarray as xr

from xrspatial.geotiff import UnsafeURLError
from xrspatial.geotiff import UnsafeURLError, _read_geotiff_dask, _read_geotiff_gpu, _read_vrt
from xrspatial.geotiff import _reader as _reader_mod
from xrspatial.geotiff import _sources as _sources_mod
from xrspatial.geotiff import (open_geotiff, _read_geotiff_dask, _read_geotiff_gpu, _read_vrt,
to_geotiff, _write_geotiff_gpu, build_vrt)
from xrspatial.geotiff import _write_geotiff_gpu, build_vrt, open_geotiff, to_geotiff
from xrspatial.geotiff._errors import RotatedTransformError
from xrspatial.geotiff._header import parse_all_ifds, parse_header
from xrspatial.geotiff._reader import (_FULL_IMAGE_BUDGET_HEADER_SLACK, INITIAL_HTTP_HEADER_BYTES,
Expand Down
2 changes: 1 addition & 1 deletion xrspatial/geotiff/tests/parity/test_backend_matrix.py
Original file line number Diff line number Diff line change
Expand Up @@ -71,7 +71,7 @@
import pytest
import xarray as xr

from xrspatial.geotiff import open_geotiff, _read_vrt, to_geotiff, build_vrt
from xrspatial.geotiff import _read_vrt, build_vrt, open_geotiff, to_geotiff
from xrspatial.geotiff._attrs import _finalize_eager_read, _finalize_lazy_read_attrs
from xrspatial.geotiff._errors import RotatedTransformError, UnparseableCRSError

Expand Down
4 changes: 2 additions & 2 deletions xrspatial/geotiff/tests/parity/test_finalization.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@
import pytest
import xarray as xr

from xrspatial.geotiff import (open_geotiff, _read_geotiff_dask, _read_geotiff_gpu, _read_vrt,
to_geotiff, build_vrt)
from xrspatial.geotiff import (_read_geotiff_dask, _read_geotiff_gpu, _read_vrt, build_vrt,
open_geotiff, to_geotiff)
from xrspatial.geotiff._attrs import (GEOREF_STATUS_CRS_ONLY, GEOREF_STATUS_FULL,
GEOREF_STATUS_NONE, GEOREF_STATUS_ROTATED_DROPPED,
GEOREF_STATUS_TRANSFORM_ONLY)
Expand Down
4 changes: 2 additions & 2 deletions xrspatial/geotiff/tests/parity/test_pixel_equality.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,8 +30,8 @@
import pytest
import xarray as xr

from xrspatial.geotiff import (open_geotiff, _read_geotiff_dask, _read_geotiff_gpu, _read_vrt,
to_geotiff, build_vrt)
from xrspatial.geotiff import (_read_geotiff_dask, _read_geotiff_gpu, _read_vrt, build_vrt,
open_geotiff, to_geotiff)

from .._helpers.markers import gpu_available, requires_gpu, requires_loopback

Expand Down
4 changes: 2 additions & 2 deletions xrspatial/geotiff/tests/parity/test_reference.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@
import pytest
import xarray as xr

from xrspatial.geotiff import (open_geotiff, _read_geotiff_dask, _read_geotiff_gpu, to_geotiff,
_write_geotiff_gpu)
from xrspatial.geotiff import (_read_geotiff_dask, _read_geotiff_gpu, _write_geotiff_gpu,
open_geotiff, to_geotiff)

from .._helpers.markers import requires_gpu

Expand Down
5 changes: 2 additions & 3 deletions xrspatial/geotiff/tests/parity/test_signature_contract.py
Original file line number Diff line number Diff line change
Expand Up @@ -35,9 +35,8 @@
import pytest
import xarray as xr

from xrspatial.geotiff import (SUPPORTED_FEATURES, build_vrt, open_geotiff, to_geotiff,
_read_geotiff_dask, _read_geotiff_gpu, _read_vrt,
_write_geotiff_gpu)
from xrspatial.geotiff import (SUPPORTED_FEATURES, _read_geotiff_dask, _read_geotiff_gpu, _read_vrt,
_write_geotiff_gpu, build_vrt, open_geotiff, to_geotiff)

from .._helpers.markers import requires_gpu

Expand Down
3 changes: 2 additions & 1 deletion xrspatial/geotiff/tests/read/test_basic.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,8 +18,9 @@
import pytest
import xarray as xr

from xrspatial.geotiff import GeoTIFFFallbackWarning, open_geotiff, to_geotiff
from xrspatial.geotiff import GeoTIFFFallbackWarning
from xrspatial.geotiff import build_vrt as _write_vrt_1810
from xrspatial.geotiff import open_geotiff, to_geotiff
from xrspatial.geotiff._dtypes import tiff_dtype_to_numpy
from xrspatial.geotiff._geotags import RASTER_PIXEL_IS_POINT, TAG_GEO_ASCII_PARAMS, extract_geo_info
from xrspatial.geotiff._header import parse_all_ifds, parse_header
Expand Down
2 changes: 1 addition & 1 deletion xrspatial/geotiff/tests/read/test_dtypes.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
import pytest
import xarray as xr

from xrspatial.geotiff import open_geotiff, _read_geotiff_dask, to_geotiff
from xrspatial.geotiff import _read_geotiff_dask, open_geotiff, to_geotiff
from xrspatial.geotiff._dtypes import (SAMPLE_FORMAT_FLOAT, SAMPLE_FORMAT_INT, SAMPLE_FORMAT_UINT,
tiff_dtype_to_numpy, tiff_storage_dtype)

Expand Down
4 changes: 2 additions & 2 deletions xrspatial/geotiff/tests/read/test_georef.py
Original file line number Diff line number Diff line change
Expand Up @@ -40,8 +40,8 @@
import pytest
import xarray as xr

from xrspatial.geotiff import (NonUniformCoordsError, _coords_to_transform, _transform_from_attr,
open_geotiff, _read_vrt, to_geotiff, _write_geotiff_gpu)
from xrspatial.geotiff import (NonUniformCoordsError, _coords_to_transform, _read_vrt,
_transform_from_attr, _write_geotiff_gpu, open_geotiff, to_geotiff)
from xrspatial.geotiff._attrs import (_ATTRS_CONTRACT_VERSION, GEOREF_STATUS_CRS_ONLY,
GEOREF_STATUS_FULL, GEOREF_STATUS_NONE,
GEOREF_STATUS_ROTATED_DROPPED, GEOREF_STATUS_TRANSFORM_ONLY,
Expand Down
2 changes: 1 addition & 1 deletion xrspatial/geotiff/tests/read/test_nodata.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@
import xarray as xr

from xrspatial.geotiff import (GeoTIFFAmbiguousMetadataError, InvalidIntegerNodataError,
open_geotiff, _read_geotiff_dask, _read_vrt, to_geotiff)
_read_geotiff_dask, _read_vrt, open_geotiff, to_geotiff)
from xrspatial.geotiff._attrs import _finalize_lazy_read_attrs, _validate_read_geo_info
from xrspatial.geotiff._backends import _gpu_helpers
from xrspatial.geotiff._errors import MixedBandMetadataError
Expand Down
3 changes: 2 additions & 1 deletion xrspatial/geotiff/tests/read/test_tiling.py
Original file line number Diff line number Diff line change
Expand Up @@ -33,8 +33,9 @@
import xarray as xr

from xrspatial.geotiff import _decode as _decode_mod
from xrspatial.geotiff import _read_geotiff_gpu
from xrspatial.geotiff import _reader as _reader_mod
from xrspatial.geotiff import open_geotiff, _read_geotiff_gpu, to_geotiff
from xrspatial.geotiff import open_geotiff, to_geotiff
from xrspatial.geotiff._compression import COMPRESSION_NONE, unpack_bits
from xrspatial.geotiff._dtypes import (resolve_bits_per_sample, resolve_sample_format,
tiff_dtype_to_numpy)
Expand Down
4 changes: 2 additions & 2 deletions xrspatial/geotiff/tests/release_gates/test_features.py
Original file line number Diff line number Diff line change
Expand Up @@ -49,8 +49,8 @@
from xrspatial.geotiff import (SUPPORTED_FEATURES, GeoTIFFAmbiguousMetadataError,
GeoTIFFFallbackWarning, RotatedTransformError,
UnsupportedGeoTIFFFeatureError, VRTStableSourcesOnlyError,
open_geotiff, _read_geotiff_dask, _read_vrt, to_geotiff,
_write_geotiff_gpu)
_read_geotiff_dask, _read_vrt, _write_geotiff_gpu, open_geotiff,
to_geotiff)
from xrspatial.geotiff._attrs import _VALID_COMPRESSIONS
from xrspatial.geotiff._compression import (packbits_compress, packbits_decompress, zstd_compress,
zstd_decompress)
Expand Down
4 changes: 2 additions & 2 deletions xrspatial/geotiff/tests/release_gates/test_stable_features.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,8 @@
),
)

from xrspatial.geotiff import (SUPPORTED_FEATURES, UnsafeURLError, open_geotiff, # noqa: E402
_read_geotiff_dask, to_geotiff)
from xrspatial.geotiff import (SUPPORTED_FEATURES, UnsafeURLError, _read_geotiff_dask, # noqa: E402
open_geotiff, to_geotiff)
from xrspatial.geotiff._compression import (COMPRESSION_DEFLATE, COMPRESSION_LZW, # noqa: E402
COMPRESSION_NONE, COMPRESSION_PACKBITS,
COMPRESSION_ZSTD)
Expand Down
Loading
Loading