This commit is contained in:
pfg
2025-07-25 18:44:14 -07:00
parent e3e38a38da
commit 2db7787660
7 changed files with 49 additions and 55 deletions

View File

@@ -76,13 +76,13 @@ pub const UnixOrHost = union(enum) {
};
pub fn reload(this: *Listener, globalObject: *jsc.JSGlobalObject, callframe: *jsc.CallFrame) bun.JSError!JSValue {
const args = callframe.arguments_old(1);
const args = callframe.arguments();
if (args.len < 1 or (this.listener == .none and this.handlers.active_connections == 0)) {
return globalObject.throw("Expected 1 argument", .{});
}
const opts = args.ptr[0];
const opts = args[0];
if (opts.isEmptyOrUndefinedOrNull() or opts.isBoolean() or !opts.isObject()) {
return globalObject.throwValue(globalObject.toInvalidArguments("Expected options object", .{}));
}
@@ -426,10 +426,10 @@ pub fn dispose(this: *Listener, _: *jsc.JSGlobalObject, _: *jsc.CallFrame) bun.J
}
pub fn stop(this: *Listener, _: *jsc.JSGlobalObject, callframe: *jsc.CallFrame) bun.JSError!JSValue {
const arguments = callframe.arguments_old(1);
const arguments = callframe.arguments();
log("close", .{});
this.doStop(if (arguments.len > 0 and arguments.ptr[0].isBoolean()) arguments.ptr[0].toBoolean() else false);
this.doStop(if (arguments.len > 0 and arguments[0].isBoolean()) arguments[0].toBoolean() else false);
return .js_undefined;
}
@@ -817,13 +817,13 @@ pub fn getsockname(this: *Listener, globalThis: *jsc.JSGlobalObject, callFrame:
pub fn jsAddServerName(global: *jsc.JSGlobalObject, callframe: *jsc.CallFrame) bun.JSError!JSValue {
jsc.markBinding(@src());
const arguments = callframe.arguments_old(3);
const arguments = callframe.arguments();
if (arguments.len < 3) {
return global.throwNotEnoughArguments("addServerName", 3, arguments.len);
}
const listener = arguments.ptr[0];
const listener = arguments[0];
if (listener.as(Listener)) |this| {
return this.addServerName(global, arguments.ptr[1], arguments.ptr[2]);
return this.addServerName(global, arguments[1], arguments[2]);
}
return global.throw("Expected a Listener instance", .{});
}

View File

@@ -13,12 +13,12 @@ pub fn setServername(this: *This, globalObject: *jsc.JSGlobalObject, callframe:
return globalObject.throw("Cannot issue SNI from a TLS server-side socket", .{});
}
const args = callframe.arguments_old(1);
const args = callframe.arguments();
if (args.len < 1) {
return globalObject.throw("Expected 1 argument", .{});
}
const server_name = args.ptr[0];
const server_name = args[0];
if (!server_name.isString()) {
return globalObject.throw("Expected \"serverName\" to be a string", .{});
}
@@ -80,17 +80,17 @@ pub fn getTLSVersion(this: *This, globalObject: *jsc.JSGlobalObject, _: *jsc.Cal
pub fn setMaxSendFragment(this: *This, globalObject: *jsc.JSGlobalObject, callframe: *jsc.CallFrame) bun.JSError!JSValue {
jsc.markBinding(@src());
const args = callframe.arguments_old(1);
const args = callframe.arguments();
if (args.len < 1) {
return globalObject.throw("Expected size to be a number", .{});
}
const arg = args.ptr[0];
const arg = args[0];
if (!arg.isNumber()) {
return globalObject.throw("Expected size to be a number", .{});
}
const size = try args.ptr[0].coerceToInt64(globalObject);
const size = try args[0].coerceToInt64(globalObject);
if (size < 1) {
return globalObject.throw("Expected size to be greater than 1", .{});
}
@@ -105,10 +105,10 @@ pub fn setMaxSendFragment(this: *This, globalObject: *jsc.JSGlobalObject, callfr
pub fn getPeerCertificate(this: *This, globalObject: *jsc.JSGlobalObject, callframe: *jsc.CallFrame) bun.JSError!JSValue {
jsc.markBinding(@src());
const args = callframe.arguments_old(1);
const args = callframe.arguments();
var abbreviated: bool = true;
if (args.len > 0) {
const arg = args.ptr[0];
const arg = args[0];
if (!arg.isBoolean()) {
return globalObject.throw("Expected abbreviated to be a boolean", .{});
}
@@ -317,11 +317,11 @@ pub fn exportKeyingMaterial(this: *This, globalObject: *jsc.JSGlobalObject, call
return .js_undefined;
}
const args = callframe.arguments_old(3);
const args = callframe.arguments();
if (args.len < 2) {
return globalObject.throw("Expected length and label to be provided", .{});
}
const length_arg = args.ptr[0];
const length_arg = args[0];
if (!length_arg.isNumber()) {
return globalObject.throw("Expected length to be a number", .{});
}
@@ -331,7 +331,7 @@ pub fn exportKeyingMaterial(this: *This, globalObject: *jsc.JSGlobalObject, call
return globalObject.throw("Expected length to be a positive number", .{});
}
const label_arg = args.ptr[1];
const label_arg = args[1];
if (!label_arg.isString()) {
return globalObject.throw("Expected label to be a string", .{});
}
@@ -343,7 +343,7 @@ pub fn exportKeyingMaterial(this: *This, globalObject: *jsc.JSGlobalObject, call
const ssl_ptr = this.socket.ssl() orelse return .js_undefined;
if (args.len > 2) {
const context_arg = args.ptr[2];
const context_arg = args[2];
var arena: bun.ArenaAllocator = bun.ArenaAllocator.init(bun.default_allocator);
defer arena.deinit();
@@ -479,13 +479,13 @@ pub fn setSession(this: *This, globalObject: *jsc.JSGlobalObject, callframe: *js
return .js_undefined;
}
const args = callframe.arguments_old(1);
const args = callframe.arguments();
if (args.len < 1) {
return globalObject.throw("Expected session to be a string, Buffer or TypedArray", .{});
}
const session_arg = args.ptr[0];
const session_arg = args[0];
var arena: bun.ArenaAllocator = bun.ArenaAllocator.init(bun.default_allocator);
defer arena.deinit();
@@ -539,13 +539,13 @@ pub fn setVerifyMode(this: *This, globalObject: *jsc.JSGlobalObject, callframe:
return .js_undefined;
}
const args = callframe.arguments_old(2);
const args = callframe.arguments();
if (args.len < 2) {
return globalObject.throw("Expected requestCert and rejectUnauthorized arguments", .{});
}
const request_cert_js = args.ptr[0];
const reject_unauthorized_js = args.ptr[1];
const request_cert_js = args[0];
const reject_unauthorized_js = args[1];
if (!request_cert_js.isBoolean() or !reject_unauthorized_js.isBoolean()) {
return globalObject.throw("Expected requestCert and rejectUnauthorized arguments to be boolean", .{});
}

View File

@@ -649,10 +649,10 @@ pub fn kill(
) bun.JSError!JSValue {
this.this_jsvalue = callframe.this();
const arguments = callframe.arguments_old(1);
const argument = callframe.argumentsAsArray(1)[0];
// If signal is 0, then no actual signal is sent, but error checking
// is still performed.
const sig: SignalCode = try parseSignal(arguments.ptr[0], globalThis);
const sig: SignalCode = try parseSignal(argument, globalThis);
if (globalThis.hasException()) return .zero;

View File

@@ -585,12 +585,12 @@ pub const UDPSocket = struct {
if (this.closed) {
return globalThis.throw("Socket is closed", .{});
}
const arguments = callframe.arguments_old(1);
const arguments = callframe.arguments();
if (arguments.len != 1) {
return globalThis.throwInvalidArguments("Expected 1 argument, got {}", .{arguments.len});
}
const arg = arguments.ptr[0];
const arg = arguments[0];
if (!arg.jsType().isArray()) {
return globalThis.throwInvalidArgumentType("sendMany", "first argument", "array");
}
@@ -662,7 +662,7 @@ pub const UDPSocket = struct {
if (this.closed) {
return globalThis.throw("Socket is closed", .{});
}
const arguments = callframe.arguments_old(3);
const arguments = callframe.arguments();
const dst: ?Destination = brk: {
if (this.connect_info != null) {
if (arguments.len == 1) {
@@ -677,13 +677,13 @@ pub const UDPSocket = struct {
return globalThis.throwInvalidArguments("Expected 3 arguments, got {}", .{arguments.len});
}
break :brk .{
.port = arguments.ptr[1],
.address = arguments.ptr[2],
.port = arguments[1],
.address = arguments[2],
};
}
};
const payload_arg = arguments.ptr[0];
const payload_arg: JSValue = if (arguments.len > 0) arguments[0] else .js_undefined;
var payload_str = jsc.ZigString.Slice.empty;
defer payload_str.deinit();
const payload = brk: {
@@ -802,13 +802,13 @@ pub const UDPSocket = struct {
}
pub fn reload(this: *This, globalThis: *JSGlobalObject, callframe: *CallFrame) bun.JSError!JSValue {
const args = callframe.arguments_old(1);
const args = callframe.arguments();
if (args.len < 1) {
return globalThis.throwInvalidArguments("Expected 1 argument", .{});
}
const options = args.ptr[0];
const options = args[0];
const config = try UDPSocketConfig.fromJS(globalThis, options);
config.protect();
@@ -887,7 +887,7 @@ pub const UDPSocket = struct {
}
pub fn jsConnect(globalThis: *jsc.JSGlobalObject, callFrame: *jsc.CallFrame) bun.JSError!jsc.JSValue {
const args = callFrame.arguments_old(2);
const args = callFrame.arguments();
const this = callFrame.this().as(UDPSocket) orelse {
return globalThis.throwInvalidArguments("Expected UDPSocket as 'this'", .{});
@@ -905,12 +905,12 @@ pub const UDPSocket = struct {
return globalThis.throwInvalidArguments("Expected 2 arguments", .{});
}
const str = try args.ptr[0].toBunString(globalThis);
const str = try args[0].toBunString(globalThis);
defer str.deref();
const connect_host = str.toOwnedSliceZ(default_allocator) catch bun.outOfMemory();
defer default_allocator.free(connect_host);
const connect_port_js = args.ptr[1];
const connect_port_js = args[1];
if (!connect_port_js.isNumber()) {
return globalThis.throwInvalidArguments("Expected \"port\" to be an integer", .{});

View File

@@ -240,12 +240,12 @@ pub const CryptoHasher = union(enum) {
// Bun.CryptoHasher(algorithm, hmacKey?: string | Buffer)
pub fn constructor(globalThis: *jsc.JSGlobalObject, callframe: *jsc.CallFrame) bun.JSError!*CryptoHasher {
const arguments = callframe.arguments_old(2);
const arguments = callframe.arguments();
if (arguments.len == 0) {
return globalThis.throwInvalidArguments("Expected an algorithm name as an argument", .{});
}
const algorithm_name = arguments.ptr[0];
const algorithm_name = arguments[0];
if (algorithm_name.isEmptyOrUndefinedOrNull() or !algorithm_name.isString()) {
return globalThis.throwInvalidArguments("algorithm must be a string", .{});
}
@@ -256,7 +256,7 @@ pub const CryptoHasher = union(enum) {
return globalThis.throwInvalidArguments("Invalid algorithm name", .{});
}
const hmac_value = arguments.ptr[1];
const hmac_value: JSValue = if (arguments.len > 1) arguments[1] else .js_undefined;
var hmac_key: ?jsc.Node.StringOrBuffer = null;
defer {
if (hmac_key) |*key| {
@@ -312,12 +312,10 @@ pub const CryptoHasher = union(enum) {
pub fn update(this: *CryptoHasher, globalThis: *jsc.JSGlobalObject, callframe: *jsc.CallFrame) bun.JSError!jsc.JSValue {
const thisValue = callframe.this();
const arguments = callframe.arguments_old(2);
const input = arguments.ptr[0];
const input, const encoding = callframe.argumentsAsArray(2);
if (input.isEmptyOrUndefinedOrNull()) {
return globalThis.throwInvalidArguments("expected blob, string or buffer", .{});
}
const encoding = arguments.ptr[1];
const buffer = try jsc.Node.BlobOrStringOrBuffer.fromJSWithEncodingValue(globalThis, globalThis.bunVM().allocator, input, encoding) orelse {
if (!globalThis.hasException()) return globalThis.throwInvalidArguments("expected blob, string or buffer", .{});
return error.JSError;

View File

@@ -503,8 +503,7 @@ pub const JSPasswordObject = struct {
// Once we have bindings generator, this should be replaced with a generated function
pub fn JSPasswordObject__hash(globalObject: *jsc.JSGlobalObject, callframe: *jsc.CallFrame) bun.JSError!jsc.JSValue {
const arguments_ = callframe.arguments_old(2);
const arguments = arguments_.ptr[0..arguments_.len];
const arguments = callframe.arguments();
if (arguments.len < 1) {
return globalObject.throwNotEnoughArguments("hash", 1, 0);
@@ -533,8 +532,7 @@ pub const JSPasswordObject = struct {
// Once we have bindings generator, this should be replaced with a generated function
pub fn JSPasswordObject__hashSync(globalObject: *jsc.JSGlobalObject, callframe: *jsc.CallFrame) bun.JSError!jsc.JSValue {
const arguments_ = callframe.arguments_old(2);
const arguments = arguments_.ptr[0..arguments_.len];
const arguments = callframe.arguments();
if (arguments.len < 1) {
return globalObject.throwNotEnoughArguments("hash", 1, 0);
@@ -650,8 +648,7 @@ pub const JSPasswordObject = struct {
// Once we have bindings generator, this should be replaced with a generated function
pub fn JSPasswordObject__verify(globalObject: *jsc.JSGlobalObject, callframe: *jsc.CallFrame) bun.JSError!jsc.JSValue {
const arguments_ = callframe.arguments_old(3);
const arguments = arguments_.ptr[0..arguments_.len];
const arguments = callframe.arguments();
if (arguments.len < 2) {
return globalObject.throwNotEnoughArguments("verify", 2, 0);
@@ -706,8 +703,7 @@ pub const JSPasswordObject = struct {
// Once we have bindings generator, this should be replaced with a generated function
pub fn JSPasswordObject__verifySync(globalObject: *jsc.JSGlobalObject, callframe: *jsc.CallFrame) bun.JSError!jsc.JSValue {
const arguments_ = callframe.arguments_old(3);
const arguments = arguments_.ptr[0..arguments_.len];
const arguments = callframe.arguments();
if (arguments.len < 2) {
return globalObject.throwNotEnoughArguments("verify", 2, 0);

View File

@@ -369,7 +369,7 @@ pub fn publish(
globalThis: *jsc.JSGlobalObject,
callframe: *jsc.CallFrame,
) bun.JSError!JSValue {
const args = callframe.arguments_old(4);
const args = callframe.arguments();
if (args.len < 1) {
log("publish()", .{});
@@ -384,9 +384,9 @@ pub fn publish(
const ssl = flags.ssl;
const publish_to_self = flags.publish_to_self;
const topic_value = args.ptr[0];
const message_value = args.ptr[1];
const compress_value = args.ptr[2];
const topic_value = args[0];
const message_value: JSValue = if (args.len > 1) args[1] else .js_undefined;
const compress_value: JSValue = if (args.len > 2) args[2] else .js_undefined;
if (topic_value.isEmptyOrUndefinedOrNull() or !topic_value.isString()) {
log("publish() topic invalid", .{});
@@ -456,7 +456,7 @@ pub fn publishText(
globalThis: *jsc.JSGlobalObject,
callframe: *jsc.CallFrame,
) bun.JSError!JSValue {
const args = callframe.arguments_old(4);
const args = callframe.arguments();
if (args.len < 1) {
log("publish()", .{});