Skip to content

Commit

Permalink
fix: Using repo_config parameter in teardown to allow for feature-sto…
Browse files Browse the repository at this point in the history
…re-yaml overrides (feast-dev#4413)

* fix: using repo_config parameter in teardown to allow for feature-store-yaml overrides

Signed-off-by: Dan Baron <dan.baron@starlingbank.com>

* fix: fixing linting and formatting issues in tests

Signed-off-by: Dan Baron <dan.baron@starlingbank.com>

* fix: removing unnecessary Path object construction

Signed-off-by: Dan Baron <dan.baron@starlingbank.com>

---------

Signed-off-by: Dan Baron <dan.baron@starlingbank.com>
  • Loading branch information
danbaron63 authored Aug 16, 2024
1 parent 721ec74 commit 0baeeb5
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 9 deletions.
2 changes: 1 addition & 1 deletion sdk/python/feast/repo_operations.py
Original file line number Diff line number Diff line change
Expand Up @@ -359,7 +359,7 @@ def apply_total(repo_config: RepoConfig, repo_path: Path, skip_source_validation

def teardown(repo_config: RepoConfig, repo_path: Optional[str]):
# Cannot pass in both repo_path and repo_config to FeatureStore.
feature_store = FeatureStore(repo_path=repo_path, config=None)
feature_store = FeatureStore(repo_path=repo_path, config=repo_config)
feature_store.teardown()


Expand Down
9 changes: 4 additions & 5 deletions sdk/python/feast/transformation/pandas_transformation.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
from types import FunctionType
from typing import Any
from typing import Any, Callable

import dill
import pandas as pd
Expand All @@ -15,7 +14,7 @@


class PandasTransformation:
def __init__(self, udf: FunctionType, udf_string: str = ""):
def __init__(self, udf: Callable[[Any], Any], udf_string: str = ""):
"""
Creates an PandasTransformation object.
Expand All @@ -30,11 +29,11 @@ def __init__(self, udf: FunctionType, udf_string: str = ""):
def transform_arrow(
self, pa_table: pyarrow.Table, features: list[Field]
) -> pyarrow.Table:
output_df_pandas = self.udf.__call__(pa_table.to_pandas())
output_df_pandas = self.udf(pa_table.to_pandas())
return pyarrow.Table.from_pandas(output_df_pandas)

def transform(self, input_df: pd.DataFrame) -> pd.DataFrame:
return self.udf.__call__(input_df)
return self.udf(input_df)

def infer_features(self, random_input: dict[str, list[Any]]) -> list[Field]:
df = pd.DataFrame.from_dict(random_input)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
import tempfile
import uuid
from pathlib import Path
from subprocess import Popen
from typing import Any, Dict, List, Optional

import pandas as pd
Expand Down Expand Up @@ -367,7 +368,7 @@ class RemoteOfflineStoreDataSourceCreator(FileDataSourceCreator):
def __init__(self, project_name: str, *args, **kwargs):
super().__init__(project_name)
self.server_port: int = 0
self.proc = None
self.proc: Optional[Popen[bytes]] = None

def setup(self, registry: RegistryConfig):
parent_offline_config = super().create_offline_store_config()
Expand All @@ -382,13 +383,13 @@ def setup(self, registry: RegistryConfig):
repo_path = Path(tempfile.mkdtemp())
with open(repo_path / "feature_store.yaml", "w") as outfile:
yaml.dump(config.model_dump(by_alias=True), outfile)
repo_path = str(repo_path.resolve())
repo_path = repo_path.resolve()

self.server_port = free_port()
host = "0.0.0.0"
cmd = [
"feast",
"-c" + repo_path,
"-c" + str(repo_path),
"serve_offline",
"--host",
host,
Expand Down

0 comments on commit 0baeeb5

Please sign in to comment.