dara-core 1.16.0a1__py3-none-any.whl → 1.16.1__py3-none-any.whl

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.
dara/core/auth/base.py CHANGED
@@ -19,7 +19,7 @@ import abc
19
19
  from typing import Any, ClassVar, Dict, Union
20
20
 
21
21
  from fastapi import HTTPException, Response
22
- from pydantic import BaseModel, model_serializer
22
+ from pydantic import model_serializer
23
23
  from typing_extensions import TypedDict
24
24
 
25
25
  from dara.core.auth.definitions import (
@@ -29,6 +29,7 @@ from dara.core.auth.definitions import (
29
29
  TokenData,
30
30
  TokenResponse,
31
31
  )
32
+ from dara.core.base_definitions import DaraBaseModel as BaseModel
32
33
 
33
34
 
34
35
  class AuthComponent(TypedDict):
@@ -19,9 +19,10 @@ from contextvars import ContextVar
19
19
  from datetime import datetime
20
20
  from typing import List, Optional, Union
21
21
 
22
- from pydantic import BaseModel
23
22
  from typing_extensions import TypedDict
24
23
 
24
+ from dara.core.base_definitions import DaraBaseModel as BaseModel
25
+
25
26
 
26
27
  class TokenData(BaseModel):
27
28
  """
@@ -33,12 +33,13 @@ from typing import (
33
33
  )
34
34
 
35
35
  from fastapi.middleware import Middleware
36
- from pydantic import BaseModel, ConfigDict
36
+ from pydantic import ConfigDict
37
37
  from starlette.middleware.base import BaseHTTPMiddleware
38
38
 
39
39
  from dara.core.auth.base import BaseAuthConfig
40
40
  from dara.core.auth.basic import DefaultAuthConfig
41
41
  from dara.core.base_definitions import Action, ActionDef
42
+ from dara.core.base_definitions import DaraBaseModel as BaseModel
42
43
  from dara.core.definitions import (
43
44
  ApiRoute,
44
45
  CallableClassComponent,
dara/core/data_utils.py CHANGED
@@ -21,9 +21,9 @@ from typing import List, Optional, Union
21
21
 
22
22
  import pandas
23
23
  from pandas import DataFrame
24
- from pydantic import BaseModel
25
24
 
26
25
  from dara.core.base_definitions import CacheType
26
+ from dara.core.base_definitions import DaraBaseModel as BaseModel
27
27
  from dara.core.interactivity import (
28
28
  DerivedDataVariable,
29
29
  DerivedVariable,
@@ -42,7 +42,7 @@ from typing import (
42
42
  import anyio
43
43
  from anyio.streams.memory import MemoryObjectReceiveStream, MemoryObjectSendStream
44
44
  from pandas import DataFrame
45
- from pydantic import BaseModel, ConfigDict
45
+ from pydantic import ConfigDict
46
46
  from typing_extensions import deprecated
47
47
 
48
48
  from dara.core.base_definitions import (
@@ -51,6 +51,7 @@ from dara.core.base_definitions import (
51
51
  ActionResolverDef,
52
52
  AnnotatedAction,
53
53
  )
54
+ from dara.core.base_definitions import DaraBaseModel as BaseModel
54
55
  from dara.core.interactivity.data_variable import DataVariable
55
56
  from dara.core.internal.download import generate_download_code
56
57
  from dara.core.internal.registry_lookup import RegistryLookup
@@ -24,8 +24,8 @@ from typing import Any, List, Optional, Tuple, Union
24
24
 
25
25
  import numpy
26
26
  from pandas import DataFrame, Series # pylint: disable=unused-import
27
- from pydantic import BaseModel
28
27
 
28
+ from dara.core.base_definitions import DaraBaseModel as BaseModel
29
29
  from dara.core.logging import dev_logger
30
30
 
31
31
  COLUMN_PREFIX_REGEX = re.compile(r'__(?:col|index)__\d+__')
@@ -21,14 +21,34 @@ from contextlib import contextmanager
21
21
  from contextvars import ContextVar
22
22
  from typing import Any, Callable, Generic, List, Optional, TypeVar
23
23
 
24
- from pydantic import ConfigDict, SerializerFunctionWrapHandler, model_serializer
24
+ from pydantic import (
25
+ ConfigDict,
26
+ SerializerFunctionWrapHandler,
27
+ field_serializer,
28
+ model_serializer,
29
+ )
25
30
 
26
31
  from dara.core.interactivity.derived_data_variable import DerivedDataVariable
27
32
  from dara.core.interactivity.derived_variable import DerivedVariable
28
33
  from dara.core.interactivity.non_data_variable import NonDataVariable
29
34
  from dara.core.internal.utils import call_async
35
+ from dara.core.logging import dev_logger
30
36
  from dara.core.persistence import PersistenceStore
31
37
 
38
+
39
+ def _is_subclass_safe(value: type, base: type) -> bool:
40
+ """
41
+ Check if a class is a subclass of another class. Returns False if the value is not a class.
42
+
43
+ :param value: the class to check
44
+ :param base: the class to check against
45
+ """
46
+ try:
47
+ return issubclass(value, base)
48
+ except TypeError:
49
+ return False
50
+
51
+
32
52
  VARIABLE_INIT_OVERRIDE = ContextVar[Optional[Callable[[dict], dict]]]('VARIABLE_INIT_OVERRIDE', default=None)
33
53
 
34
54
  VariableType = TypeVar('VariableType')
@@ -81,6 +101,29 @@ class Variable(NonDataVariable, Generic[VariableType]):
81
101
  if self.store:
82
102
  call_async(self.store.init, self)
83
103
 
104
+ @field_serializer('default', mode='wrap')
105
+ def serialize_default(self, default: Any, nxt: SerializerFunctionWrapHandler):
106
+ """
107
+ Handle serializing the default value of the Variable using the registry of encoders.
108
+ This ensures that users can define a serializer with config.add_encoder and it will be used
109
+ when serializing the Variable.default.
110
+ """
111
+ from dara.core.internal.encoder_registry import encoder_registry
112
+
113
+ default_type = type(default)
114
+
115
+ try:
116
+ for encoder_type, encoder in encoder_registry.items():
117
+ if default_type is encoder_type or _is_subclass_safe(default_type, encoder_type):
118
+ return encoder['serialize'](default)
119
+ except Exception as e:
120
+ dev_logger.error(
121
+ f'Error serializing default value of Variable {self.uid}, falling back to default serialization',
122
+ error=e,
123
+ )
124
+
125
+ return nxt(default)
126
+
84
127
  @staticmethod
85
128
  @contextmanager
86
129
  def init_override(override: Callable[[dict], dict]):
@@ -22,10 +22,10 @@ from typing import Awaitable, Callable, Optional, Tuple
22
22
  from uuid import uuid4
23
23
 
24
24
  import anyio
25
- from pydantic import BaseModel
26
25
 
27
26
  from dara.core.auth.definitions import USER
28
27
  from dara.core.base_definitions import Cache, CachedRegistryEntry
28
+ from dara.core.base_definitions import DaraBaseModel as BaseModel
29
29
 
30
30
 
31
31
  class DownloadDataEntry(BaseModel):
@@ -193,6 +193,20 @@ encoder_registry: MutableMapping[Type[Any], Encoder] = {
193
193
  ),
194
194
  }
195
195
 
196
+ try:
197
+ # technically you can use dara core without this package
198
+ from cai_causal_graph import CausalGraph, Skeleton
199
+ except ImportError:
200
+ # If the import fails, we don't need to register the encoders for these types
201
+ pass
202
+ else:
203
+ encoder_registry.update(
204
+ {
205
+ CausalGraph: Encoder(serialize=lambda x: x.to_dict(), deserialize=lambda x: CausalGraph.from_dict(x)),
206
+ Skeleton: Encoder(serialize=lambda x: x.to_dict(), deserialize=lambda x: Skeleton.from_dict(x)),
207
+ }
208
+ )
209
+
196
210
 
197
211
  def deserialize(value: Any, typ: Optional[Type]):
198
212
  """
@@ -28,9 +28,9 @@ from typing import (
28
28
  overload,
29
29
  )
30
30
 
31
- from pydantic import BaseModel
32
31
  from typing_extensions import TypedDict, TypeGuard
33
32
 
33
+ from dara.core.base_definitions import DaraBaseModel as BaseModel
34
34
  from dara.core.internal.hashing import hash_object
35
35
 
36
36
  JsonLike = Union[Mapping, List]
@@ -18,7 +18,8 @@ limitations under the License.
18
18
  from typing import Dict, Union
19
19
 
20
20
  from prometheus_client import Info
21
- from pydantic import BaseModel
21
+
22
+ from dara.core.base_definitions import DaraBaseModel as BaseModel
22
23
 
23
24
  cache_metric = Info('cache_size', 'Current size of cache stores and registries', labelnames=['registry_name'])
24
25
 
@@ -18,8 +18,7 @@ limitations under the License.
18
18
  from itertools import chain
19
19
  from sys import getsizeof
20
20
 
21
- from pydantic import BaseModel
22
-
21
+ from dara.core.base_definitions import DaraBaseModel as BaseModel
23
22
  from dara.core.logging import dev_logger
24
23
 
25
24
 
@@ -17,7 +17,7 @@ limitations under the License.
17
17
 
18
18
  from typing import Literal, Optional, Union
19
19
 
20
- from pydantic import BaseModel
20
+ from dara.core.base_definitions import DaraBaseModel as BaseModel
21
21
 
22
22
 
23
23
  class ThemeColors(BaseModel):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: dara-core
3
- Version: 1.16.0a1
3
+ Version: 1.16.1
4
4
  Summary: Dara Framework Core
5
5
  Home-page: https://dara.causalens.com/
6
6
  License: Apache-2.0
@@ -20,10 +20,10 @@ Requires-Dist: async-asgi-testclient (>=1.4.11,<2.0.0)
20
20
  Requires-Dist: certifi (>=2024.7.4)
21
21
  Requires-Dist: click (==8.1.3)
22
22
  Requires-Dist: colorama (>=0.4.6,<0.5.0)
23
- Requires-Dist: create-dara-app (==1.16.0-alpha.1)
23
+ Requires-Dist: create-dara-app (==1.16.1)
24
24
  Requires-Dist: croniter (>=1.0.15,<3.0.0)
25
25
  Requires-Dist: cryptography (>=42.0.4)
26
- Requires-Dist: dara-components (==1.16.0-alpha.1) ; extra == "all"
26
+ Requires-Dist: dara-components (==1.16.1) ; extra == "all"
27
27
  Requires-Dist: exceptiongroup (>=1.1.3,<2.0.0)
28
28
  Requires-Dist: fastapi (==0.109.0)
29
29
  Requires-Dist: fastapi_vite_dara (==0.4.0)
@@ -52,7 +52,7 @@ Description-Content-Type: text/markdown
52
52
 
53
53
  # Dara Application Framework
54
54
 
55
- <img src="https://github.com/causalens/dara/blob/v1.16.0-alpha.1/img/dara_light.svg?raw=true">
55
+ <img src="https://github.com/causalens/dara/blob/v1.16.1/img/dara_light.svg?raw=true">
56
56
 
57
57
  ![Master tests](https://github.com/causalens/dara/actions/workflows/tests.yml/badge.svg?branch=master)
58
58
  [![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](https://www.apache.org/licenses/LICENSE-2.0)
@@ -97,7 +97,7 @@ source .venv/bin/activate
97
97
  dara start
98
98
  ```
99
99
 
100
- ![Dara App](https://github.com/causalens/dara/blob/v1.16.0-alpha.1/img/components_gallery.png?raw=true)
100
+ ![Dara App](https://github.com/causalens/dara/blob/v1.16.1/img/components_gallery.png?raw=true)
101
101
 
102
102
  Note: `pip` installation uses [PEP 660](https://peps.python.org/pep-0660/) `pyproject.toml`-based editable installs which require `pip >= 21.3` and `setuptools >= 64.0.0`. You can upgrade both with:
103
103
 
@@ -114,9 +114,9 @@ Explore some of our favorite apps - a great way of getting started and getting t
114
114
 
115
115
  | Dara App | Description |
116
116
  | -------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
117
- | ![Large Language Model](https://github.com/causalens/dara/blob/v1.16.0-alpha.1/img/llm.png?raw=true) | Demonstrates how to use incorporate a LLM chat box into your decision app to understand model insights |
118
- | ![Plot Interactivity](https://github.com/causalens/dara/blob/v1.16.0-alpha.1/img/plot_interactivity.png?raw=true) | Demonstrates how to enable the user to interact with plots, trigger actions based on clicks, mouse movements and other interactions with `Bokeh` or `Plotly` plots |
119
- | ![Graph Editor](https://github.com/causalens/dara/blob/v1.16.0-alpha.1/img/graph_viewer.png?raw=true) | Demonstrates how to use the `CausalGraphViewer` component to display your graphs or networks, customising the displayed information through colors and tooltips, and updating the page based on user interaction. |
117
+ | ![Large Language Model](https://github.com/causalens/dara/blob/v1.16.1/img/llm.png?raw=true) | Demonstrates how to use incorporate a LLM chat box into your decision app to understand model insights |
118
+ | ![Plot Interactivity](https://github.com/causalens/dara/blob/v1.16.1/img/plot_interactivity.png?raw=true) | Demonstrates how to enable the user to interact with plots, trigger actions based on clicks, mouse movements and other interactions with `Bokeh` or `Plotly` plots |
119
+ | ![Graph Editor](https://github.com/causalens/dara/blob/v1.16.1/img/graph_viewer.png?raw=true) | Demonstrates how to use the `CausalGraphViewer` component to display your graphs or networks, customising the displayed information through colors and tooltips, and updating the page based on user interaction. |
120
120
 
121
121
  Check out our [App Gallery](https://dara.causalens.com/gallery) for more inspiration!
122
122
 
@@ -143,9 +143,9 @@ And the supporting UI packages and tools.
143
143
  - `ui-utils` - miscellaneous utility functions
144
144
  - `ui-widgets` - widget components
145
145
 
146
- More information on the repository structure can be found in the [CONTRIBUTING.md](https://github.com/causalens/dara/blob/v1.16.0-alpha.1/CONTRIBUTING.md) file.
146
+ More information on the repository structure can be found in the [CONTRIBUTING.md](https://github.com/causalens/dara/blob/v1.16.1/CONTRIBUTING.md) file.
147
147
 
148
148
  ## License
149
149
 
150
- Dara is open-source and licensed under the [Apache 2.0 License](https://github.com/causalens/dara/blob/v1.16.0-alpha.1/LICENSE).
150
+ Dara is open-source and licensed under the [Apache 2.0 License](https://github.com/causalens/dara/blob/v1.16.1/LICENSE).
151
151
 
@@ -1,30 +1,30 @@
1
1
  dara/core/__init__.py,sha256=eF6Fmf5TkWYIPiZ3CR6kMGinIcFXoA8LQN5m4EpZzHY,2094
2
2
  dara/core/actions.py,sha256=gARcrrtzYuBAVJUCtuHwpFc6PPVPb7x3ITIISCLw0GA,965
3
3
  dara/core/auth/__init__.py,sha256=H0bJoXff5wIRZmHvvQ3y9p5SXA9lM8OuLCGceYGqfb0,851
4
- dara/core/auth/base.py,sha256=u4INu-p9aZyxm73I_fbzwB5MDk5tNpfARu0h545L8Ho,3239
4
+ dara/core/auth/base.py,sha256=qxmiIzx-n2g4ZWicgxsYtHjiB14AemOWM_GNxcr98mE,3294
5
5
  dara/core/auth/basic.py,sha256=IMkoC1OeeRmnmjIqPHpybs8zSdbLlNKYLRvj08ajirg,4692
6
- dara/core/auth/definitions.py,sha256=cPR0viun0paUNBVpP8MdBkcCoSm01qtCJDwjxiqcYS0,3465
6
+ dara/core/auth/definitions.py,sha256=7SoUBlYQhccop4Rl0XlHjSBjBU41ZbCZHS7Y-fL9g84,3501
7
7
  dara/core/auth/routes.py,sha256=1gOe1Z2Vv5MtpW5uvUYvyYWTJ_BDoLRllji1Plk4nss,7180
8
8
  dara/core/auth/utils.py,sha256=sFQWbkclDi2842mhauTeLh5g5RsSrzS7AxlKSSnzhYM,7320
9
9
  dara/core/base_definitions.py,sha256=MoLQ2VdtCtbGun15Zn7gvpgK-HFV3vvi5Xm-HpUYq8U,17661
10
10
  dara/core/cli.py,sha256=uttatNgqyJ86lj_IMLDJsEebh_sR3M2Ka7TncnT_PeU,8080
11
- dara/core/configuration.py,sha256=l_knar1Xwd_svUiiYZUlgZ1uzh-nVt1ZYlfi9Q3CBWU,21156
11
+ dara/core/configuration.py,sha256=w_6MADhjSkbNV3otOdiDnPYYngq_bFeF1fSRabja7Tg,21211
12
12
  dara/core/css.py,sha256=KWCJTPpx4tTezP9VJO3k-RSVhWwomJr-4USoLz9vNAs,1771
13
- dara/core/data_utils.py,sha256=TUbCQkxkMndhwQEAFpvlcNTK13Xq0WlM8uavY9qUy3o,12601
13
+ dara/core/data_utils.py,sha256=5GGz4vk6srLO8HMySiAEk_xZCvmf0SeTTgVi-N4qaKY,12636
14
14
  dara/core/defaults.py,sha256=jRYXdLrEL5NvCDZ2On3Bxije25qvVAduSgrR5PjmUO0,4103
15
15
  dara/core/definitions.py,sha256=QouD2P2XInW6bqrhPtrfIyDi8i99Au2PTBdWBtgBVrE,16713
16
16
  dara/core/http.py,sha256=LR1Kr5Hca-Z6klNl-M8R8Q1eOfFh3hLrjVS3kVrRsKA,4658
17
17
  dara/core/interactivity/__init__.py,sha256=3e5G5Nww33irzs1LinUmfs6wYpmSLPp9e4BHplw3gIk,2294
18
- dara/core/interactivity/actions.py,sha256=IXv60SHWIM5YKLlh6ndCwhwdCBd7XSdPLPoxhWKqJpM,45807
18
+ dara/core/interactivity/actions.py,sha256=O73fDLulESzir-bStKnsogphRghoT2r-szJI5KhI5RY,45862
19
19
  dara/core/interactivity/any_data_variable.py,sha256=1dLLxLuDErRsgaFPSTXxZHvpVucKKty90twQE6N-_NI,5286
20
20
  dara/core/interactivity/any_variable.py,sha256=LOGhbDdYffujlRxF4LR9ZuWdai03R-EXuGsTEJAwfo0,13544
21
21
  dara/core/interactivity/condition.py,sha256=q_RDDt-DtZEUQL054Mc7zHyJIJIGACljJ2gOFygCHQc,1309
22
22
  dara/core/interactivity/data_variable.py,sha256=pvPOx6SMxHWDxoo5Ea5xqLwrBTrWN68x8lnBiblYSGg,11760
23
23
  dara/core/interactivity/derived_data_variable.py,sha256=u2HOts5rtmzK3D1K383YfYYQnb4pHZF3rTu1lfwMpPA,15323
24
24
  dara/core/interactivity/derived_variable.py,sha256=eJXZ6OJgMdi_LJHvEeO-eRNmunONME2_ANu_5WyRPEU,21728
25
- dara/core/interactivity/filtering.py,sha256=NXd4tzWSqSxZXXdhphm9rx9oBpofbejpvKSZy9VSfkI,9162
25
+ dara/core/interactivity/filtering.py,sha256=BZsWsQvXPhn6WUoAFpAtgN6hXlGDudPbi4h97Qao2ic,9197
26
26
  dara/core/interactivity/non_data_variable.py,sha256=ewPaNaTpMixR5YCVY1pjmyHgeC53K0CsjQxMusbJsiw,1147
27
- dara/core/interactivity/plain_variable.py,sha256=M6upKnB8GPE9ENZYTiMSE5dJ1N27cJ-nAyv5MWz74Ps,8250
27
+ dara/core/interactivity/plain_variable.py,sha256=CRDvHgWK2tZQSb8uxK-uIPtvsG1YOcQ5decKXYddeLg,9658
28
28
  dara/core/interactivity/url_variable.py,sha256=1ZPFHO3gq7ZuATHt4S9x5ijmk4GBVlUv5KJN6DkM49w,4357
29
29
  dara/core/internal/__init__.py,sha256=QN0wbG9HPQ_vXh8BO8DnBXeYLIENVTNtRmYzZf1lx7c,577
30
30
  dara/core/internal/cache_store/__init__.py,sha256=7JCmQwNIMzfyLZGnsk0BbT1EdDFO_PRZz86E9ATcC6c,139
@@ -37,12 +37,12 @@ dara/core/internal/cgroup.py,sha256=o1Qqn5LV3TOPK7lQ0xbQj01zYT1pv-X_edGx8VhFvEw,
37
37
  dara/core/internal/custom_response.py,sha256=aSPonh8AdRjioTk1MaPwdaJHkO4R4aG_osGAGCIHbtg,1341
38
38
  dara/core/internal/dependency_resolution.py,sha256=y0CUop-RNNhwZLbafeqjhNEiTY549mLvDyNMTfvEl2Q,5456
39
39
  dara/core/internal/devtools.py,sha256=YmJdYKEqfxrpXFYAM5sJ2wUtUhfvaCMbb9PuDcqFdt4,2441
40
- dara/core/internal/download.py,sha256=raVp0b27XOV1yF5gpbS-IBnXD1Nb4BiRTF6AzYh9pZ8,3148
41
- dara/core/internal/encoder_registry.py,sha256=mcZWUQgsfB8WcfSrHzKP0O-H9qeBiHf767fAvvE6otQ,10372
40
+ dara/core/internal/download.py,sha256=2_fNIWDsV9f0BptTQRhBuIFXOO4th9pcYaIB7lsPcJU,3183
41
+ dara/core/internal/encoder_registry.py,sha256=Jfi1p6qm3xNPH4IoCfOWribqCYHsEU9d7BuV0kVcBWs,10890
42
42
  dara/core/internal/execute_action.py,sha256=4lcU4ElyMlaybIv5oDlahsncJA4PM-6hLOKbtEpHPRI,7021
43
43
  dara/core/internal/hashing.py,sha256=bKskv9n7s83uYVRxva77EC9exMbMZudmWsrsTPmg8W8,1139
44
44
  dara/core/internal/import_discovery.py,sha256=rh9RS-NCkux_dShIe-XXjX2LiJQN8WiJ5cltrb0YlUE,7853
45
- dara/core/internal/normalization.py,sha256=s618icfYaEcxI7vgsQjH54PKeefUE_gYKvDJ-D-iscI,6314
45
+ dara/core/internal/normalization.py,sha256=-9cui65ysEFZFDiH3xzfAG8Jr8VlG-EYnMA-CWTN0gw,6349
46
46
  dara/core/internal/pandas_utils.py,sha256=hWOGZbfuakDulviMpaedpi4mhP45hpe9HSRCiDhlF44,2913
47
47
  dara/core/internal/pool/__init__.py,sha256=pBbXE5GR3abVC9Lg3i0QxfdmsrBDMJUYAYb0SiAEBkk,657
48
48
  dara/core/internal/pool/channel.py,sha256=TbyIE-PnfzzsQYhl3INOs5UIHHbF_h9bMFne5FjbWlQ,4948
@@ -77,9 +77,9 @@ dara/core/log_configs/logging.yaml,sha256=YJyD18psAmSVz6587dcEOyoulLuRFFu1g8yMXl
77
77
  dara/core/logging.py,sha256=QXf8qQDNdh5UW5-jnYwFz7U7KDmhPiZXmObBal_mwPo,13093
78
78
  dara/core/main.py,sha256=wc1Q5GJxZN4MWzhkq0sONO3MrsVtNEIA04YvawmnPZQ,18087
79
79
  dara/core/metrics/__init__.py,sha256=2UqpWHv-Ie58QLJIHJ9Szfjq8xifAuwy5FYGUIFwWtI,823
80
- dara/core/metrics/cache.py,sha256=ybofUhZO0TCHeyhB_AtldWk1QTmTKh7GucTXpOkeTFA,2580
80
+ dara/core/metrics/cache.py,sha256=bGXwjO_rSc-FkS3PnPi1mvIZf1x-hvmG113dAUk1g-Y,2616
81
81
  dara/core/metrics/runtime.py,sha256=YP-6Dz0GeI9_Yr7bUk_-OqShyFySGH_AKpDO126l6es,1833
82
- dara/core/metrics/utils.py,sha256=rYlBinxFc7VehFT5cTNXLk8gC74UEj7ZGq6vLgIDpSg,2247
82
+ dara/core/metrics/utils.py,sha256=aKaa_hskV3M3h4xOGZYvegDLq_OWOEUlslkQKrrPQiI,2281
83
83
  dara/core/persistence.py,sha256=RaGiGQE3oIzEH7kHC1ZXji2VJa0aP0ewMjt1wRWYWjI,10634
84
84
  dara/core/umd/dara.core.umd.js,sha256=dJIDEmWOw_J6bmktPc4M9LxtKT5MEmkTWd8YeLxihA8,4869323
85
85
  dara/core/umd/style.css,sha256=YQtQ4veiSktnyONl0CU1iU1kKfcQhreH4iASi1MP7Ak,4095007
@@ -102,10 +102,10 @@ dara/core/visual/progress_updater.py,sha256=35_fb_F68YjtYf8MMRA76FoajjfPAlutmqz5
102
102
  dara/core/visual/template.py,sha256=y0KJU2913Q10y1TVMpTVnIxIoUsabzYfpUHEGuX2QyM,5707
103
103
  dara/core/visual/themes/__init__.py,sha256=aM4mgoIYo2neBSw5FRzswsht7PUKjLthiHLmFIkyRKw,794
104
104
  dara/core/visual/themes/dark.py,sha256=UQGDooOc8ric73eHs9E0ltYP4UCrwqQ3QxqN_fb4PwY,1942
105
- dara/core/visual/themes/definitions.py,sha256=m3oN0txs65MZepqjj7AKMMxybf2aq5fTjcTwJmHqEbk,2744
105
+ dara/core/visual/themes/definitions.py,sha256=nS_gQvOzCt5hTmj74d0_siq_9QWuj6wNuir4VCHy0Dk,2779
106
106
  dara/core/visual/themes/light.py,sha256=-Tviq8oEwGbdFULoDOqPuHO0UpAZGsBy8qFi0kAGolQ,1944
107
- dara_core-1.16.0a1.dist-info/LICENSE,sha256=r9u1w2RvpLMV6YjuXHIKXRBKzia3fx_roPwboGcLqCc,10944
108
- dara_core-1.16.0a1.dist-info/METADATA,sha256=oKLzWHVK87YMLThSqGRswv9VGnlVNpoAVLmY_nygTjw,7513
109
- dara_core-1.16.0a1.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
110
- dara_core-1.16.0a1.dist-info/entry_points.txt,sha256=H__D5sNIGuPIhVam0DChNL-To5k8Y7nY7TAFz9Mz6cc,139
111
- dara_core-1.16.0a1.dist-info/RECORD,,
107
+ dara_core-1.16.1.dist-info/LICENSE,sha256=r9u1w2RvpLMV6YjuXHIKXRBKzia3fx_roPwboGcLqCc,10944
108
+ dara_core-1.16.1.dist-info/METADATA,sha256=zfnjgw-hLmoDtW7Lq-sTkoKbzxAcOevL2Ea295jwu9E,7439
109
+ dara_core-1.16.1.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
110
+ dara_core-1.16.1.dist-info/entry_points.txt,sha256=H__D5sNIGuPIhVam0DChNL-To5k8Y7nY7TAFz9Mz6cc,139
111
+ dara_core-1.16.1.dist-info/RECORD,,