@gjsify/http-soup-bridge 0.64.6 → 0.64.8

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.
Files changed (2) hide show
  1. package/meson.build +12 -3
  2. package/package.json +10 -10
package/meson.build CHANGED
@@ -26,10 +26,19 @@ foreach pkg : host_provided
26
26
  : dep
27
27
  endforeach
28
28
 
29
+ # libsoup is NOT left to `dynamic_lookup` like GLib: the host process (gjs) never
30
+ # loads it by itself, so an unrecorded libsoup leaves `soup_*` unbound and the
31
+ # class init dereferences NULL (SIGSEGV on a bare `imports.gi.<Ns>`). It is linked
32
+ # by path instead, which records ITS load command while GLib — absent from the
33
+ # link line — still binds to the host. docs/prebuilds.md § One GLib.
29
34
  soup_dep = dependency('libsoup-3.0', version: '>=3.6')
30
- dependencies += host_system == 'darwin' \
31
- ? soup_dep.partial_dependency(compile_args: true, includes: true) \
32
- : soup_dep
35
+ if host_system == 'darwin'
36
+ dependencies += soup_dep.partial_dependency(compile_args: true, includes: true)
37
+ dependencies += meson.get_compiler('c').find_library('soup-3.0',
38
+ dirs: soup_dep.get_variable(pkgconfig: 'libdir'))
39
+ else
40
+ dependencies += soup_dep
41
+ endif
33
42
 
34
43
  host_provided_link_args = host_system == 'darwin' ? ['-Wl,-undefined,dynamic_lookup'] : []
35
44
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gjsify/http-soup-bridge",
3
- "version": "0.64.6",
3
+ "version": "0.64.8",
4
4
  "description": "Vala-based main-thread bridge for libsoup HTTP server. Marshals SoupServer + SoupServerMessage signals onto the GLib main context and keeps every libsoup boxed type (MessageBody, MessageHeaders, the message's GMainContext ref, the HTTP1 IO GSource) on the C side, so SpiderMonkey GC has no chance to race a libsoup-side cleanup. Used by @gjsify/http to keep MCP/SSE/long-poll workloads stable on GJS.",
5
5
  "type": "module",
6
6
  "main": "lib/esm/index.js",
@@ -64,10 +64,10 @@
64
64
  "@girs/glib-2.0": "5.4.0",
65
65
  "@girs/gobject-2.0": "5.4.0",
66
66
  "@girs/soup-3.0": "5.4.0",
67
- "@gjsify/utils": "^0.64.6"
67
+ "@gjsify/utils": "^0.64.8"
68
68
  },
69
69
  "devDependencies": {
70
- "@gjsify/cli": "^0.64.6",
70
+ "@gjsify/cli": "^0.64.8",
71
71
  "@ts-for-gir/cli": "^4.1.0",
72
72
  "@types/node": "^25.9.2",
73
73
  "typescript": "^6.0.3"
@@ -83,12 +83,12 @@
83
83
  },
84
84
  "homepage": "https://github.com/gjsify/gjsify/tree/main/packages/node/http-soup-bridge#readme",
85
85
  "optionalDependencies": {
86
- "@gjsify/http-soup-bridge-darwin-arm64": "0.64.6",
87
- "@gjsify/http-soup-bridge-darwin-x64": "0.64.6",
88
- "@gjsify/http-soup-bridge-linux-arm64": "0.64.6",
89
- "@gjsify/http-soup-bridge-linux-ppc64": "0.64.6",
90
- "@gjsify/http-soup-bridge-linux-riscv64": "0.64.6",
91
- "@gjsify/http-soup-bridge-linux-s390x": "0.64.6",
92
- "@gjsify/http-soup-bridge-linux-x64": "0.64.6"
86
+ "@gjsify/http-soup-bridge-darwin-arm64": "0.64.8",
87
+ "@gjsify/http-soup-bridge-darwin-x64": "0.64.8",
88
+ "@gjsify/http-soup-bridge-linux-arm64": "0.64.8",
89
+ "@gjsify/http-soup-bridge-linux-ppc64": "0.64.8",
90
+ "@gjsify/http-soup-bridge-linux-riscv64": "0.64.8",
91
+ "@gjsify/http-soup-bridge-linux-s390x": "0.64.8",
92
+ "@gjsify/http-soup-bridge-linux-x64": "0.64.8"
93
93
  }
94
94
  }