\n\nMaybe it's possible to make `ReactiveSequence` generic for both way like this.",[3196],{"name":3186,"color":3187},454,"[hmr] Advanced generic typing","2025-09-25T10:43:48Z","https://github.com/promplate/pyth-on-line/issues/454",0.76092714,{"description":3203,"labels":3204,"number":3205,"owner":3172,"repository":3173,"state":3174,"title":3206,"updated_at":3207,"url":3208,"score":3209},"Related: b38afd8fd9095d6814218ac11ae4275316e3b741",[],348,"[hmr] Need tests for `cache_across_reloads` gc behaviors","2025-07-20T11:39:27Z","https://github.com/promplate/pyth-on-line/issues/348",0.7657669,{"description":3211,"labels":3212,"number":3213,"owner":3172,"repository":3173,"state":3174,"title":3214,"updated_at":3215,"url":3216,"score":3217},"",[],417,"[hmr] `-c` CLI option, just like `python -c`","2025-09-06T17:48:09Z","https://github.com/promplate/pyth-on-line/issues/417",0.77226645,{"description":3219,"labels":3220,"number":3221,"owner":3172,"repository":3173,"state":3174,"title":3222,"updated_at":3223,"url":3224,"score":3225},"There are cases when multiple `Reloader` running in parallel, which is currently not supported because the calling stack in `hmr` is shared between threads.",[],342,"[hmr] `self.on_events(...)` calls should be locked","2025-07-07T18:51:08Z","https://github.com/promplate/pyth-on-line/issues/342",0.77318376,{"description":3227,"labels":3228,"number":3230,"owner":3172,"repository":3173,"state":3174,"title":3231,"updated_at":3232,"url":3233,"score":3234},"This would fix #408, but may not be ideal.\n\n1. Methods `__delitem__`, `__setitem__` (with `check_equality=True`), and `__getitem__` need be updated\n2. Even `__iter__` might need to call `__getitem__` to ensure consistency, or we still can't promise they are in sync\n3. Users can manually sync via simply `self.update(self._data)` if needed\n\nHowever, without this, direct modifications to `__dict__` or `globals()` still won't be accessible through `__getattr__`, as noted in #211—this should be considered.\n",[3229],{"name":3186,"color":3187},431,"[hmr] Add an `strict` option in `ReactiveMappingProxy` to always check `_data.__getitem__`","2025-09-11T06:00:01Z","https://github.com/promplate/pyth-on-line/issues/431",0.7734285,{"description":3236,"labels":3237,"number":3238,"owner":3172,"repository":3173,"state":3174,"title":3239,"updated_at":3240,"url":3241,"score":3242},"https://github.com/promplate/pyth-on-line/blob/a42a228ff2b93e1552f40d18c5a3f9ad53f929b4/src/lib/pyodide/start/notebook.ts#L1\n\n**suggestion:** Hard-coded deep relative import path is brittle\n\nRecommend configuring a module alias or updating the build setup to allow importing `reactivity` with a stable, shorter path.\n\nSuggested implementation:\n\n```typescript\nimport reactivity from \"@hmr/reactivity\";\n\n```\n\nMake sure your build tool (e.g., Vite, Webpack, or tsconfig.json for TypeScript) is configured with an alias like:\n```json\n{\n \"compilerOptions\": {\n \"baseUrl\": \".\",\n \"paths\": {\n \"@hmr/reactivity\": [\"packages/hmr/reactivity\"]\n }\n }\n}\n```\nor the equivalent for your setup.\n\n_Originally posted by @sourcery-ai[bot] in https://github.com/promplate/pyth-on-line/pull/319#discussion_r2145988795_\n ",[],322,"Hard-coded deep relative import path is brittle","2025-06-13T20:23:40Z","https://github.com/promplate/pyth-on-line/issues/322",0.7894121,{"description":3244,"labels":3245,"number":3247,"owner":3172,"repository":3173,"state":3174,"title":3248,"updated_at":3249,"url":3250,"score":3251},"For a standard reaction model:\n\n```\n########## ----> ########### ----> ##########\n# Signal # # Derived # # Effect #\n########## \u003C - - ########### \u003C - - ##########\n```\n\n\nA `Derived` referenced only by `Signal`s is unreachable and should be GC’d, yet we can’t make every `Signal → Derived` reference weak or the `Derived` may vanish too soon.\n\nSolution: give `Derived` an `unsubscribe` method that disposes it once no `BaseComputation` holds it.\n\n> Edit: or in a `BaseComputation.__del__`\n\nWe may also need to remind users not to treat `Derived` as a lazy `Effect`. But wait, then what can they use if they just need a lazy `Effect`? So we may implement a `weak=False` attribute in `Derived` and `AsyncDerived` to allow user control the lifespan of a `Derived` (just like we provide `force_flush=True` for `Batch`s).",[3246],{"name":3183,"color":3184},453,"[hmr] `WeakDerived` or something similar","2025-09-25T06:49:07Z","https://github.com/promplate/pyth-on-line/issues/453",0.7958364,{"description":3253,"labels":3254,"number":3256,"owner":3172,"repository":3173,"state":3174,"title":3257,"updated_at":3258,"url":3259,"score":3260},"### Should support these commands:\r\n\r\n- [ ] `cd`\r\n- [ ] `ls`\r\n- [ ] `python`\r\n- [ ] `python *.py`\r\n- [ ] `python -m *`\r\n\r\nPlus:\r\n\r\n- [ ] Support ` ```sh ` inside markdown (especially `pip install ...`)\r\n- [ ] Support `%pip` and other ipython shortcuts inside notebook",[3255],{"name":3183,"color":3184},59,"[workspace] [markdown] implement a simple shell","2024-09-02T03:09:57Z","https://github.com/promplate/pyth-on-line/issues/59",0.7963549,["Reactive",3262],{},["Set"],["ShallowReactive",3265],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fPdyl99agts7HrSG_gV3xhaJARX7fcByee6xgoaPP6PU":-1},"/promplate/pyth-on-line/430"]