upgini 1.1.292__tar.gz → 1.1.294__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of upgini might be problematic. Click here for more details.

Files changed (66) hide show
  1. {upgini-1.1.292 → upgini-1.1.294}/PKG-INFO +1 -1
  2. upgini-1.1.294/src/upgini/__about__.py +1 -0
  3. upgini-1.1.294/src/upgini/__init__.py +7 -0
  4. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/data_source/data_source_publisher.py +5 -0
  5. upgini-1.1.294/src/upgini/lazy_import.py +22 -0
  6. upgini-1.1.292/src/upgini/__about__.py +0 -1
  7. upgini-1.1.292/src/upgini/__init__.py +0 -21
  8. {upgini-1.1.292 → upgini-1.1.294}/.gitignore +0 -0
  9. {upgini-1.1.292 → upgini-1.1.294}/LICENSE +0 -0
  10. {upgini-1.1.292 → upgini-1.1.294}/README.md +0 -0
  11. {upgini-1.1.292 → upgini-1.1.294}/pyproject.toml +0 -0
  12. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/ads.py +0 -0
  13. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/ads_management/__init__.py +0 -0
  14. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/ads_management/ads_manager.py +0 -0
  15. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/autofe/__init__.py +0 -0
  16. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/autofe/all_operands.py +0 -0
  17. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/autofe/binary.py +0 -0
  18. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/autofe/date.py +0 -0
  19. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/autofe/feature.py +0 -0
  20. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/autofe/groupby.py +0 -0
  21. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/autofe/operand.py +0 -0
  22. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/autofe/unary.py +0 -0
  23. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/autofe/vector.py +0 -0
  24. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/data_source/__init__.py +0 -0
  25. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/dataset.py +0 -0
  26. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/errors.py +0 -0
  27. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/features_enricher.py +3 -3
  28. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/http.py +0 -0
  29. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/mdc/__init__.py +0 -0
  30. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/mdc/context.py +0 -0
  31. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/metadata.py +0 -0
  32. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/metrics.py +0 -0
  33. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/normalizer/__init__.py +0 -0
  34. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/normalizer/phone_normalizer.py +0 -0
  35. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/resource_bundle/__init__.py +0 -0
  36. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/resource_bundle/exceptions.py +0 -0
  37. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/resource_bundle/strings.properties +0 -0
  38. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/resource_bundle/strings_widget.properties +0 -0
  39. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/sampler/__init__.py +0 -0
  40. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/sampler/base.py +0 -0
  41. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/sampler/random_under_sampler.py +0 -0
  42. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/sampler/utils.py +0 -0
  43. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/search_task.py +0 -0
  44. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/spinner.py +0 -0
  45. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/__init__.py +0 -0
  46. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/base_search_key_detector.py +0 -0
  47. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/blocked_time_series.py +0 -0
  48. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/country_utils.py +0 -0
  49. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/custom_loss_utils.py +0 -0
  50. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/cv_utils.py +0 -0
  51. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/datetime_utils.py +0 -0
  52. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/deduplicate_utils.py +0 -0
  53. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/display_utils.py +0 -0
  54. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/email_utils.py +0 -0
  55. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/fallback_progress_bar.py +0 -0
  56. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/features_validator.py +0 -0
  57. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/format.py +0 -0
  58. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/ip_utils.py +0 -0
  59. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/phone_utils.py +0 -0
  60. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/postal_code_utils.py +0 -0
  61. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/progress_bar.py +0 -0
  62. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/sklearn_ext.py +0 -0
  63. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/target_utils.py +0 -0
  64. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/track_info.py +0 -0
  65. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/utils/warning_counter.py +0 -0
  66. {upgini-1.1.292 → upgini-1.1.294}/src/upgini/version_validator.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: upgini
3
- Version: 1.1.292
3
+ Version: 1.1.294
4
4
  Summary: Intelligent data search & enrichment for Machine Learning
5
5
  Project-URL: Bug Reports, https://github.com/upgini/upgini/issues
6
6
  Project-URL: Homepage, https://upgini.com/
@@ -0,0 +1 @@
1
+ __version__ = "1.1.294"
@@ -0,0 +1,7 @@
1
+ from .lazy_import import LazyImport
2
+
3
+ FeaturesEnricher = LazyImport('upgini.features_enricher', 'FeaturesEnricher')
4
+ SearchKey = LazyImport('upgini.metadata', 'SearchKey')
5
+ RuntimeParameters = LazyImport('upgini.metadata', 'RuntimeParameters')
6
+ CVType = LazyImport('upgini.metadata', 'CVType')
7
+ ModelTaskType = LazyImport('upgini.metadata', 'ModelTaskType')
@@ -95,6 +95,11 @@ class DataSourcePublisher:
95
95
  "With MSISDN and DATE keys one of the snapshot_frequency_days or"
96
96
  " join_date_abs_limit_days parameters is required"
97
97
  )
98
+ if (
99
+ set(search_keys.values()) == {SearchKey.PHONE, SearchKey.DATE}
100
+ or set(search_keys.values()) == {SearchKey.HEM, SearchKey.DATE}
101
+ ) and not date_format:
102
+ raise ValidationError("date_format argument is required for PHONE+DATE and HEM+DATE search keys")
98
103
 
99
104
  request = {
100
105
  "dataTableUri": data_table_uri,
@@ -0,0 +1,22 @@
1
+ import importlib
2
+
3
+
4
+ class LazyImport:
5
+ def __init__(self, module_name, class_name):
6
+ self.module_name = module_name
7
+ self.class_name = class_name
8
+ self._module = None
9
+ self._class = None
10
+
11
+ def _load(self):
12
+ if self._module is None:
13
+ self._module = importlib.import_module(self.module_name)
14
+ self._class = getattr(self._module, self.class_name)
15
+
16
+ def __call__(self, *args, **kwargs):
17
+ self._load()
18
+ return self._class(*args, **kwargs)
19
+
20
+ def __getattr__(self, name):
21
+ self._load()
22
+ return getattr(self._class, name)
@@ -1 +0,0 @@
1
- __version__ = "1.1.292"
@@ -1,21 +0,0 @@
1
- from typing import List
2
-
3
- from .dataset import Dataset
4
- from .features_enricher import FeaturesEnricher # noqa: F401
5
- from .metadata import ( # noqa: F401
6
- FileColumnMeaningType,
7
- FileMetrics,
8
- ModelTaskType,
9
- SearchKey,
10
- )
11
- from .search_task import SearchTask
12
-
13
-
14
- def search_history() -> List[SearchTask]:
15
- # TODO
16
- return []
17
-
18
-
19
- def datasets_history() -> List[Dataset]:
20
- # TODO
21
- return []
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -2557,9 +2557,6 @@ class FeaturesEnricher(TransformerMixin):
2557
2557
  return [c for c, v in search_keys_with_autodetection.items() if v.value.value in keys]
2558
2558
 
2559
2559
  def _validate_X(self, X, is_transform=False) -> pd.DataFrame:
2560
- if _num_samples(X) == 0:
2561
- raise ValidationError(self.bundle.get("x_is_empty"))
2562
-
2563
2560
  if isinstance(X, pd.DataFrame):
2564
2561
  if isinstance(X.columns, pd.MultiIndex) or isinstance(X.index, pd.MultiIndex):
2565
2562
  raise ValidationError(self.bundle.get("x_multiindex_unsupported"))
@@ -2573,6 +2570,9 @@ class FeaturesEnricher(TransformerMixin):
2573
2570
  else:
2574
2571
  raise ValidationError(self.bundle.get("unsupported_x_type").format(type(X)))
2575
2572
 
2573
+ if _num_samples(X) == 0:
2574
+ raise ValidationError(self.bundle.get("x_is_empty"))
2575
+
2576
2576
  if len(set(validated_X.columns)) != len(validated_X.columns):
2577
2577
  raise ValidationError(self.bundle.get("x_contains_dup_columns"))
2578
2578
  if not is_transform and not validated_X.index.is_unique:
File without changes
File without changes
File without changes