Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/publish.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,5 +23,5 @@ jobs:
- run: npm ci
- run: npm run build -s
- run: npm test
- run: npm publish --ignore-scripts --tag latest
- run: npm publish --ignore-scripts --tag next

26 changes: 26 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,32 @@



<br/>

## v0.4

### v0.4.0
- 🟥 **huge core rewrite**
- 🟥 everything is now sync, not async anymore. stripped of all debouncing and async shenanigans, now calling `tracker.write` (and thus setting signals, updating prism state, etc) immediately executes all downstream subscribers without any delay. this greatly improves our ability to detect and prevent scary catastropic circular-loop crashes. this also avoids async fatigue spreading through your codebases. the downside is that this could lead to worse performance.
- 🍏 new `batch` fn helps you optimize performance -- batched tracker writes are deduped and flushed at the end of the batch, meaning, effects are only called once.
- 🟥 **tracker**
- 🟥 renamed `tracker.notifyRead` to `tracker.read`
- 🟥 renamed `tracker.notifyWrite` to `tracker.write`
- 🟥 **signals/derived**
- 🟥 eliminated all the funky magic class+fn implementations for dead-simple minimal implementations... new signal module is 18 lines...
- 🟥 removed `$count.on` direct subscriptions -- just use effects
- 🟥 removed `$count.value` accessors -- just use hipster-fn syntax
- 🟥 removed `$count.get()` and `$count.set(v)` methods -- just use hipster-fn syntax
- 🟥 removed comparison logic, now all signal value setting always notifies the tracker, doesn't care if there was a real change
- 🟥 removed `lazy` completely removed -- obsoleted by superior new derived implementation that is lazy
- 🟥 **wait**
- 🟥 renamed `WaitDone` to `WaitResult` to better match ok/err/result
- 🟥 renamed `newWait` to `makeWait` because i like it more
- 🟥 renamed `WaitSignal` to `WaitDerived` because that's what it is
- 🟥 renamed `waitResult` to `waitFormal` because i said so



<br/>

## v0.3
Expand Down
Loading