Skip to content

chore: how do we release this to NPM #11

Merged
pauldambra merged 9 commits intomainfrom
chore/releases
Jan 22, 2025
Merged

chore: how do we release this to NPM #11
pauldambra merged 9 commits intomainfrom
chore/releases

Conversation

@pauldambra
Copy link
Member

@pauldambra pauldambra commented Jan 21, 2025

we need to be able to run this alongside upstream rrweb so we can migrate to it slowly

and need to test e.g. recordings from upstream rrweb can be played in our player and vice versa so we can flag both sides of this migration

rrweb releases lots of packages but we don't import them all in posthog

web sdk uses:

"@rrweb/record"
"@rrweb/rrweb-plugin-console-record"
"@rrweb/types"

posthog main uses

"@rrweb/types"
"@rrweb/rrweb-plugin-console-record"
"rrweb"

@github-actions
Copy link
Contributor

github-actions bot commented Jan 21, 2025

Size Change: +120 B (0%)

Total Size: 10.3 MB

Filename Size Change
packages/all/dist/all.cjs 0 B -555 kB (removed) 🏆
packages/all/dist/all.js 0 B -554 kB (removed) 🏆
packages/all/dist/all.umd.cjs 0 B -558 kB (removed) 🏆
packages/all/dist/all.umd.min.cjs 0 B -272 kB (removed) 🏆
packages/record/dist/record.cjs 0 B -376 kB (removed) 🏆
packages/record/dist/record.js 0 B -376 kB (removed) 🏆
packages/record/dist/record.umd.cjs 0 B -379 kB (removed) 🏆
packages/record/dist/record.umd.min.cjs 0 B -182 kB (removed) 🏆
packages/replay/dist/replay.cjs 0 B -388 kB (removed) 🏆
packages/replay/dist/replay.js 0 B -388 kB (removed) 🏆
packages/replay/dist/replay.umd.cjs 0 B -391 kB (removed) 🏆
packages/replay/dist/replay.umd.min.cjs 0 B -194 kB (removed) 🏆
packages/types/dist/types.cjs 0 B -5.63 kB (removed) 🏆
packages/types/dist/types.js 0 B -5.38 kB (removed) 🏆
packages/types/dist/types.umd.cjs 0 B -6.66 kB (removed) 🏆
packages/types/dist/types.umd.min.cjs 0 B -3.41 kB (removed) 🏆
packages/utils/dist/utils.cjs 0 B -6.07 kB (removed) 🏆
packages/utils/dist/utils.js 0 B -5.57 kB (removed) 🏆
packages/utils/dist/utils.umd.cjs 0 B -7.1 kB (removed) 🏆
packages/utils/dist/utils.umd.min.cjs 0 B -3.98 kB (removed) 🏆
packages/all/dist/rrweb-all.cjs 555 kB +555 kB (new file) 🆕
packages/all/dist/rrweb-all.js 554 kB +554 kB (new file) 🆕
packages/all/dist/rrweb-all.umd.cjs 558 kB +558 kB (new file) 🆕
packages/all/dist/rrweb-all.umd.min.cjs 272 kB +272 kB (new file) 🆕
packages/record/dist/rrweb-record.cjs 376 kB +376 kB (new file) 🆕
packages/record/dist/rrweb-record.js 376 kB +376 kB (new file) 🆕
packages/record/dist/rrweb-record.umd.cjs 379 kB +379 kB (new file) 🆕
packages/record/dist/rrweb-record.umd.min.cjs 182 kB +182 kB (new file) 🆕
packages/replay/dist/rrweb-replay.cjs 388 kB +388 kB (new file) 🆕
packages/replay/dist/rrweb-replay.js 388 kB +388 kB (new file) 🆕
packages/replay/dist/rrweb-replay.umd.cjs 391 kB +391 kB (new file) 🆕
packages/replay/dist/rrweb-replay.umd.min.cjs 194 kB +194 kB (new file) 🆕
packages/types/dist/rrweb-types.cjs 5.64 kB +5.64 kB (new file) 🆕
packages/types/dist/rrweb-types.js 5.38 kB +5.38 kB (new file) 🆕
packages/types/dist/rrweb-types.umd.cjs 6.66 kB +6.66 kB (new file) 🆕
packages/types/dist/rrweb-types.umd.min.cjs 3.42 kB +3.42 kB (new file) 🆕
packages/utils/dist/rrweb-utils.cjs 6.07 kB +6.07 kB (new file) 🆕
packages/utils/dist/rrweb-utils.js 5.58 kB +5.58 kB (new file) 🆕
packages/utils/dist/rrweb-utils.umd.cjs 7.1 kB +7.1 kB (new file) 🆕
packages/utils/dist/rrweb-utils.umd.min.cjs 3.99 kB +3.99 kB (new file) 🆕
ℹ️ View Unchanged
Filename Size
packages/packer/dist/base-B40z8PPs.cjs 18.3 kB
packages/packer/dist/base-B40z8PPs.umd.cjs 19.4 kB
packages/packer/dist/base-B40z8PPs.umd.min.cjs 10.1 kB
packages/packer/dist/base-BrE4jft0.js 18.2 kB
packages/packer/dist/pack.cjs 347 B
packages/packer/dist/pack.js 285 B
packages/packer/dist/pack.umd.cjs 2.25 kB
packages/packer/dist/pack.umd.min.cjs 1.73 kB
packages/packer/dist/packer.cjs 257 B
packages/packer/dist/packer.js 136 B
packages/packer/dist/packer.umd.cjs 1.28 kB
packages/packer/dist/packer.umd.min.cjs 1.25 kB
packages/packer/dist/unpack.cjs 769 B
packages/packer/dist/unpack.js 702 B
packages/packer/dist/unpack.umd.cjs 1.79 kB
packages/packer/dist/unpack.umd.min.cjs 1.57 kB
packages/plugins/rrweb-plugin-canvas-webrtc-record/dist/rrweb-plugin-canvas-webrtc-record.cjs 37.6 kB
packages/plugins/rrweb-plugin-canvas-webrtc-record/dist/rrweb-plugin-canvas-webrtc-record.js 37.5 kB
packages/plugins/rrweb-plugin-canvas-webrtc-record/dist/rrweb-plugin-canvas-webrtc-record.umd.cjs 38.7 kB
packages/plugins/rrweb-plugin-canvas-webrtc-record/dist/rrweb-plugin-canvas-webrtc-record.umd.min.cjs 22.9 kB
packages/plugins/rrweb-plugin-canvas-webrtc-replay/dist/rrweb-plugin-canvas-webrtc-replay.cjs 34.3 kB
packages/plugins/rrweb-plugin-canvas-webrtc-replay/dist/rrweb-plugin-canvas-webrtc-replay.js 34.2 kB
packages/plugins/rrweb-plugin-canvas-webrtc-replay/dist/rrweb-plugin-canvas-webrtc-replay.umd.cjs 35.4 kB
packages/plugins/rrweb-plugin-canvas-webrtc-replay/dist/rrweb-plugin-canvas-webrtc-replay.umd.min.cjs 21.2 kB
packages/plugins/rrweb-plugin-console-record/dist/rrweb-plugin-console-record.cjs 15 kB
packages/plugins/rrweb-plugin-console-record/dist/rrweb-plugin-console-record.js 14.9 kB
packages/plugins/rrweb-plugin-console-record/dist/rrweb-plugin-console-record.umd.cjs 16.1 kB
packages/plugins/rrweb-plugin-console-record/dist/rrweb-plugin-console-record.umd.min.cjs 8.03 kB
packages/plugins/rrweb-plugin-console-replay/dist/rrweb-plugin-console-replay.cjs 5.01 kB
packages/plugins/rrweb-plugin-console-replay/dist/rrweb-plugin-console-replay.js 4.9 kB
packages/plugins/rrweb-plugin-console-replay/dist/rrweb-plugin-console-replay.umd.cjs 6.07 kB
packages/plugins/rrweb-plugin-console-replay/dist/rrweb-plugin-console-replay.umd.min.cjs 3.27 kB
packages/plugins/rrweb-plugin-sequential-id-record/dist/rrweb-plugin-sequential-id-record.cjs 681 B
packages/plugins/rrweb-plugin-sequential-id-record/dist/rrweb-plugin-sequential-id-record.js 548 B
packages/plugins/rrweb-plugin-sequential-id-record/dist/rrweb-plugin-sequential-id-record.umd.cjs 1.76 kB
packages/plugins/rrweb-plugin-sequential-id-record/dist/rrweb-plugin-sequential-id-record.umd.min.cjs 1.47 kB
packages/plugins/rrweb-plugin-sequential-id-replay/dist/rrweb-plugin-sequential-id-replay.cjs 933 B
packages/plugins/rrweb-plugin-sequential-id-replay/dist/rrweb-plugin-sequential-id-replay.js 820 B
packages/plugins/rrweb-plugin-sequential-id-replay/dist/rrweb-plugin-sequential-id-replay.umd.cjs 2.01 kB
packages/plugins/rrweb-plugin-sequential-id-replay/dist/rrweb-plugin-sequential-id-replay.umd.min.cjs 1.61 kB
packages/replay/dist/style.css 2.45 kB
packages/replay/dist/style.min.css 1.97 kB
packages/rrdom-nodejs/dist/rrdom-nodejs.cjs 132 kB
packages/rrdom-nodejs/dist/rrdom-nodejs.js 131 kB
packages/rrdom-nodejs/dist/rrdom-nodejs.umd.cjs 134 kB
packages/rrdom-nodejs/dist/rrdom-nodejs.umd.min.cjs 66.9 kB
packages/rrdom/dist/rrdom.cjs 150 kB
packages/rrdom/dist/rrdom.js 149 kB
packages/rrdom/dist/rrdom.umd.cjs 152 kB
packages/rrdom/dist/rrdom.umd.min.cjs 74.1 kB
packages/rrweb-player/dist/events.js 159 kB
packages/rrweb-player/dist/global.css 240 B
packages/rrweb-player/dist/rrweb-player.cjs 460 kB
packages/rrweb-player/dist/rrweb-player.js 460 kB
packages/rrweb-player/dist/rrweb-player.umd.cjs 463 kB
packages/rrweb-player/dist/rrweb-player.umd.min.cjs 223 kB
packages/rrweb-player/dist/style.css 5.57 kB
packages/rrweb-player/dist/style.min.css 5 kB
packages/rrweb-snapshot/dist/rrweb-snapshot.cjs 163 kB
packages/rrweb-snapshot/dist/rrweb-snapshot.js 162 kB
packages/rrweb-snapshot/dist/rrweb-snapshot.umd.cjs 165 kB
packages/rrweb-snapshot/dist/rrweb-snapshot.umd.min.cjs 81.4 kB
packages/rrweb/dist/rrweb.cjs 537 kB
packages/rrweb/dist/rrweb.js 537 kB
packages/rrweb/dist/rrweb.umd.cjs 539 kB
packages/rrweb/dist/rrweb.umd.min.cjs 262 kB
packages/rrweb/dist/style.css 2.45 kB
packages/rrweb/dist/style.min.css 1.97 kB

compressed-size-action

Comment on lines +9 to +101
name: Bump version based on PR label
runs-on: ubuntu-20.04
if: |
github.event.pull_request.merged
&& (
contains(github.event.pull_request.labels.*.name, 'bump patch')
|| contains(github.event.pull_request.labels.*.name, 'bump minor')
|| contains(github.event.pull_request.labels.*.name, 'bump major')
)
steps:
- name: Check out repository
uses: actions/checkout@v4
with:
ref: ${{ github.event.pull_request.base.ref }}
token: ${{ secrets.POSTHOG_BOT_GITHUB_TOKEN }}
fetch-depth: 0

- uses: pnpm/action-setup@v4
with:
version: 8.x.x

- name: Detect version bump type
id: bump-type
run: |
BUMP_TYPE=null
if [[ $BUMP_PATCH_PRESENT == 'true' ]]; then
BUMP_TYPE=patch
fi
if [[ $BUMP_MINOR_PRESENT == 'true' ]]; then
BUMP_TYPE=minor
fi
if [[ $BUMP_MAJOR_PRESENT == 'true' ]]; then
BUMP_TYPE=major
fi
echo "bump-type=$BUMP_TYPE" >> "$GITHUB_OUTPUT"
env:
BUMP_PATCH_PRESENT: ${{ contains(github.event.pull_request.labels.*.name, 'bump patch') }}
BUMP_MINOR_PRESENT: ${{ contains(github.event.pull_request.labels.*.name, 'bump minor') }}
BUMP_MAJOR_PRESENT: ${{ contains(github.event.pull_request.labels.*.name, 'bump major') }}

- name: Determine new version
id: versions
if: steps.bump-type.outputs.bump-type != 'null'
run: |
OLD_VERSION=$(jq ".version" package.json -r)
NEW_VERSION=$(npx semver $OLD_VERSION -i ${{ steps.bump-type.outputs.bump-type }})
echo "old-version=$OLD_VERSION" >> "$GITHUB_OUTPUT"
echo "new-version=$NEW_VERSION" >> "$GITHUB_OUTPUT"

- name: Update version in package.json for packages we import in posthog
if: steps.bump-type.outputs.bump-type != 'null'
run: |
# Define the package paths
PACKAGES=(
"../packages/record"
"../packages/plugins/rrweb-plugin-console-record"
"../packages/types"
"../packages/rrweb"
)

# Loop through each package and update the package.json
for PACKAGE in "${PACKAGES[@]}"; do
PACKAGE_JSON="$PACKAGE/package.json"

if [ -f "$PACKAGE_JSON" ]; then
echo "Updating version in $PACKAGE_JSON"
mv "$PACKAGE_JSON" "$PACKAGE_JSON.old" || { echo "Failed to rename $PACKAGE_JSON"; exit 1; }
jq --indent 4 '.version = "'${{ steps.versions.outputs.new-version }}'"' "$PACKAGE_JSON.old" > "$PACKAGE_JSON" || { echo "Failed to update version in $PACKAGE_JSON"; exit 1; }
rm "$PACKAGE_JSON.old" || { echo "Failed to remove backup file $PACKAGE_JSON.old"; exit 1; }
else
echo "Error: $PACKAGE_JSON does not exist"
exit 1
fi
done

- name: Update CHANGELOG.md
run: |
CHANGELOG_HEADING='## ${{ steps.versions.outputs.new-version }} - '$(date --iso-8601)
CHANGELOG_POINTS=$(git log v${{ steps.versions.outputs.old-version }}..${{ github.event.pull_request.base.ref }} --pretty=format:%s --grep='^.*\d*)$' | sed -e 's/^/- /')
mv CHANGELOG.md CHANGELOG.old.md
echo -e "$CHANGELOG_HEADING\n\n$CHANGELOG_POINTS\n\n$(cat CHANGELOG.old.md)" > CHANGELOG.md
rm CHANGELOG.old.md

- name: Update lockfile
run: pnpm i

- name: Commit bump
if: steps.bump-type.outputs.bump-type != 'null'
uses: EndBug/add-and-commit@v7
with:
branch: ${{ github.event.pull_request.base.ref }}
message: "chore: Bump version to ${{ steps.versions.outputs.new-version }}"
github_token: ${{ secrets.POSTHOG_BOT_GITHUB_TOKEN }}

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions Job or Workflow does not set permissions
token: ${{ secrets.POSTHOG_BOT_GITHUB_TOKEN }}
fetch-depth: 0

- uses: pnpm/action-setup@v4

Check warning

Code scanning / CodeQL

Unpinned tag for a non-immutable Action in workflow Medium

Unpinned 3rd party Action 'Autobump' step
Uses Step
uses 'pnpm/action-setup' with ref 'v4', not a pinned commit hash

- name: Commit bump
if: steps.bump-type.outputs.bump-type != 'null'
uses: EndBug/add-and-commit@v7

Check warning

Code scanning / CodeQL

Unpinned tag for a non-immutable Action in workflow Medium

Unpinned 3rd party Action 'Autobump' step
Uses Step
uses 'EndBug/add-and-commit' with ref 'v7', not a pinned commit hash
@pauldambra pauldambra merged commit 6e0166d into main Jan 22, 2025
12 checks passed
@pauldambra pauldambra deleted the chore/releases branch January 22, 2025 13:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant