mirror of
https://github.com/getpaseo/paseo.git
synced 2026-11-08 09:24:41 +00:00
Release terminal WebSocket clients on the JS thread so daemon retries do not exhaust descriptors or join their own IO thread. Preserve Cargo symbols and seal ad-hoc macOS bundles with a library-loading policy that works with hardened runtime. Use rounded border decoration without changing Fabric child layout, and route desktop hover through pointer events and Pressable render props. Include native regressions and reproducible package verification.
46 lines
3.0 KiB
Plaintext
Vendored
46 lines
3.0 KiB
Plaintext
Vendored
Repository: https://github.com/streetwriters/react-native-gpui
|
|
Revision: de11aa265e6fb36c80e8a30315bce6d34a9be7d6
|
|
License: MIT; see LICENSE and the licenses retained within packages.
|
|
|
|
Snapshot: packages/{cli,codegen,core,hermes} and
|
|
modules/{fs,gesture-handler,reanimated,safe-area-context,screens,svg,worklets}.
|
|
Examples, tester, testing package, website, and unused fonts/vector-icons ports
|
|
are not included. Upstream tests and build sources within retained packages stay
|
|
with the snapshot so contributors can inspect and modify the renderer.
|
|
|
|
Local patches (all other retained files match the revision above):
|
|
- packages/core/ReactGpui/rn-gpui/src/node_view.rs: box-none views must not
|
|
install their own pointer area. Otherwise an empty portal overlay redirects
|
|
clicks to its parent, blocking Paseo's sidebar. native.test.ts exercises this
|
|
against the actual app.
|
|
- packages/core/ReactGpui/rn-gpui/src/{node_view,style}.rs: paint uniform solid
|
|
borders with GPUI's rounded border primitive on a decoration child, keeping
|
|
Fabric child coordinates intact. Edge strips cannot draw the corner arcs.
|
|
- packages/core/ReactGpui/rn-gpui-sys/cpp/GpuiJsEngine.h: route Pressability
|
|
hover through the pointer events GPUI emits. The desktop Pressable wrapper
|
|
in src-gpui/Libraries/Components/Pressable also supplies hovered to render
|
|
props; metro.config.js lets a wrapper import its upstream component without
|
|
resolving back to itself. native.test.ts covers callbacks, render props,
|
|
nested row hover and border pixels using appearance-regression.fixture.js.
|
|
- packages/core/src-gpui/Libraries/Components/StatusBar/StatusBar.desktop.js:
|
|
desktop StatusBar implementation, because there is no mobile OS status bar.
|
|
- packages/cli/src/package-desktop.js: ad-hoc sign macOS packages so their
|
|
bundle resources are sealed, with templates/adhoc.entitlements.plist allowing
|
|
bundled ad-hoc dylibs under hardened runtime; covered by package-desktop.test.js.
|
|
- packages/cli/src/commands.js: preserve Cargo's generated dSYM symlink so
|
|
subsequent builds can replace it; copy symbol contents into the distribution
|
|
instead of linking back into the build tree. Covered by commands.test.js.
|
|
- packages/core/ReactCxxPlatform/react/io/WebSocketModule.{cpp,h}: release
|
|
failed and closed connections on the JS thread. Keeping terminal clients
|
|
exhausts file descriptors during daemon retries; deleting them on the IO
|
|
thread would join that same thread. websocket.native.test.ts exercises the
|
|
real RN API against a loopback peer. ReactGpui/rn-gpui-sys/build.rs tracks
|
|
these sources so incremental builds include the fix.
|
|
- packages/core/ReactGpui/rn-gpui-sys/build.rs: pass Cargo's
|
|
MACOSX_DEPLOYMENT_TARGET to CMake. Otherwise source builds default to the
|
|
installed SDK's version even when the app targets an older macOS release.
|
|
|
|
GPUI itself remains a pinned Cargo git dependency. Hermes/React Native prebuilt
|
|
libraries are downloaded by upstream build tooling; this is not an offline or
|
|
fully source-built distribution.
|