@spotify-confidence/openfeature-server-provider-local 0.11.1 → 0.11.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,12 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.11.2](https://github.com/spotify/confidence-resolver/compare/openfeature-provider-js-v0.11.1...openfeature-provider-js-v0.11.2) (2026-04-14)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * free WASM guest request allocation in host functions ([#369](https://github.com/spotify/confidence-resolver/issues/369)) ([dd7ddac](https://github.com/spotify/confidence-resolver/commit/dd7ddac4e22e895c7b08b09064c9dc8bab54c716))
9
+
3
10
  ## [0.11.1](https://github.com/spotify/confidence-resolver/compare/openfeature-provider-js-v0.11.0...openfeature-provider-js-v0.11.1) (2026-03-26)
4
11
 
5
12
 
Binary file
@@ -1418,7 +1418,7 @@ function isObject(value) {
1418
1418
  function isSet$3(value) {
1419
1419
  return value !== null && value !== void 0;
1420
1420
  }
1421
- const VERSION = "0.11.1";
1421
+ const VERSION = "0.11.2";
1422
1422
  const NOOP_LOG_FN = Object.assign(() => {}, { enabled: false });
1423
1423
  const debugBackend = loadDebug();
1424
1424
  const logger$2 = new class LoggerImpl {
@@ -3557,11 +3557,12 @@ var UnsafeWasmResolver = class {
3557
3557
  exports;
3558
3558
  flushCount = 0;
3559
3559
  constructor(module) {
3560
- const { exports } = new WebAssembly.Instance(module, { wasm_msg: { wasm_msg_host_current_time: () => {
3560
+ const { exports } = new WebAssembly.Instance(module, { wasm_msg: { wasm_msg_host_current_time: (requestPtr) => {
3561
+ this.consumeRequest(requestPtr);
3561
3562
  const epochMs = performance.timeOrigin + performance.now();
3562
3563
  const seconds = Math.floor(epochMs / 1e3);
3563
3564
  const nanos = Math.round((epochMs - seconds * 1e3) * 1e6);
3564
- return this.transferRequest({
3565
+ return this.transferResponseSuccess({
3565
3566
  seconds,
3566
3567
  nanos
3567
3568
  }, Timestamp);
@@ -3606,6 +3607,18 @@ var UnsafeWasmResolver = class {
3606
3607
  const resPtr = this.exports.wasm_msg_guest_prometheus_snapshot(reqPtr);
3607
3608
  return this.consumeResponse(resPtr, PrometheusSnapshotResponse).text;
3608
3609
  }
3610
+ consumeRequest(ptr) {
3611
+ if (ptr === 0) return void 0;
3612
+ const { data } = this.consume(ptr, Request);
3613
+ return data;
3614
+ }
3615
+ transferResponseSuccess(value, codec) {
3616
+ const data = codec.encode(value).finish();
3617
+ return this.transfer({ data }, Response$1);
3618
+ }
3619
+ transferResponseError(error$1) {
3620
+ return this.transfer({ error: error$1 }, Response$1);
3621
+ }
3609
3622
  transferRequest(value, codec) {
3610
3623
  const data = codec.encode(value).finish();
3611
3624
  return this.transfer({ data }, Request);