# Changelog

## [6.11.0](https://github.com/InteropIO/core-js/compare/v6.10.7...v6.11.0) (2026-07-03)


### Features

* add support for iframes api ([#102](https://github.com/InteropIO/core-js/issues/102)) ([5fef43e](https://github.com/InteropIO/core-js/commit/5fef43e71149694ee52f465163765bdb103fb555))

## [6.10.7](https://github.com/InteropIO/core-js/compare/v6.10.6...v6.10.7) (2026-06-18)


### Bug Fixes

* **bridge:** add missing insights propagation info extraction in upda… ([#69](https://github.com/InteropIO/core-js/issues/69)) ([79b5219](https://github.com/InteropIO/core-js/commit/79b5219a5bf3ed050a3c6218b339c649f2d86174))

## [6.10.6](https://github.com/InteropIO/core-js/compare/v6.10.5...v6.10.6) (2026-06-07)


### Bug Fixes

* **core:** tolerate non-Error throws in handler-error log paths ([#74](https://github.com/InteropIO/core-js/issues/74)) ([7388857](https://github.com/InteropIO/core-js/commit/7388857e83c4bd92ac5018d569a72d339d1c3d35))

## [6.10.5](https://github.com/InteropIO/core-js/compare/v6.10.4...v6.10.5) (2026-05-13)


### Bug Fixes

* **insights:** prevent dist index from requiring missing insights module ([#70](https://github.com/InteropIO/core-js/issues/70)) ([bc35434](https://github.com/InteropIO/core-js/commit/bc354347c3687a743a27bc89268e52123768a0cb))

## [6.10.4](https://github.com/InteropIO/core-js/compare/v6.10.3...v6.10.4) (2026-04-28)


### Bug Fixes

* **build:** only re-export @interopio/otel in ES build output ([#62](https://github.com/InteropIO/core-js/issues/62)) ([0a82686](https://github.com/InteropIO/core-js/commit/0a82686c50e95292d20a774eefc83c9d5c650b74))
* **connection:** preserve original error in login() instead of coercing to [object Object] ([#60](https://github.com/InteropIO/core-js/issues/60)) ([0222dc9](https://github.com/InteropIO/core-js/commit/0222dc9b646084eb3cdbdf3f44bc52bccd107864))
* **connection:** surface useful ws error diagnostics in browser and node ([#63](https://github.com/InteropIO/core-js/issues/63)) ([1209f2b](https://github.com/InteropIO/core-js/commit/1209f2b63becf5d633a5164e74464c8bcf4066b7))
* **deps:** require @interopio/otel &gt;=0.0.222 to avoid broken 0.0.218-0.0.221 ([#58](https://github.com/InteropIO/core-js/issues/58)) ([df3882a](https://github.com/InteropIO/core-js/commit/df3882ac744b4beadb8d59d00407086ac4c87de8))

## [6.10.3](https://github.com/InteropIO/core-js/compare/v6.10.2...v6.10.3) (2026-04-20)


### Bug Fixes

* **deps:** bump protobufjs from 7.5.4 to 7.5.5 (security fixes) ([f517a56](https://github.com/InteropIO/core-js/commit/f517a5678be06521375f4344780c1043acd38ff2))

## [6.10.2](https://github.com/InteropIO/core-js/compare/v6.10.1...v6.10.2) (2026-04-20)


### Bug Fixes

* **bus:** buffer publishes across sleep/wake to prevent message loss ([#50](https://github.com/InteropIO/core-js/issues/50)) ([8d05c5d](https://github.com/InteropIO/core-js/commit/8d05c5d44f50cd06a3a18226996e4a805c3d6edc))

## [6.10.1](https://github.com/InteropIO/core-js/compare/core-v6.10.0...core-v6.10.1) (2026-04-15)


### Bug Fixes

* **bus:** re-subscribe to topics after gateway reconnect ([#25](https://github.com/InteropIO/core-js/issues/25)) ([e92a1b7](https://github.com/InteropIO/core-js/commit/e92a1b758dfaa97b20f592566ad5fc82dee00b29))
* **connection:** G4E-10528 fix connection lifecycle bugs in reconnect and openSocket ([#1](https://github.com/InteropIO/core-js/issues/1)) ([e8a642d](https://github.com/InteropIO/core-js/commit/e8a642de7d05068fbb2a9e65f2bd33ea93506177))
* **interop:** allow empty strings for method definition optional fields ([#47](https://github.com/InteropIO/core-js/issues/47)) ([d1dccec](https://github.com/InteropIO/core-js/commit/d1dccec5e2941fab25dfde3e3a882905bbcdb0cf))
* **interop:** fix invoke targeting with full Instance object ([#24](https://github.com/InteropIO/core-js/issues/24)) ([09cbb4a](https://github.com/InteropIO/core-js/commit/09cbb4a131e0046eb7aca4aca5417877ac2dcb38))
* **types:** align GDObject with actual usage and make it extensible ([#28](https://github.com/InteropIO/core-js/issues/28)) ([d283501](https://github.com/InteropIO/core-js/commit/d28350115823d79259cbb926c189358b6d833831))
* **types:** remove redundant WebSocket declaration from Window interface ([#48](https://github.com/InteropIO/core-js/issues/48)) ([27d4d64](https://github.com/InteropIO/core-js/commit/27d4d6444e55447090eef6c1112c9d9b4b3d8062))
* **utils:** fix TypeError on Object.create(null) in replaceComplexProperties ([#32](https://github.com/InteropIO/core-js/issues/32)) ([6b1f7d8](https://github.com/InteropIO/core-js/commit/6b1f7d8f9421e7dac93eefdaaa71989c46c99c38))

## Changelog

<!-- Historical changelog entries (pre-release-please) -->

### 6.10.0

* feat: io.Connect Browser 4.3

### 6.9.1

* fix: SUP-3418 avoid infinite loop between traces and logs

### 6.9.0

* feat: add insights

### 6.8.1

* fix: fixed additionalOptions decoders for interop.invoke (replaced positiveNumberDecoder with nonNegativeNumberDecoder)

### 6.8.0

* feat: io.Connect Browser 4.2

### 6.7.3

* fix: regressions related to subscribing to touched contexts by default

### 6.7.2

* feat: subscribe to touched contexts by default
* fix: improve context subscribe error handling

### 6.7.1

* fix: repetitive error ('hello' already received once) after ws reconnect
* fix: context get/destroy race condition

### 6.7.0

* feat: io.Connect Browser 4.1

### 6.6.0

* feat: io.Connect Browser 4.0

### 6.5.2

* chore: tslint error fix

### 6.5.1

* chore: bump

### 6.5.0

* feat: io.CB 3.5

### 6.4.3

* fix: incorrect error parsing

### 6.4.2

* fix: ignore peerID when invocation target has instance

### 6.4.1

* chore: added optional uuid to the identity interface

### 6.4.0

* chore: linting and formatting
* chore: io.CB 3.4

### 6.3.4

* fix: Peer disconnect leads to unexpected invocation errors

### 6.3.3

* chore: unified repo bump

### 6.3.2

* fix: removed require calls from dist and switched to non-secure nanoid

### 6.3.1

* fix: reduced context in log errors from GW, returned ws as dependency

### 6.3.0

* feat: io.CB 3.3

### 6.2.2

* fix: logger circular dependency

### 6.2.1

* fix: reconnection issues

### 6.2.0

* fix: allow context domain version to be > 2

### 6.1.0

* chore: bump for io.CB 3.1

### 6.0.3

* chore: updated .d.ts information

### 6.0.2

* chore: updated .npmignore

### 6.0.1

* feat: Introduce the new IO Connect Core

### 5.12.0

* feat: added support for re-branded global iodesktop

### 5.11.1

* fix: handle ACTIVITY_JOINED or ACTIVITY_CREATED before JOINED_ACTIVITY

### 5.11.0

* fix: contexts deep clone now uses lodash cloneDeep internally instead of a custom function
* fix: fixed an issue where the contexts api will call the constructor of the provided object when deep cloning, which might throw if it expects args

### 5.10.3

* fix: referential mutation bug in context.update()

### 5.10.2

* fix: fixed contexts edge cases G4E-6022, G4E-6023

### 5.10.1

* chore: fixed linting errors

### 5.10.0

* feat: reworked the web-platform transport to recursively search for a gw

### 5.9.0

* feat: added experimental support for running the platform as a workspace frame inside an iframe
* fix: updated ws to ^8.12.1, which fixes a regression in ws when bundling for the browser

### 5.8.0

* feat: updated all dependencies to the latest major versions

### 5.7.10

* chore: added missing changelog to the published bundle

### 5.7.9

* chore: updated rollup build to use a clean dist dir

### 5.7.8

* fix: iframes now have unique ids every time, even after top refresh

### 5.7.7

* fix: Improved the message flushing when re-announcing the contexts

### 5.7.6

* chore: refactored the logger level type and added improvements to make the instance and windowId of Web clients the same

### 5.7.5

* fix: the manual unload in the web transport no longer sends a message to the parent window

### 5.7.4

* fix: improved backwards compatibility in node instances registration

### 5.7.3

* feat: allow node instances to be registered using RegisterInstance method

### 5.7.2

* feat: added support for a provider context in the authentication object, passed along to the custom Enterprise authenticators

### 5.7.1

* fix: improved the subscriptions restoration after reconnecting
* chore: resolved dependency vulnerabilities

### 5.7.0

* feat: add the possibility to switch the connection transport after the initial connection

### 5.6.3

* fix: improve className reporting in LastBrowserEvent metric

### 5.6.2

* fix: fixed a race between contexts get and subscribe

### 5.6.1

* fix: fixed a race between contexts get and subscribe

### 5.6.0

* feat: added support for GDX (Glue42 Developer Extension)

### 5.5.1

* fix: feedback in core package is now listed correctly as a method

### 5.5.0

* feat: add support for passing custom identity

### 5.4.14

* feat: add support for glue42/electron in core

### 5.4.13

* chore: minor changes to package.json

### 5.4.12

* fix: isLocal should be coming from the resolved identity

### 5.4.11

* chore: resolved dependency vulnerabilities

### 5.4.10

* docs: improved the d.ts for better reference documentation

### 5.4.9

* fix: Glue performance events backwards compat fix

### 5.4.8

* chore: resolved dependency vulnerabilities

### 5.4.7

* chore: resolved dependency vulnerabilities

### 5.4.6

* chore: resolved dependency vulnerabilities

### 5.4.5

* fix: resolved dependency vulnerabilities

### 5.4.4

* fix: metrics - use applicationName for service

### 5.4.3

* fix: web platform transport - now correctly handles the client id of and unloaded client

### 5.4.2

* fix: interop - replace promise.finally to support old Angular apps

### 5.4.1

* fix: metrics - default service to application name
* fix: metrics - use toJSON method of performance entries

### 5.4.0

* feat: expose method's flags in interop (G4E-3780)
* feat: added interop.waitForMethod method that allows waiting for a method to appear
* fix: return unsubscribe functions from legacy interop methods (method_added, method_removed, etc)

### 5.3.0

* feat: official release with support for web transport

### 5.2.8-beta.0

* feat: added web platform transport and beta core release

### 5.2.7

* fix: fixed an issue which will cause the reconnection attempts after disconnect to fail because of a wrong this and also provided the correct reconnect interval

### 5.2.6

* perf: metrics - optimize memory usage (do not wait for response on metrics publish requests)

### 5.2.5

* fix: config - exposed glue.config.application (legacy)

### 5.2.4

* fix: contexts - clone context object when passing to subscribers

### 5.2.3

* fix: contexts - missing delta in update callback

### 5.2.2

* fix: metrics - perf metrics handle promise rejections

### 5.2.1

* fix: contexts - related to GW context protocol v2 support G4E-3353
* fix: logger - change default log level to warn

### 5.2.0

* feat: contexts - GW context protocol v2 support G4E-3353
* fix: contexts - get was returning empty object G4E-3074
* fix: interop - add detailed information when the invocation is timed out G4E-3153
* fix: interop - legacy support - add missing method_added G4E-3152

### 5.1.2

* chore: bumped version after unified file endings for repo-wide npm audit script

### 5.1.1

* fix: logger can try to invoke before interop is ready

### 5.1.0

* feat: extra performance metrics
* feat: respect log level coming from Enterprise configuration
* fix: better timeout error message
* fix: try to fool webpack when requiring ws module
* fix: add legacy methods to glue.agm
* chore: upgraded callback-registry to 2.6.0

### 5.0.7

* fix: extra check for running in browser or node

### 5.0.6

* fix: removed module invalid glue42core module export from d.ts
* fix: proper error when trying to invoke with circular objects

### 5.0.5

* fix: change metrics service to Glue42

### 5.0.4

* fix: metrics identity was missing service, system, instance

### 5.0.3

* fix: methodDefinition's getServers() listed as property, not method ([Glue42/core#62](https://github.com/Glue42/core/issues/62))
* fix: MethodDefinition.getServers() doesn't return expected array ([Glue42/core#60](https://github.com/Glue42/core/issues/60))

### 5.0.2

* feat: added in lerna release pipeline

### 5.0.1

* fix: breaks if server returns null object ("server returns null result" test)

### 5.0.0

* BREAKING CHANGE: removed support for Glue42 v2
