react-native-nitro-net 0.3.1 → 0.4.1
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/README.md +1 -1
- package/android/CMakeLists.txt +5 -0
- package/android/build.gradle +1 -1
- package/lib/http.d.ts.map +1 -1
- package/lib/http.js +26 -15
- package/lib/net.d.ts.map +1 -1
- package/lib/net.js +10 -1
- package/nitrogen/generated/android/RustCNet+autolinking.cmake +1 -1
- package/nitrogen/generated/android/RustCNet+autolinking.gradle +1 -1
- package/nitrogen/generated/android/RustCNetOnLoad.cpp +1 -1
- package/nitrogen/generated/android/RustCNetOnLoad.hpp +1 -1
- package/nitrogen/generated/android/c++/JFunc_void_double_std__shared_ptr_ArrayBuffer_.hpp +1 -1
- package/nitrogen/generated/android/c++/JHybridHttpParserSpec.cpp +1 -1
- package/nitrogen/generated/android/c++/JHybridHttpParserSpec.hpp +1 -1
- package/nitrogen/generated/android/c++/JHybridNetDriverSpec.cpp +1 -1
- package/nitrogen/generated/android/c++/JHybridNetDriverSpec.hpp +1 -1
- package/nitrogen/generated/android/c++/JHybridNetServerDriverSpec.cpp +1 -1
- package/nitrogen/generated/android/c++/JHybridNetServerDriverSpec.hpp +1 -1
- package/nitrogen/generated/android/c++/JHybridNetSocketDriverSpec.cpp +1 -1
- package/nitrogen/generated/android/c++/JHybridNetSocketDriverSpec.hpp +1 -1
- package/nitrogen/generated/android/c++/JNetConfig.hpp +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/net/Func_void_double_std__shared_ptr_ArrayBuffer_.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/net/HybridHttpParserSpec.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/net/HybridNetDriverSpec.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/net/HybridNetServerDriverSpec.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/net/HybridNetSocketDriverSpec.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/net/NetConfig.kt +1 -1
- package/nitrogen/generated/android/kotlin/com/margelo/nitro/net/RustCNetOnLoad.kt +1 -1
- package/nitrogen/generated/ios/RustCNet+autolinking.rb +1 -1
- package/nitrogen/generated/ios/RustCNet-Swift-Cxx-Bridge.cpp +1 -1
- package/nitrogen/generated/ios/RustCNet-Swift-Cxx-Bridge.hpp +1 -1
- package/nitrogen/generated/ios/RustCNet-Swift-Cxx-Umbrella.hpp +1 -1
- package/nitrogen/generated/ios/RustCNetAutolinking.mm +1 -1
- package/nitrogen/generated/ios/RustCNetAutolinking.swift +1 -1
- package/nitrogen/generated/ios/c++/HybridHttpParserSpecSwift.cpp +1 -1
- package/nitrogen/generated/ios/c++/HybridHttpParserSpecSwift.hpp +1 -1
- package/nitrogen/generated/ios/c++/HybridNetDriverSpecSwift.cpp +1 -1
- package/nitrogen/generated/ios/c++/HybridNetDriverSpecSwift.hpp +1 -1
- package/nitrogen/generated/ios/c++/HybridNetServerDriverSpecSwift.cpp +1 -1
- package/nitrogen/generated/ios/c++/HybridNetServerDriverSpecSwift.hpp +1 -1
- package/nitrogen/generated/ios/c++/HybridNetSocketDriverSpecSwift.cpp +1 -1
- package/nitrogen/generated/ios/c++/HybridNetSocketDriverSpecSwift.hpp +1 -1
- package/nitrogen/generated/ios/swift/Func_void_double_std__shared_ptr_ArrayBuffer_.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridHttpParserSpec.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridHttpParserSpec_cxx.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridNetDriverSpec.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridNetDriverSpec_cxx.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridNetServerDriverSpec.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridNetServerDriverSpec_cxx.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridNetSocketDriverSpec.swift +1 -1
- package/nitrogen/generated/ios/swift/HybridNetSocketDriverSpec_cxx.swift +1 -1
- package/nitrogen/generated/ios/swift/NetConfig.swift +1 -1
- package/nitrogen/generated/shared/c++/HybridHttpParserSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridHttpParserSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/HybridNetDriverSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridNetDriverSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/HybridNetServerDriverSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridNetServerDriverSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/HybridNetSocketDriverSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridNetSocketDriverSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/HybridNitroBufferSpec.cpp +1 -1
- package/nitrogen/generated/shared/c++/HybridNitroBufferSpec.hpp +1 -1
- package/nitrogen/generated/shared/c++/NetConfig.hpp +1 -1
- package/package.json +1 -1
- package/src/http.ts +24 -14
- package/src/net.ts +8 -1
package/README.md
CHANGED
|
@@ -4,7 +4,7 @@ Ultra-high-performance networking to React Native by combining a memory-safe Rus
|
|
|
4
4
|
|
|
5
5
|
[]()
|
|
6
6
|
[]()
|
|
7
|
-
[]()
|
|
8
8
|
[中文文档](./README_zh.md)
|
|
9
9
|
|
|
10
10
|
## Features
|
package/android/CMakeLists.txt
CHANGED
|
@@ -27,3 +27,8 @@ target_link_libraries(${PACKAGE_NAME}
|
|
|
27
27
|
rust_c_net
|
|
28
28
|
log # For android logging
|
|
29
29
|
)
|
|
30
|
+
|
|
31
|
+
# Android 15 16KB page size alignment
|
|
32
|
+
if(ANDROID_ABI STREQUAL "arm64-v8a" OR ANDROID_ABI STREQUAL "x86_64")
|
|
33
|
+
set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-z,max-page-size=16384")
|
|
34
|
+
endif()
|
package/android/build.gradle
CHANGED
|
@@ -23,7 +23,7 @@ android {
|
|
|
23
23
|
externalNativeBuild {
|
|
24
24
|
cmake {
|
|
25
25
|
cppFlags "-fexceptions", "-frtti", "-std=c++20"
|
|
26
|
-
arguments "-DANDROID_STL=c++_shared"
|
|
26
|
+
arguments "-DANDROID_STL=c++_shared", "-DANDROID_SUPPORT_FLEXIBLE_PAGE_SIZES=ON"
|
|
27
27
|
abiFilters (*reactNativeArchitectures())
|
|
28
28
|
}
|
|
29
29
|
}
|
package/lib/http.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
|
package/lib/http.js
CHANGED
|
@@ -7,7 +7,7 @@ import { Buffer } from 'react-native-nitro-buffer';
|
|
|
7
7
|
function debugLog(message) {
|
|
8
8
|
if (isVerbose()) {
|
|
9
9
|
const timestamp = new Date().toISOString().split('T')[1].split('Z')[0];
|
|
10
|
-
|
|
10
|
+
debugLog(`[HTTP DEBUG ${timestamp}] ${message}`);
|
|
11
11
|
}
|
|
12
12
|
}
|
|
13
13
|
// ========== STATUS_CODES ==========
|
|
@@ -269,7 +269,7 @@ export class OutgoingMessage extends Writable {
|
|
|
269
269
|
if (chunk) {
|
|
270
270
|
this.write(chunk, encoding);
|
|
271
271
|
}
|
|
272
|
-
super.end(
|
|
272
|
+
super.end(callback);
|
|
273
273
|
return this;
|
|
274
274
|
}
|
|
275
275
|
setNoDelay(noDelay = true) {
|
|
@@ -332,11 +332,15 @@ export class ServerResponse extends OutgoingMessage {
|
|
|
332
332
|
}
|
|
333
333
|
this._sendResponseHeaders();
|
|
334
334
|
}
|
|
335
|
-
|
|
336
|
-
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
335
|
+
if (typeof chunk === 'function') {
|
|
336
|
+
super.end(chunk);
|
|
337
|
+
}
|
|
338
|
+
else if (chunk == null) {
|
|
339
|
+
super.end(callback);
|
|
340
|
+
}
|
|
341
|
+
else {
|
|
342
|
+
super.end(chunk, encoding, callback);
|
|
343
|
+
}
|
|
340
344
|
return this;
|
|
341
345
|
}
|
|
342
346
|
}
|
|
@@ -493,7 +497,7 @@ export class Server extends EventEmitter {
|
|
|
493
497
|
if (!result || result === '' || result.startsWith('ERROR:')) {
|
|
494
498
|
// Empty result (partial) or error - exit loop
|
|
495
499
|
if (result && result.startsWith('ERROR:')) {
|
|
496
|
-
|
|
500
|
+
debugLog(`[HTTP] Server: Parser error: ${result}`);
|
|
497
501
|
}
|
|
498
502
|
break;
|
|
499
503
|
}
|
|
@@ -846,7 +850,7 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
846
850
|
this.socket = socket;
|
|
847
851
|
this._connected = true;
|
|
848
852
|
this.emit('socket', this.socket);
|
|
849
|
-
|
|
853
|
+
// DO NOT call _sendRequest() here. Headers should only be sent once write() or end() is called.
|
|
850
854
|
this._flushPendingWrites();
|
|
851
855
|
this._attachSocketListeners();
|
|
852
856
|
}
|
|
@@ -863,7 +867,7 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
863
867
|
return;
|
|
864
868
|
}
|
|
865
869
|
debugLog(`ClientRequest._connect: Socket connected! socket=${!!socket}, socket._driver=${!!socket._driver}`);
|
|
866
|
-
|
|
870
|
+
debugLog(`[HTTP] _connect: Socket connected!`);
|
|
867
871
|
this.socket = socket;
|
|
868
872
|
this._connected = true;
|
|
869
873
|
this.emit('socket', this.socket);
|
|
@@ -886,7 +890,7 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
886
890
|
return;
|
|
887
891
|
}
|
|
888
892
|
const parsed = JSON.parse(result);
|
|
889
|
-
|
|
893
|
+
debugLog(`[HTTP] _connect: Parser result: ${parsed.is_headers ? 'HEADERS' : 'DATA'}${parsed.complete ? ' (COMPLETE)' : ''}`);
|
|
890
894
|
if (parsed.is_headers) {
|
|
891
895
|
const status = parsed.status || 0;
|
|
892
896
|
if (status >= 100 && status < 200 && status !== 101) {
|
|
@@ -951,7 +955,7 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
951
955
|
if (!result || result === '' || result.startsWith('ERROR:')) {
|
|
952
956
|
// Empty result (partial) or error - exit loop
|
|
953
957
|
if (result && result.startsWith('ERROR:')) {
|
|
954
|
-
|
|
958
|
+
debugLog(`[HTTP] ClientRequest: Parser error: ${result}`);
|
|
955
959
|
}
|
|
956
960
|
break;
|
|
957
961
|
}
|
|
@@ -960,12 +964,12 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
960
964
|
}
|
|
961
965
|
};
|
|
962
966
|
const onError = (err) => {
|
|
963
|
-
|
|
967
|
+
debugLog(`[HTTP] _connect: Socket error: ${err.message}`);
|
|
964
968
|
this.emit('error', err);
|
|
965
969
|
this._cleanupSocket();
|
|
966
970
|
};
|
|
967
971
|
const onClose = () => {
|
|
968
|
-
|
|
972
|
+
debugLog(`[HTTP] _connect: Socket closed`);
|
|
969
973
|
if (this._res && !this._res.readableEnded)
|
|
970
974
|
this._res.push(null);
|
|
971
975
|
this.emit('close');
|
|
@@ -1030,6 +1034,7 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
1030
1034
|
this._sendHeaders(firstLine);
|
|
1031
1035
|
}
|
|
1032
1036
|
_write(chunk, encoding, callback) {
|
|
1037
|
+
this._hasBody = true;
|
|
1033
1038
|
if (!this._connected) {
|
|
1034
1039
|
this._pendingWrites.push({ chunk, encoding, callback });
|
|
1035
1040
|
return;
|
|
@@ -1039,6 +1044,7 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
1039
1044
|
super._write(chunk, encoding, callback);
|
|
1040
1045
|
}
|
|
1041
1046
|
write(chunk, encoding, callback) {
|
|
1047
|
+
this._hasBody = true;
|
|
1042
1048
|
if (!this._connected) {
|
|
1043
1049
|
this._pendingWrites.push({ chunk, encoding, callback });
|
|
1044
1050
|
return true;
|
|
@@ -1050,6 +1056,11 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
1050
1056
|
end(chunk, encoding, callback) {
|
|
1051
1057
|
debugLog(`ClientRequest.end() called, connected=${this._connected}, headersSent=${this.headersSent}`);
|
|
1052
1058
|
if (chunk) {
|
|
1059
|
+
this._hasBody = true;
|
|
1060
|
+
if (!this.headersSent && !this.hasHeader('Content-Length')) {
|
|
1061
|
+
const len = typeof chunk === 'string' ? Buffer.byteLength(chunk, encoding) : chunk.length;
|
|
1062
|
+
this.setHeader('Content-Length', len);
|
|
1063
|
+
}
|
|
1053
1064
|
this.write(chunk, encoding);
|
|
1054
1065
|
}
|
|
1055
1066
|
this._ended = true;
|
|
@@ -1059,7 +1070,7 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
1059
1070
|
this._sendRequest();
|
|
1060
1071
|
}
|
|
1061
1072
|
// Call super.end only when connected
|
|
1062
|
-
super.end(
|
|
1073
|
+
super.end(callback);
|
|
1063
1074
|
}
|
|
1064
1075
|
else {
|
|
1065
1076
|
// Socket not connected yet - _flushPendingWrites will handle ending
|
package/lib/net.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"net.d.ts","sourceRoot":"","sources":["../src/net.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"net.d.ts","sourceRoot":"","sources":["../src/net.ts"],"names":[],"mappings":"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"}
|
package/lib/net.js
CHANGED
|
@@ -507,7 +507,16 @@ export class Socket extends Duplex {
|
|
|
507
507
|
}
|
|
508
508
|
end(chunk, encoding, cb) {
|
|
509
509
|
debugLog(`Socket (localPort: ${this.localPort}) .end() called`);
|
|
510
|
-
|
|
510
|
+
if (typeof chunk === 'function') {
|
|
511
|
+
super.end(chunk);
|
|
512
|
+
}
|
|
513
|
+
else if (chunk == null) {
|
|
514
|
+
super.end(cb);
|
|
515
|
+
}
|
|
516
|
+
else {
|
|
517
|
+
super.end(chunk, encoding, cb);
|
|
518
|
+
}
|
|
519
|
+
return this;
|
|
511
520
|
}
|
|
512
521
|
_write(chunk, encoding, callback) {
|
|
513
522
|
if (!this._driver) {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
# RustCNet+autolinking.cmake
|
|
3
3
|
# This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
# https://github.com/mrousavy/nitro
|
|
5
|
-
# Copyright ©
|
|
5
|
+
# Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
#
|
|
7
7
|
|
|
8
8
|
# This is a CMake file that adds all files generated by Nitrogen
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// RustCNet+autolinking.gradle
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
/// This is a Gradle file that adds all files generated by Nitrogen
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// RustCNetOnLoad.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#ifndef BUILDING_RUSTCNET_WITH_GENERATED_CMAKE_PROJECT
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// JFunc_void_double_std__shared_ptr_ArrayBuffer_.hpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#pragma once
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// JHybridHttpParserSpec.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "JHybridHttpParserSpec.hpp"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// JHybridNetDriverSpec.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "JHybridNetDriverSpec.hpp"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// JHybridNetServerDriverSpec.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "JHybridNetServerDriverSpec.hpp"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// JHybridNetSocketDriverSpec.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "JHybridNetSocketDriverSpec.hpp"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// Func_void_double_std__shared_ptr_ArrayBuffer_.kt
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
package com.margelo.nitro.net
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridHttpParserSpec.kt
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
package com.margelo.nitro.net
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridNetDriverSpec.kt
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
package com.margelo.nitro.net
|
package/nitrogen/generated/android/kotlin/com/margelo/nitro/net/HybridNetServerDriverSpec.kt
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridNetServerDriverSpec.kt
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
package com.margelo.nitro.net
|
package/nitrogen/generated/android/kotlin/com/margelo/nitro/net/HybridNetSocketDriverSpec.kt
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridNetSocketDriverSpec.kt
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
package com.margelo.nitro.net
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
# RustCNet+autolinking.rb
|
|
3
3
|
# This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
# https://github.com/mrousavy/nitro
|
|
5
|
-
# Copyright ©
|
|
5
|
+
# Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
#
|
|
7
7
|
|
|
8
8
|
# This is a Ruby script that adds all files generated by Nitrogen
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// RustCNet-Swift-Cxx-Bridge.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "RustCNet-Swift-Cxx-Bridge.hpp"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// RustCNetAutolinking.mm
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#import <Foundation/Foundation.h>
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// RustCNetAutolinking.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
public final class RustCNetAutolinking {
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridHttpParserSpecSwift.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "HybridHttpParserSpecSwift.hpp"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridNetDriverSpecSwift.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "HybridNetDriverSpecSwift.hpp"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridNetServerDriverSpecSwift.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "HybridNetServerDriverSpecSwift.hpp"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridNetSocketDriverSpecSwift.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "HybridNetSocketDriverSpecSwift.hpp"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// Func_void_double_std__shared_ptr_ArrayBuffer_.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
import Foundation
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridNetServerDriverSpec_cxx.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
import Foundation
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridNetSocketDriverSpec_cxx.swift
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
import Foundation
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridHttpParserSpec.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "HybridHttpParserSpec.hpp"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridNetDriverSpec.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "HybridNetDriverSpec.hpp"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridNetServerDriverSpec.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "HybridNetServerDriverSpec.hpp"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridNetSocketDriverSpec.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "HybridNetSocketDriverSpec.hpp"
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
/// HybridNitroBufferSpec.cpp
|
|
3
3
|
/// This file was generated by nitrogen. DO NOT MODIFY THIS FILE.
|
|
4
4
|
/// https://github.com/mrousavy/nitro
|
|
5
|
-
/// Copyright ©
|
|
5
|
+
/// Copyright © 2026 Marc Rousavy @ Margelo
|
|
6
6
|
///
|
|
7
7
|
|
|
8
8
|
#include "HybridNitroBufferSpec.hpp"
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "react-native-nitro-net",
|
|
3
3
|
"description": "Ultra-high-performance networking to React Native by combining a memory-safe Rust core with the zero-overhead Nitro Modules JSI bridge. Provides Node.js-compatible net, tls, http(s) API.",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.4.1",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./lib/index.js",
|
|
7
7
|
"module": "./lib/index.js",
|
package/src/http.ts
CHANGED
|
@@ -8,7 +8,7 @@ import { Buffer } from 'react-native-nitro-buffer'
|
|
|
8
8
|
function debugLog(message: string) {
|
|
9
9
|
if (isVerbose()) {
|
|
10
10
|
const timestamp = new Date().toISOString().split('T')[1].split('Z')[0];
|
|
11
|
-
|
|
11
|
+
debugLog(`[HTTP DEBUG ${timestamp}] ${message}`);
|
|
12
12
|
}
|
|
13
13
|
}
|
|
14
14
|
|
|
@@ -297,7 +297,7 @@ export class OutgoingMessage extends Writable {
|
|
|
297
297
|
if (chunk) {
|
|
298
298
|
this.write(chunk, encoding);
|
|
299
299
|
}
|
|
300
|
-
super.end(
|
|
300
|
+
super.end(callback);
|
|
301
301
|
return this;
|
|
302
302
|
}
|
|
303
303
|
|
|
@@ -367,10 +367,13 @@ export class ServerResponse extends OutgoingMessage {
|
|
|
367
367
|
}
|
|
368
368
|
this._sendResponseHeaders();
|
|
369
369
|
}
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
|
|
370
|
+
if (typeof chunk === 'function') {
|
|
371
|
+
super.end(chunk);
|
|
372
|
+
} else if (chunk == null) {
|
|
373
|
+
super.end(callback);
|
|
374
|
+
} else {
|
|
375
|
+
super.end(chunk, encoding, callback);
|
|
376
|
+
}
|
|
374
377
|
return this;
|
|
375
378
|
}
|
|
376
379
|
}
|
|
@@ -572,7 +575,7 @@ export class Server extends EventEmitter {
|
|
|
572
575
|
if (!result || result === '' || result.startsWith('ERROR:')) {
|
|
573
576
|
// Empty result (partial) or error - exit loop
|
|
574
577
|
if (result && result.startsWith('ERROR:')) {
|
|
575
|
-
|
|
578
|
+
debugLog(`[HTTP] Server: Parser error: ${result}`);
|
|
576
579
|
}
|
|
577
580
|
break;
|
|
578
581
|
}
|
|
@@ -986,7 +989,7 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
986
989
|
this.socket = socket;
|
|
987
990
|
this._connected = true;
|
|
988
991
|
this.emit('socket', this.socket);
|
|
989
|
-
|
|
992
|
+
// DO NOT call _sendRequest() here. Headers should only be sent once write() or end() is called.
|
|
990
993
|
this._flushPendingWrites();
|
|
991
994
|
this._attachSocketListeners();
|
|
992
995
|
} else {
|
|
@@ -1004,7 +1007,7 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
1004
1007
|
return;
|
|
1005
1008
|
}
|
|
1006
1009
|
debugLog(`ClientRequest._connect: Socket connected! socket=${!!socket}, socket._driver=${!!(socket as any)._driver}`);
|
|
1007
|
-
|
|
1010
|
+
debugLog(`[HTTP] _connect: Socket connected!`);
|
|
1008
1011
|
this.socket = socket;
|
|
1009
1012
|
this._connected = true;
|
|
1010
1013
|
this.emit('socket', this.socket);
|
|
@@ -1030,7 +1033,7 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
1030
1033
|
return;
|
|
1031
1034
|
}
|
|
1032
1035
|
const parsed = JSON.parse(result);
|
|
1033
|
-
|
|
1036
|
+
debugLog(`[HTTP] _connect: Parser result: ${parsed.is_headers ? 'HEADERS' : 'DATA'}${parsed.complete ? ' (COMPLETE)' : ''}`);
|
|
1034
1037
|
|
|
1035
1038
|
if (parsed.is_headers) {
|
|
1036
1039
|
const status = parsed.status || 0;
|
|
@@ -1102,7 +1105,7 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
1102
1105
|
if (!result || result === '' || result.startsWith('ERROR:')) {
|
|
1103
1106
|
// Empty result (partial) or error - exit loop
|
|
1104
1107
|
if (result && result.startsWith('ERROR:')) {
|
|
1105
|
-
|
|
1108
|
+
debugLog(`[HTTP] ClientRequest: Parser error: ${result}`);
|
|
1106
1109
|
}
|
|
1107
1110
|
break;
|
|
1108
1111
|
}
|
|
@@ -1112,13 +1115,13 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
1112
1115
|
};
|
|
1113
1116
|
|
|
1114
1117
|
const onError = (err: Error) => {
|
|
1115
|
-
|
|
1118
|
+
debugLog(`[HTTP] _connect: Socket error: ${err.message}`);
|
|
1116
1119
|
this.emit('error', err);
|
|
1117
1120
|
this._cleanupSocket();
|
|
1118
1121
|
};
|
|
1119
1122
|
|
|
1120
1123
|
const onClose = () => {
|
|
1121
|
-
|
|
1124
|
+
debugLog(`[HTTP] _connect: Socket closed`);
|
|
1122
1125
|
if (this._res && !this._res.readableEnded) this._res.push(null);
|
|
1123
1126
|
this.emit('close');
|
|
1124
1127
|
this._cleanupSocket();
|
|
@@ -1189,6 +1192,7 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
1189
1192
|
}
|
|
1190
1193
|
|
|
1191
1194
|
_write(chunk: any, encoding: string, callback: (error?: Error | null) => void) {
|
|
1195
|
+
this._hasBody = true;
|
|
1192
1196
|
if (!this._connected) {
|
|
1193
1197
|
this._pendingWrites.push({ chunk, encoding, callback });
|
|
1194
1198
|
return;
|
|
@@ -1198,6 +1202,7 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
1198
1202
|
}
|
|
1199
1203
|
|
|
1200
1204
|
write(chunk: any, encoding?: any, callback?: any): boolean {
|
|
1205
|
+
this._hasBody = true;
|
|
1201
1206
|
if (!this._connected) {
|
|
1202
1207
|
this._pendingWrites.push({ chunk, encoding, callback });
|
|
1203
1208
|
return true;
|
|
@@ -1209,6 +1214,11 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
1209
1214
|
end(chunk?: any, encoding?: any, callback?: any): this {
|
|
1210
1215
|
debugLog(`ClientRequest.end() called, connected=${this._connected}, headersSent=${this.headersSent}`);
|
|
1211
1216
|
if (chunk) {
|
|
1217
|
+
this._hasBody = true;
|
|
1218
|
+
if (!this.headersSent && !this.hasHeader('Content-Length')) {
|
|
1219
|
+
const len = typeof chunk === 'string' ? Buffer.byteLength(chunk, encoding as any) : chunk.length;
|
|
1220
|
+
this.setHeader('Content-Length', len);
|
|
1221
|
+
}
|
|
1212
1222
|
this.write(chunk, encoding);
|
|
1213
1223
|
}
|
|
1214
1224
|
this._ended = true;
|
|
@@ -1219,7 +1229,7 @@ export class ClientRequest extends OutgoingMessage {
|
|
|
1219
1229
|
this._sendRequest();
|
|
1220
1230
|
}
|
|
1221
1231
|
// Call super.end only when connected
|
|
1222
|
-
super.end(
|
|
1232
|
+
super.end(callback);
|
|
1223
1233
|
} else {
|
|
1224
1234
|
// Socket not connected yet - _flushPendingWrites will handle ending
|
|
1225
1235
|
// Store callback if provided
|
package/src/net.ts
CHANGED
|
@@ -586,7 +586,14 @@ export class Socket extends Duplex {
|
|
|
586
586
|
end(chunk: any, encoding: string, cb?: () => void): this;
|
|
587
587
|
end(chunk?: any, encoding?: any, cb?: any): this {
|
|
588
588
|
debugLog(`Socket (localPort: ${this.localPort}) .end() called`);
|
|
589
|
-
|
|
589
|
+
if (typeof chunk === 'function') {
|
|
590
|
+
super.end(chunk);
|
|
591
|
+
} else if (chunk == null) {
|
|
592
|
+
super.end(cb);
|
|
593
|
+
} else {
|
|
594
|
+
super.end(chunk, encoding, cb);
|
|
595
|
+
}
|
|
596
|
+
return this;
|
|
590
597
|
}
|
|
591
598
|
|
|
592
599
|
_write(chunk: any, encoding: string, callback: (error?: Error | null) => void): void {
|