Skip to content

feat: publish umd for broser environments#334

Merged
Vadman97 merged 7 commits intomainfrom
vadim/umd
Dec 23, 2025
Merged

feat: publish umd for broser environments#334
Vadman97 merged 7 commits intomainfrom
vadim/umd

Conversation

@Vadman97
Copy link
Contributor

@Vadman97 Vadman97 commented Dec 22, 2025

Summary

Creates a umd build for unpkg and other browser script installations.

How did you test this change?

<html>
<head>
    <script type="text/javascript" src="https://unpkg.com/launchdarkly-js-client-sdk@3.9.0"></script>
    <script type="text/javascript" src="https://unpkg.com/@launchdarkly/session-replay@0.4.12-alpha.1"></script>
    <script type="text/javascript" src="https://unpkg.com/@launchdarkly/observability@0.4.12-alpha.1"></script>
    <script>
        const context = {
            type: 'user',
            key: 'foo@example.com'
        };
        window.ld =
            window.LDClient.initialize('YOUR_LD_CLIENT_ID', context, {
                plugins: [
                    new window.Observability.default({
                        tracingOrigins: true,
                        networkRecording: {
                            enabled: true,
                            recordHeadersAndBody: true
                        }
                    }),
                    new window.SessionReplay.default({
                        privacySetting: 'none',
                    })
                ]
            });

    </script>
</head>
<body>
yooo
</body>
</html>

https://github.com/launchdarkly/observability-sdk/actions/runs/20444345338

Screenshot 2025-12-22 at 13 21 07

Are there any deployment considerations?


Note

Enables browser/CDN script usage by publishing UMD bundles alongside ES builds for both @launchdarkly/observability and @launchdarkly/session-replay.

  • Build: Vite now outputs umd and es formats with named globals (Observability, SessionReplay) and consistent filenames (index.js, index.umd.js)
  • Packaging: package.json switches main/module to ./dist/index.js and adds unpkg/jsdelivr pointing to ./dist/index.umd.js
  • Version: bump both packages to 0.4.12-alpha.1

Written by Cursor Bugbot for commit c921ab0. This will update automatically on new commits. Configure here.

@Vadman97 Vadman97 requested a review from a team as a code owner December 22, 2025 21:21
@Vadman97 Vadman97 force-pushed the vadim/umd branch 2 times, most recently from 2d471e1 to a5dfb60 Compare December 22, 2025 23:39
@Vadman97 Vadman97 changed the title fix: publish umd for broser environments feat: publish umd for broser environments Dec 23, 2025
@Vadman97 Vadman97 merged commit 3e90673 into main Dec 23, 2025
24 checks passed
@Vadman97 Vadman97 deleted the vadim/umd branch December 23, 2025 00:01
Vadman97 pushed a commit that referenced this pull request Dec 23, 2025
🤖 I have created a release *beep* *boop*
---


<details><summary>observability: 0.5.0</summary>

##
[0.5.0](observability-0.4.11...observability-0.5.0)
(2025-12-23)


### Features

* publish umd for broser environments
([#334](#334))
([3e90673](3e90673))
</details>

<details><summary>session-replay: 0.5.0</summary>

##
[0.5.0](session-replay-0.4.11...session-replay-0.5.0)
(2025-12-23)


### Features

* publish umd for broser environments
([#334](#334))
([3e90673](3e90673))
</details>

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Release 0.5.0** for `@launchdarkly/observability` and
`@launchdarkly/session-replay`.
> 
> - Adds UMD bundles for browser use (exposed via `unpkg`/`jsdelivr`
pointing to `dist/index.umd.js`)
> - Updates versions in `package.json` and release manifest
`.release-please-manifest.json`
> - Updates changelogs to reflect the new feature
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
2c28738. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->
abelonogov-ld added a commit that referenced this pull request Jan 8, 2026
* main:
  test: O11Y-908 - Add Android CI workflows (#337)
  chore: release main (#335)
  feat: publish umd for broser environments (#334)
  chore: release main (#333)
  feat: Pause and resume replay capture on app background/foreground (#329)
  fix: Fix compose coordinate offset.  (#331)
  chore: release main (#324)
  fix(highlight.run): correct privacy masking for empty strings (#332)
abelonogov-ld added a commit that referenced this pull request Jan 13, 2026
* main: (29 commits)
  chore: release main (#344)
  feat: Android double masking with frame drop (#342)
  chore: update LaunchDarkly SDK dependencies (#336)
  chore: Android SR - cleanup privacy settings (#341)
  chore: release main (#340)
  feat: Added privacy options: maskViews, maskXMLViewIds, maskImageViews (#339)
  test: O11Y-908 - Add Android CI workflows (#337)
  chore: release main (#335)
  feat: publish umd for broser environments (#334)
  chore: release main (#333)
  feat: Pause and resume replay capture on app background/foreground (#329)
  fix: Fix compose coordinate offset.  (#331)
  chore: release main (#324)
  fix(highlight.run): correct privacy masking for empty strings (#332)
  feat: Android SR Identify support  (#330)
  feat: Gzip compression for Graphql request body (#328)
  docs: Update readme with options refactor (#326)
  feat: Graphql client memory optimization (#325)
  feat: Limit accumulating canvas buffer (#322)
  chore: Fix existing RRwebGraphQLReplayLogExporterTest tests (#321)
  ...
Vadman97 added a commit that referenced this pull request Jan 28, 2026
🤖 I have created a release *beep* *boop*
  ---


  <details><summary>go: 1.0.0</summary>

##
[1.0.0](go/v0.4.0...go/v1.0.0)
(2026-01-28)


  ### Features

* Add configuration to allow adjusting the batch and queue sizes for
logs and spans.
([abecbb6](abecbb6))
* Add export samplers.
([#143](#143))
([76fd41e](76fd41e))
* Add query for sampling config.
([#140](#140))
([6800fb1](6800fb1))
* Add trace based sampling for go plugin.
([#170](#170))
([dacbe76](dacbe76))
* Adjust the default export and queue batch sizes for logs and spans to
match the otel defaults.
([abecbb6](abecbb6))
* Basic go plugin implementation.
([#139](#139))
([48badda](48badda))
* Client-side event sampling custom sampler.
([#142](#142))
([82df812](82df812))
* Sample out children of spans that have been sampled out.
([#155](#155))
([a2d1d6e](a2d1d6e))
* Support Go observability initialization independent of plugins.
([#230](#230))
([ddd6d4b](ddd6d4b))


  ### Bug Fixes

* Fix an issue where logging configuration could over-match for log
records without a message or severity.
([#261](#261))
([500a6bf](500a6bf))
* Fix prealloc lint warning by preallocating slice capacity for error
attributes.
* **go:** configure default logger provider
([#192](#192))
([b97854d](b97854d))
  </details>

  <details><summary>launchdarkly-observability-dotnet: 1.0.0</summary>

##
[1.0.0](launchdarkly-observability-dotnet-0.3.0...launchdarkly-observability-dotnet-1.0.0)
(2026-01-28)


  ### Features

* Add basic config for dotnet plugin.
([#167](#167))
([3203e82](3203e82))
* Add custom sampler for dotnet.
([#175](#175))
([de74b20](de74b20))
* Add export/processor samplers.
([#178](#178))
([2431886](2431886))
* Add graphql query to get sampling config.
([#181](#181))
([ee51f80](ee51f80))
* Add initial plugin for dotnet.
([#173](#173))
([564536d](564536d))
* Add singleton for dotnet.
([#185](#185))
([c32cf1c](c32cf1c))
* Add support for environment variable configuration.
([#205](#205))
([5e3b1e1](5e3b1e1))
* Add support for non-core ASP.Net.
([#199](#199))
([b215109](b215109))
* Allow custom configuration of otel.
([#187](#187))
([54e7214](54e7214))
* Extend logging configuration. Format logs by default.
([#242](#242))
([2003517](2003517))


  ### Bug Fixes

* Make attributes optional for RecordLog.
([#202](#202))
([806ce08](806ce08))
  </details>

  <details><summary>launchdarkly-observability-python: 1.0.0</summary>

##
[1.0.0](launchdarkly-observability-python-0.1.1...launchdarkly-observability-python-1.0.0)
(2026-01-28)


  ### Features

* Add observability plugin support.
([#109](#109))
([7bc32bb](7bc32bb))
* Add sampling exporters.
([#99](#99))
([86a4612](86a4612))


  ### Bug Fixes

* Create span when no active span for error.
([#191](#191))
([0341b0f](0341b0f))
  </details>

  <details><summary>observability-node: 1.0.0</summary>

##
[1.0.0](observability-node-0.3.1...observability-node-1.0.0)
(2026-01-28)


  ### Features

* Update instrumentation configuration for ease of use.
([#112](#112))
([011032f](011032f))


  ### Bug Fixes

* Fix an issue where logging configuration could over-match for log
records without a message or severity.
([#261](#261))
([500a6bf](500a6bf))
  </details>

  <details><summary>observability: 1.0.0</summary>

##
[1.0.0](observability-0.5.2...observability-1.0.0)
(2026-01-28)


  ### Features

* publish umd for browser environments
([#334](#334))
([3e90673](3e90673))
* Version Packages
([#136](#136))
([c271dc8](c271dc8))
  </details>

  <details><summary>session-replay: 1.0.0</summary>

##
[1.0.0](session-replay-0.5.2...session-replay-1.0.0)
(2026-01-28)


  ### Features

* publish umd for browser environments
([#334](#334))
([3e90673](3e90673))
* Version Packages
([#136](#136))
([c271dc8](c271dc8))
  </details>

  <details><summary>launchdarkly-observability-android: 0.25.0</summary>

##
[0.25.0](launchdarkly-observability-android-0.24.0...launchdarkly-observability-android-0.25.0)
(2026-01-28)


  ### Features

* O11Y-969 - Add runtime control for Session Replay capture
([#355](#355))
([1d4398e](1d4398e))
  </details>

  ---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> **Low Risk**
> Mostly version/changelog updates generated by release tooling; the
only code change is a minor Go allocation tweak in error recording with
minimal behavioral risk.
> 
> **Overview**
> Publishes new release versions across the monorepo, marking the Go,
.NET, Node, Python, Browser Observability, and `session-replay` SDKs as
**1.0.0 stable**, and bumping Android to **0.25.0** (Release Please
changelog + manifest/version file updates).
> 
> Includes one small Go runtime change: `recordSpanError` now
preallocates the attribute slice capacity before appending exception
fields and tags (lint/perf-only, no behavior change intended).
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
f343da8. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->

---------

Co-authored-by: Vadim Korolik <vkorolik@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants