effect icon indicating copy to clipboard operation
effect copied to clipboard

feat(PubSub): implement PubSub.replay

Open dilame opened this issue 1 year ago • 4 comments

Type

  • [ ] Refactor
  • [x] Feature
  • [ ] Bug Fix
  • [ ] Optimization
  • [ ] Documentation Update

Description

Implementation of replay last N values feature for PubSub.replay(bufferSize: N = Infinity).

dilame avatar Jun 25 '24 13:06 dilame

🦋 Changeset detected

Latest commit: 5730680052b781f73f775b44c64a20b99d1203c7

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 30 packages
Name Type
effect Minor
@effect/cli Major
@effect/cluster-browser Major
@effect/cluster-node Major
@effect/cluster-workflow Major
@effect/cluster Major
@effect/experimental Major
@effect/opentelemetry Major
@effect/platform-browser Major
@effect/platform-bun Major
@effect/platform-node-shared Major
@effect/platform-node Major
@effect/platform Major
@effect/printer-ansi Major
@effect/printer Major
@effect/rpc-http Major
@effect/rpc Major
@effect/schema Major
@effect/sql-d1 Major
@effect/sql-drizzle Major
@effect/sql-mssql Major
@effect/sql-mysql2 Major
@effect/sql-pg Major
@effect/sql-sqlite-bun Major
@effect/sql-sqlite-node Major
@effect/sql-sqlite-react-native Major
@effect/sql-sqlite-wasm Major
@effect/sql Major
@effect/typeclass Major
@effect/vitest Major

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

changeset-bot[bot] avatar Jun 25 '24 13:06 changeset-bot[bot]

@mikearnaldi sorry disturbing you, could you please review this PR? This is something i can not implement in userland because most of the implementation logic is located in internals. While i know i can use yarn patch, it's cumbersome because i need to do patch for each new effect version, which is quite often

dilame avatar Jun 29 '24 17:06 dilame

Cc @tim-smart

mikearnaldi avatar Jun 29 '24 17:06 mikearnaldi

On the last PR we mentioned that the replay buffer could be separated from the underlying strategy. I explored that option here: https://github.com/Effect-TS/effect/pull/3135

I think it might be a better option.

tim-smart avatar Jul 01 '24 02:07 tim-smart