From f3d654b87524dbf9d4b172c6a9c4f41099c8c9ea Mon Sep 17 00:00:00 2001 From: Kyle Mann Date: Tue, 3 Dec 2024 11:47:41 -0600 Subject: [PATCH] Stability update (#104) * Pinning versions of python and tiledb, moving from typing to typing_extensions for compatibility with python 3.10 * bump version to 1.3.0 --- .gitignore | 8 +++++++- environment.yml | 5 +++-- src/silvimetric/__init__.py | 2 +- src/silvimetric/commands/extract.py | 2 +- src/silvimetric/commands/info.py | 2 +- src/silvimetric/commands/shatter.py | 2 +- src/silvimetric/resources/array_extensions.py | 2 +- src/silvimetric/resources/config.py | 2 +- src/silvimetric/resources/log.py | 3 +-- src/silvimetric/resources/metric.py | 3 ++- src/silvimetric/resources/storage.py | 2 +- tests/conftest.py | 2 +- tests/fixtures/chunk_fixtures.py | 2 +- tests/fixtures/cli_fixtures.py | 2 +- tests/fixtures/command_fixtures.py | 2 +- tests/fixtures/dask_fixtures.py | 2 +- tests/fixtures/data_fixtures.py | 2 +- tests/fixtures/extract_fixtures.py | 2 +- tests/fixtures/metric_fixtures.py | 2 +- tests/fixtures/shatter_fixtures.py | 2 +- tests/fixtures/western_fixtures.py | 2 +- 21 files changed, 30 insertions(+), 23 deletions(-) diff --git a/.gitignore b/.gitignore index 85d76b8..cc4857e 100644 --- a/.gitignore +++ b/.gitignore @@ -4,12 +4,18 @@ __pycache__/ build/ dist/ stats/ -.env *.html **/html/** **/_build/** +# local conda environment +# conda env create --prefix .conda/ -f environment.yml +.conda/** + +# environment variables for pytest +.env + #tiledb **/__fragments/** **/__commits/** diff --git a/environment.yml b/environment.yml index 09923ed..b7a068c 100644 --- a/environment.yml +++ b/environment.yml @@ -2,9 +2,9 @@ name: silvimetric channels: - conda-forge dependencies: - - python + - python>=3.10 - pip - - tiledb-py + - tiledb-py>=0.32.5 - pdal - python-pdal - numpy @@ -19,3 +19,4 @@ dependencies: - dill - pandas - lmoments3 + - typing_extensions diff --git a/src/silvimetric/__init__.py b/src/silvimetric/__init__.py index 4035619..5c6a06c 100644 --- a/src/silvimetric/__init__.py +++ b/src/silvimetric/__init__.py @@ -1,4 +1,4 @@ -__version__ = '1.2.3' +__version__ = '1.3.0' from .resources.bounds import Bounds from .resources.extents import Extents diff --git a/src/silvimetric/commands/extract.py b/src/silvimetric/commands/extract.py index 04dafeb..0cd2afc 100644 --- a/src/silvimetric/commands/extract.py +++ b/src/silvimetric/commands/extract.py @@ -2,7 +2,7 @@ from itertools import chain -from typing import Union +from typing_extensions import Union from osgeo import gdal, osr import dask import numpy as np diff --git a/src/silvimetric/commands/info.py b/src/silvimetric/commands/info.py index 48dcf61..7fb6786 100644 --- a/src/silvimetric/commands/info.py +++ b/src/silvimetric/commands/info.py @@ -1,6 +1,6 @@ from datetime import datetime from uuid import UUID -from typing import Union +from typing_extensions import Union from .. import Storage, Bounds diff --git a/src/silvimetric/commands/shatter.py b/src/silvimetric/commands/shatter.py index bd9213c..3c96ae1 100644 --- a/src/silvimetric/commands/shatter.py +++ b/src/silvimetric/commands/shatter.py @@ -2,7 +2,7 @@ import signal import datetime import copy -from typing import Generator +from typing_extensions import Generator import pandas as pd import tiledb diff --git a/src/silvimetric/resources/array_extensions.py b/src/silvimetric/resources/array_extensions.py index 36b07c0..dcdb3ce 100644 --- a/src/silvimetric/resources/array_extensions.py +++ b/src/silvimetric/resources/array_extensions.py @@ -1,6 +1,6 @@ from __future__ import annotations -from typing import Sequence +from typing_extensions import Sequence import re diff --git a/src/silvimetric/resources/config.py b/src/silvimetric/resources/config.py index 19f02fe..7736599 100644 --- a/src/silvimetric/resources/config.py +++ b/src/silvimetric/resources/config.py @@ -6,7 +6,7 @@ from pathlib import Path from abc import ABC, abstractmethod -from typing import Union, Tuple +from typing_extensions import Union, Tuple from datetime import datetime from dataclasses import dataclass, field diff --git a/src/silvimetric/resources/log.py b/src/silvimetric/resources/log.py index 4b99be1..e2e09d8 100644 --- a/src/silvimetric/resources/log.py +++ b/src/silvimetric/resources/log.py @@ -9,8 +9,7 @@ import pathlib import sys -from typing import Any -from typing import Dict +from typing_extensions import Any, Dict try: import websocket diff --git a/src/silvimetric/resources/metric.py b/src/silvimetric/resources/metric.py index 15790df..4fbc6bd 100644 --- a/src/silvimetric/resources/metric.py +++ b/src/silvimetric/resources/metric.py @@ -1,7 +1,8 @@ import json import base64 -from typing import Callable, Optional, Any, Union, List, Self +from typing_extensions import Self, Callable, Optional, Any, Union, List + from uuid import uuid4 from functools import reduce diff --git a/src/silvimetric/resources/storage.py b/src/silvimetric/resources/storage.py index 60eb3eb..631fac2 100644 --- a/src/silvimetric/resources/storage.py +++ b/src/silvimetric/resources/storage.py @@ -6,7 +6,7 @@ import contextlib import json import urllib -from typing import Generator +from typing_extensions import Generator from math import floor diff --git a/tests/conftest.py b/tests/conftest.py index 9849d70..19cc9e3 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -4,7 +4,7 @@ import copy from datetime import datetime -from typing import Generator +from typing_extensions import Generator from silvimetric import Extents, Bounds, Attribute, Storage from silvimetric import grid_metrics diff --git a/tests/fixtures/chunk_fixtures.py b/tests/fixtures/chunk_fixtures.py index e27f052..e87feba 100644 --- a/tests/fixtures/chunk_fixtures.py +++ b/tests/fixtures/chunk_fixtures.py @@ -1,7 +1,7 @@ import os import pytest -from typing import Generator, List +from typing_extensions import Generator, List from silvimetric import Extents, Data diff --git a/tests/fixtures/cli_fixtures.py b/tests/fixtures/cli_fixtures.py index d4514e1..b96337f 100644 --- a/tests/fixtures/cli_fixtures.py +++ b/tests/fixtures/cli_fixtures.py @@ -1,5 +1,5 @@ import pytest -from typing import Generator +from typing_extensions import Generator from click.testing import CliRunner from silvimetric.commands import shatter diff --git a/tests/fixtures/command_fixtures.py b/tests/fixtures/command_fixtures.py index 9ef5959..c329f6c 100644 --- a/tests/fixtures/command_fixtures.py +++ b/tests/fixtures/command_fixtures.py @@ -2,7 +2,7 @@ import pytest from time import sleep -from typing import List, Generator +from typing_extensions import List, Generator from datetime import datetime from silvimetric.commands import shatter diff --git a/tests/fixtures/dask_fixtures.py b/tests/fixtures/dask_fixtures.py index 0594744..2c3cffb 100644 --- a/tests/fixtures/dask_fixtures.py +++ b/tests/fixtures/dask_fixtures.py @@ -1,6 +1,6 @@ import pytest import os -from typing import Generator +from typing_extensions import Generator import dask @pytest.fixture(scope="session", autouse=True) diff --git a/tests/fixtures/data_fixtures.py b/tests/fixtures/data_fixtures.py index 78c0c9a..70ba4bb 100644 --- a/tests/fixtures/data_fixtures.py +++ b/tests/fixtures/data_fixtures.py @@ -1,6 +1,6 @@ import pytest import os -from typing import Generator +from typing_extensions import Generator @pytest.fixture(scope='session') def no_cell_line_pc() -> Generator[int, None, None]: diff --git a/tests/fixtures/extract_fixtures.py b/tests/fixtures/extract_fixtures.py index 1104d42..43107ef 100644 --- a/tests/fixtures/extract_fixtures.py +++ b/tests/fixtures/extract_fixtures.py @@ -2,7 +2,7 @@ import os import copy import uuid -from typing import Generator +from typing_extensions import Generator from silvimetric.commands.shatter import shatter from silvimetric import Attribute, ExtractConfig, Log, Bounds diff --git a/tests/fixtures/metric_fixtures.py b/tests/fixtures/metric_fixtures.py index 79fbdc5..1299830 100644 --- a/tests/fixtures/metric_fixtures.py +++ b/tests/fixtures/metric_fixtures.py @@ -1,6 +1,6 @@ import os import pytest -from typing import Generator +from typing_extensions import Generator import pandas as pd import numpy as np diff --git a/tests/fixtures/shatter_fixtures.py b/tests/fixtures/shatter_fixtures.py index 8f9cff3..490cc6a 100644 --- a/tests/fixtures/shatter_fixtures.py +++ b/tests/fixtures/shatter_fixtures.py @@ -1,5 +1,5 @@ import pytest -from typing import Generator +from typing_extensions import Generator from uuid import uuid4 import os diff --git a/tests/fixtures/western_fixtures.py b/tests/fixtures/western_fixtures.py index 8fc991f..223b38c 100644 --- a/tests/fixtures/western_fixtures.py +++ b/tests/fixtures/western_fixtures.py @@ -1,5 +1,5 @@ import tempfile -from typing import Generator +from typing_extensions import Generator from silvimetric import Storage, ShatterConfig, Log, Bounds, StorageConfig from silvimetric import __version__ as svversion