hmr 0.6.0.1__py3-none-any.whl → 0.6.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.
- {hmr-0.6.0.1.dist-info → hmr-0.6.1.dist-info}/METADATA +1 -1
- hmr-0.6.1.dist-info/RECORD +15 -0
- reactivity/context.py +9 -0
- reactivity/helpers.py +3 -1
- reactivity/hmr/core.py +1 -1
- reactivity/primitives.py +3 -2
- hmr-0.6.0.1.dist-info/RECORD +0 -15
- {hmr-0.6.0.1.dist-info → hmr-0.6.1.dist-info}/WHEEL +0 -0
- {hmr-0.6.0.1.dist-info → hmr-0.6.1.dist-info}/entry_points.txt +0 -0
@@ -0,0 +1,15 @@
|
|
1
|
+
hmr-0.6.1.dist-info/METADATA,sha256=oh3IFCLZsLRhC77Za4DyZ_nTiDVJjdiKnwjiC-v57Zc,1999
|
2
|
+
hmr-0.6.1.dist-info/WHEEL,sha256=tSfRZzRHthuv7vxpI4aehrdN9scLjk-dCJkPLzkHxGg,90
|
3
|
+
hmr-0.6.1.dist-info/entry_points.txt,sha256=g_T0uJ43WgsdG14kkkdaBQuIL0HO-m1qvtjXMP6d060,59
|
4
|
+
reactivity/__init__.py,sha256=pX-RUzkezCC1x4eOWGxNhXbwrbvBLP_3pQuZr9eZz1Y,300
|
5
|
+
reactivity/context.py,sha256=hgf3U4ihtGSVZ8mGvXcjKcO1U5i7lwX-LadDraAjdNg,1402
|
6
|
+
reactivity/functional.py,sha256=jJLEq88w5ag2cXuD1T118uEjnEg37_mqvWmFkb47KVY,1300
|
7
|
+
reactivity/helpers.py,sha256=lLZMc43om6SYufUytYMtIWGA7cOJH3ko2xLyfNm84SM,5978
|
8
|
+
reactivity/hmr/__init__.py,sha256=S5ZIHqCRpevdzWuhS0aCua_S8F0LkK0YNg6IgeTScFQ,177
|
9
|
+
reactivity/hmr/__main__.py,sha256=uIcyjR5gMFIXH_3hS0B3SD00RirVf7GIct-uItx675o,64
|
10
|
+
reactivity/hmr/api.py,sha256=ypS_LyzMH1JbN5cSwamAJ0HEcHMOY7BOIINuJmWJwo8,2283
|
11
|
+
reactivity/hmr/core.py,sha256=X2WZzpnTTrxobkT1NjYPU2UZFWMcUx8JmC4n27cVXF4,11835
|
12
|
+
reactivity/hmr/hooks.py,sha256=jIFpe4CNxfaS9RcR4OIodx_sOZlnJ_IA1T1RtHPXhwU,945
|
13
|
+
reactivity/hmr/utils.py,sha256=h9m7iRXlvsLTrHoXV9gEVbhz3XsPK4KgnStYoCAWE5I,1616
|
14
|
+
reactivity/primitives.py,sha256=_I6mG1qPBH6Vsktlf3-0mXpRO6L1hFhbfRtNMrpVxS8,6906
|
15
|
+
hmr-0.6.1.dist-info/RECORD,,
|
reactivity/context.py
CHANGED
@@ -38,6 +38,15 @@ class Context(NamedTuple):
|
|
38
38
|
def effect(self):
|
39
39
|
return partial(Effect, context=self)
|
40
40
|
|
41
|
+
@contextmanager
|
42
|
+
def untrack(self):
|
43
|
+
computations = self.current_computations[:]
|
44
|
+
self.current_computations.clear()
|
45
|
+
try:
|
46
|
+
yield
|
47
|
+
finally:
|
48
|
+
self.current_computations[:] = computations
|
49
|
+
|
41
50
|
|
42
51
|
def new_context():
|
43
52
|
return Context([], [])
|
reactivity/helpers.py
CHANGED
@@ -99,7 +99,9 @@ class Reactive[K, V](Subscribable, MutableMapping[K, V]):
|
|
99
99
|
|
100
100
|
def __setitem__(self, key: K, value: V):
|
101
101
|
with Batch(force_flush=False, context=self.context):
|
102
|
-
|
102
|
+
old_value = self._signals[key].get(track=False)
|
103
|
+
self._signals[key].set(value)
|
104
|
+
if old_value is self.UNSET:
|
103
105
|
self.notify()
|
104
106
|
|
105
107
|
def __delitem__(self, key: K):
|
reactivity/hmr/core.py
CHANGED
reactivity/primitives.py
CHANGED
@@ -34,8 +34,9 @@ class Subscribable:
|
|
34
34
|
return
|
35
35
|
last = self.context.current_computations[-1]
|
36
36
|
if last is not self:
|
37
|
-
self.
|
38
|
-
|
37
|
+
with self.context.untrack():
|
38
|
+
self.subscribers.add(last)
|
39
|
+
last.dependencies.add(self)
|
39
40
|
|
40
41
|
def notify(self):
|
41
42
|
if self.context.batches:
|
hmr-0.6.0.1.dist-info/RECORD
DELETED
@@ -1,15 +0,0 @@
|
|
1
|
-
hmr-0.6.0.1.dist-info/METADATA,sha256=80LsOLy_tmxX-O6-QfjEz72F0hiT1qtG99CJj0MDeVk,2001
|
2
|
-
hmr-0.6.0.1.dist-info/WHEEL,sha256=tSfRZzRHthuv7vxpI4aehrdN9scLjk-dCJkPLzkHxGg,90
|
3
|
-
hmr-0.6.0.1.dist-info/entry_points.txt,sha256=g_T0uJ43WgsdG14kkkdaBQuIL0HO-m1qvtjXMP6d060,59
|
4
|
-
reactivity/__init__.py,sha256=pX-RUzkezCC1x4eOWGxNhXbwrbvBLP_3pQuZr9eZz1Y,300
|
5
|
-
reactivity/context.py,sha256=mhQE1dXNCk_BbLLv6LQcOWsHh9rl9LyqTdMf7UF6GtY,1160
|
6
|
-
reactivity/functional.py,sha256=jJLEq88w5ag2cXuD1T118uEjnEg37_mqvWmFkb47KVY,1300
|
7
|
-
reactivity/helpers.py,sha256=ZhpsIYoUyUSWaAsvCP7BlYxGhxySxHaU1WdRtHOn95k,5882
|
8
|
-
reactivity/hmr/__init__.py,sha256=S5ZIHqCRpevdzWuhS0aCua_S8F0LkK0YNg6IgeTScFQ,177
|
9
|
-
reactivity/hmr/__main__.py,sha256=uIcyjR5gMFIXH_3hS0B3SD00RirVf7GIct-uItx675o,64
|
10
|
-
reactivity/hmr/api.py,sha256=ypS_LyzMH1JbN5cSwamAJ0HEcHMOY7BOIINuJmWJwo8,2283
|
11
|
-
reactivity/hmr/core.py,sha256=MDgcWQSNuogZA_AEBTq7TC1DsyBCni71Gk_0kVuBSwc,11837
|
12
|
-
reactivity/hmr/hooks.py,sha256=jIFpe4CNxfaS9RcR4OIodx_sOZlnJ_IA1T1RtHPXhwU,945
|
13
|
-
reactivity/hmr/utils.py,sha256=h9m7iRXlvsLTrHoXV9gEVbhz3XsPK4KgnStYoCAWE5I,1616
|
14
|
-
reactivity/primitives.py,sha256=z69PqQxizN2sbursmpKW5SlWshlZZzdLgFH9u8E5eZc,6857
|
15
|
-
hmr-0.6.0.1.dist-info/RECORD,,
|
File without changes
|
File without changes
|