code-loader 1.0.170__tar.gz → 1.0.171__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.
- {code_loader-1.0.170 → code_loader-1.0.171}/PKG-INFO +1 -1
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/inner_leap_binder/leapbinder_decorators.py +2 -3
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/mixpanel_tracker.py +20 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/pyproject.toml +1 -1
- {code_loader-1.0.170 → code_loader-1.0.171}/LICENSE +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/README.md +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/__init__.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/contract/__init__.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/contract/datasetclasses.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/contract/enums.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/contract/exceptions.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/contract/mapping.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/contract/responsedataclasses.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/contract/visualizer_classes.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/default_losses.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/default_metrics.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/experiment_api/__init__.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/experiment_api/api.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/experiment_api/cli_config_utils.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/experiment_api/client.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/experiment_api/epoch.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/experiment_api/experiment.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/experiment_api/experiment_context.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/experiment_api/types.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/experiment_api/utils.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/experiment_api/workingspace_config_utils.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/inner_leap_binder/__init__.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/inner_leap_binder/leapbinder.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/leaploader.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/leaploaderbase.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/plot_functions/__init__.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/plot_functions/plot_functions.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/plot_functions/visualize.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/utils.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/visualizers/__init__.py +0 -0
- {code_loader-1.0.170 → code_loader-1.0.171}/code_loader/visualizers/default_visualizers.py +0 -0
{code_loader-1.0.170 → code_loader-1.0.171}/code_loader/inner_leap_binder/leapbinder_decorators.py
RENAMED
|
@@ -961,9 +961,8 @@ def tensorleap_metadata(
|
|
|
961
961
|
def _validate_result(result):
|
|
962
962
|
supported_result_types = (type(None), int, str, bool, float, dict, np.floating,
|
|
963
963
|
np.bool_, np.unsignedinteger, np.signedinteger, np.integer)
|
|
964
|
-
|
|
965
|
-
|
|
966
|
-
expected_type_name=supported_result_types)
|
|
964
|
+
validate_output_structure(result, func_name=user_function.__name__,
|
|
965
|
+
expected_type_name=supported_result_types)
|
|
967
966
|
assert isinstance(result, supported_result_types), \
|
|
968
967
|
(f'{user_function.__name__}() validation failed: '
|
|
969
968
|
f'Unsupported return type. Got {type(result)}. should be any of {str(supported_result_types)}')
|
|
@@ -13,6 +13,7 @@ import mixpanel # type: ignore[import]
|
|
|
13
13
|
logger = logging.getLogger(__name__)
|
|
14
14
|
|
|
15
15
|
TRACKING_VERSION = '1'
|
|
16
|
+
TL_DISABLE_ANALYTICS_ENV_VAR = 'TL_DISABLE_ANALYTICS'
|
|
16
17
|
|
|
17
18
|
|
|
18
19
|
class AnalyticsEvent(str, Enum):
|
|
@@ -143,6 +144,10 @@ class MixpanelTracker:
|
|
|
143
144
|
# Skip tracking if IS_TENSORLEAP_PLATFORM environment variable is set to 'true'
|
|
144
145
|
if os.environ.get('IS_TENSORLEAP_PLATFORM') == 'true':
|
|
145
146
|
return
|
|
147
|
+
|
|
148
|
+
# Skip tracking if TL_DISABLE_ANALYTICS environment variable is set
|
|
149
|
+
if os.environ.get(TL_DISABLE_ANALYTICS_ENV_VAR):
|
|
150
|
+
return
|
|
146
151
|
|
|
147
152
|
try:
|
|
148
153
|
distinct_id = self._get_distinct_id()
|
|
@@ -199,11 +204,24 @@ def get_tracker() -> MixpanelTracker:
|
|
|
199
204
|
return _tracker
|
|
200
205
|
|
|
201
206
|
|
|
207
|
+
def _is_analytics_disabled() -> bool:
|
|
208
|
+
return bool(os.environ.get(TL_DISABLE_ANALYTICS_ENV_VAR))
|
|
209
|
+
|
|
210
|
+
|
|
211
|
+
def disable_analytics() -> None:
|
|
212
|
+
"""Programmatically disable all analytics/Mixpanel tracking."""
|
|
213
|
+
os.environ[TL_DISABLE_ANALYTICS_ENV_VAR] = 'true'
|
|
214
|
+
|
|
215
|
+
|
|
202
216
|
def track_code_loader_loaded(event_properties: Optional[Dict[str, Any]] = None) -> None:
|
|
217
|
+
if _is_analytics_disabled():
|
|
218
|
+
return
|
|
203
219
|
get_tracker().track_code_loader_loaded(event_properties)
|
|
204
220
|
|
|
205
221
|
|
|
206
222
|
def track_integration_test_event(event_name: Union[str, AnalyticsEvent], event_properties: Optional[Dict[str, Any]] = None) -> None:
|
|
223
|
+
if _is_analytics_disabled():
|
|
224
|
+
return
|
|
207
225
|
get_tracker().track_integration_test_event(event_name, event_properties)
|
|
208
226
|
|
|
209
227
|
|
|
@@ -213,6 +231,8 @@ _integration_events_emitted: Set[str] = set()
|
|
|
213
231
|
|
|
214
232
|
def emit_integration_event_once(event_name: Union[str, AnalyticsEvent], props: Dict[str, Any]) -> None:
|
|
215
233
|
"""Emit an integration test event only once per test run."""
|
|
234
|
+
if _is_analytics_disabled():
|
|
235
|
+
return
|
|
216
236
|
event_name_str = str(event_name)
|
|
217
237
|
if event_name_str in _integration_events_emitted:
|
|
218
238
|
return
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_loader-1.0.170 → code_loader-1.0.171}/code_loader/experiment_api/experiment_context.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{code_loader-1.0.170 → code_loader-1.0.171}/code_loader/experiment_api/workingspace_config_utils.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|