Files
Arnaud HillenandGitHub 029a77b3c2 chore: move posthog-rrweb into the monorepo (#3510)
* chore: move posthog-rrweb into the monorepo

Imports the posthog-rrweb fork (currently published as v0.0.60) into
packages/rrweb/ so that the rrweb packages release from this repo via
the existing changesets pipeline. This collapses the current two-step
publish flow (posthog-rrweb -> npm -> posthog-js) into a single
monorepo release.

Scope of the move:
- Snapshot taken from posthog-rrweb@main; rrvideo, rrweb-player and
  web-extension are intentionally dropped because we do not consume
  them from posthog-js.
- The seven packages we publish today continue to publish from this
  repo: @posthog/rrweb, @posthog/rrweb-types, @posthog/rrweb-utils,
  @posthog/rrdom, @posthog/rrweb-snapshot, @posthog/rrweb-record and
  @posthog/rrweb-plugin-console-record.
- Internal-only packages (rrdom-nodejs, @posthog/rrweb-replay,
  @posthog/rrweb-all, @posthog/rrweb-packer, the experimental plugins)
  are listed under changesets ignore.
- packages/browser now depends on @posthog/rrweb-record,
  @posthog/rrweb-plugin-console-record and @posthog/rrweb-types via
  workspace:* instead of pinned npm versions.

Tooling/config updates:
- pnpm-workspace.yaml gains packages/rrweb/* and
  packages/rrweb/plugins/* globs and a small catalog for vite,
  vite-plugin-dts and esbuild-plugin-umd-wrapper.
- turbo.json picks up vite.config.* as build inputs and adds
  prepublish / check-types tasks used by the rrweb subpackages.
- Root devDependencies hoist esbuild, esbuild-plugin-umd-wrapper and
  rollup-plugin-visualizer so vite builds resolve correctly.
- .npmrc adds a few trust-policy-exclude entries for transitive deps
  brought in by the rrweb tree that lost provenance attestations.
- release.yml extends the publish matrix to the seven publishable
  rrweb packages.
- library-ci.yml adds an rrweb job (vitest + puppeteer under xvfb)
  that only runs when packages/rrweb/** changes.

No runtime behavior changes are intended: the recorder bundle in
packages/browser is byte-identical to main (verified locally), and
the published rrweb packages get a single patch bump via the
accompanying changeset.


* stop using rrweb npm package and point imports to local rrweb

* fix tests

* fix tests

* fix docker build

* fix docker build

* silence false positives

* fix for tue's comment

* pin package version

* add minimal permissions to silence alert
2026-05-05 11:56:21 +01:00

30 lines
526 B
JSON

{
"extends": "../../tsconfig.base.json",
"include": [
"src"
],
"exclude": [
"vite.config.ts",
"vitest.config.ts",
"test"
],
"compilerOptions": {
"rootDir": "src",
"tsBuildInfoFile": "./tsconfig.tsbuildinfo",
// TODO: enable me in the future
// at time of writing (April 2024) there are 6 errors in this package
"strict": false
},
"references": [
{
"path": "../../rrweb"
},
{
"path": "../../types"
},
{
"path": "../../utils"
}
]
}