aboutsummaryrefslogtreecommitdiff
path: root/src/install
diff options
context:
space:
mode:
authorGravatar Dylan Conway <35280289+dylan-conway@users.noreply.github.com> 2023-06-21 23:38:18 -0700
committerGravatar GitHub <noreply@github.com> 2023-06-21 23:38:18 -0700
commit5fa13625a1ca0ea1a3a1c5bb86d0880dcfac349f (patch)
tree97f669a178e60772038751d690c3e298a63557b2 /src/install
parentbfb322d618a3f0e9618d311ae69016fe7a08e771 (diff)
downloadbun-5fa13625a1ca0ea1a3a1c5bb86d0880dcfac349f.tar.gz
bun-5fa13625a1ca0ea1a3a1c5bb86d0880dcfac349f.tar.zst
bun-5fa13625a1ca0ea1a3a1c5bb86d0880dcfac349f.zip
upgrade zig to `v0.11.0-dev.3737+9eb008717` (#3374)
* progress * finish `@memset/@memcpy` update * Update build.zig * change `@enumToInt` to `@intFromEnum` and friends * update zig versions * it was 1 * add link to issue * add `compileError` reminder * fix merge * format * upgrade to llvm 16 * Revert "upgrade to llvm 16" This reverts commit cc930ceb1c5b4db9614a7638596948f704544ab8. --------- Co-authored-by: Jarred Sumner <jarred@jarredsumner.com> Co-authored-by: Jarred Sumner <709451+Jarred-Sumner@users.noreply.github.com>
Diffstat (limited to 'src/install')
-rw-r--r--src/install/bin.zig30
-rw-r--r--src/install/dependency.zig48
-rw-r--r--src/install/install.zig86
-rw-r--r--src/install/integrity.zig4
-rw-r--r--src/install/lockfile.zig67
-rw-r--r--src/install/npm.zig52
-rw-r--r--src/install/resolution.zig2
-rw-r--r--src/install/resolvers/folder_resolver.zig6
-rw-r--r--src/install/semver.zig24
9 files changed, 159 insertions, 160 deletions
diff --git a/src/install/bin.zig b/src/install/bin.zig
index 371ce0dde..b0e988269 100644
--- a/src/install/bin.zig
+++ b/src/install/bin.zig
@@ -382,7 +382,7 @@ pub const Bin = extern struct {
bun.copy(u8, remain, target);
remain = remain[target.len..];
remain[0] = 0;
- const target_len = @ptrToInt(remain.ptr) - @ptrToInt(&dest_buf);
+ const target_len = @intFromPtr(remain.ptr) - @intFromPtr(&dest_buf);
remain = remain[1..];
var target_path: [:0]u8 = dest_buf[0..target_len :0];
@@ -392,7 +392,7 @@ pub const Bin = extern struct {
bun.copy(u8, from_remain, unscoped_name);
from_remain = from_remain[unscoped_name.len..];
from_remain[0] = 0;
- var dest_path: [:0]u8 = target_buf[0 .. @ptrToInt(from_remain.ptr) - @ptrToInt(&target_buf) :0];
+ var dest_path: [:0]u8 = target_buf[0 .. @intFromPtr(from_remain.ptr) - @intFromPtr(&target_buf) :0];
this.setSimlinkAndPermissions(target_path, dest_path);
},
@@ -404,7 +404,7 @@ pub const Bin = extern struct {
bun.copy(u8, remain, target);
remain = remain[target.len..];
remain[0] = 0;
- const target_len = @ptrToInt(remain.ptr) - @ptrToInt(&dest_buf);
+ const target_len = @intFromPtr(remain.ptr) - @intFromPtr(&dest_buf);
remain = remain[1..];
var target_path: [:0]u8 = dest_buf[0..target_len :0];
@@ -412,7 +412,7 @@ pub const Bin = extern struct {
bun.copy(u8, from_remain, name_to_use);
from_remain = from_remain[name_to_use.len..];
from_remain[0] = 0;
- var dest_path: [:0]u8 = target_buf[0 .. @ptrToInt(from_remain.ptr) - @ptrToInt(&target_buf) :0];
+ var dest_path: [:0]u8 = target_buf[0 .. @intFromPtr(from_remain.ptr) - @intFromPtr(&target_buf) :0];
this.setSimlinkAndPermissions(target_path, dest_path);
},
@@ -434,7 +434,7 @@ pub const Bin = extern struct {
bun.copy(u8, remain, target);
remain = remain[target.len..];
remain[0] = 0;
- const target_len = @ptrToInt(remain.ptr) - @ptrToInt(&dest_buf);
+ const target_len = @intFromPtr(remain.ptr) - @intFromPtr(&dest_buf);
remain = remain[1..];
var target_path: [:0]u8 = dest_buf[0..target_len :0];
@@ -442,7 +442,7 @@ pub const Bin = extern struct {
bun.copy(u8, from_remain, name_to_use);
from_remain = from_remain[name_to_use.len..];
from_remain[0] = 0;
- var dest_path: [:0]u8 = target_buf[0 .. @ptrToInt(from_remain.ptr) - @ptrToInt(&target_buf) :0];
+ var dest_path: [:0]u8 = target_buf[0 .. @intFromPtr(from_remain.ptr) - @intFromPtr(&target_buf) :0];
this.setSimlinkAndPermissions(target_path, dest_path);
}
@@ -461,7 +461,7 @@ pub const Bin = extern struct {
var dir = std.fs.Dir{ .fd = this.package_installed_node_modules };
var joined = Path.joinStringBuf(&target_buf, &parts, .auto);
- @intToPtr([*]u8, @ptrToInt(joined.ptr))[joined.len] = 0;
+ @ptrFromInt([*]u8, @intFromPtr(joined.ptr))[joined.len] = 0;
var joined_: [:0]const u8 = joined.ptr[0..joined.len :0];
var child_dir = bun.openDir(dir, joined_) catch |err| {
this.err = err;
@@ -482,12 +482,12 @@ pub const Bin = extern struct {
while (iter.next() catch null) |entry_| {
const entry: std.fs.IterableDir.Entry = entry_;
switch (entry.kind) {
- std.fs.IterableDir.Entry.Kind.SymLink, std.fs.IterableDir.Entry.Kind.File => {
+ std.fs.IterableDir.Entry.Kind.sym_link, std.fs.IterableDir.Entry.Kind.file => {
target_buf_remain = prev_target_buf_remain;
bun.copy(u8, target_buf_remain, entry.name);
target_buf_remain = target_buf_remain[entry.name.len..];
target_buf_remain[0] = 0;
- var from_path: [:0]u8 = target_buf[0 .. @ptrToInt(target_buf_remain.ptr) - @ptrToInt(&target_buf) :0];
+ var from_path: [:0]u8 = target_buf[0 .. @intFromPtr(target_buf_remain.ptr) - @intFromPtr(&target_buf) :0];
var to_path = if (!link_global)
std.fmt.bufPrintZ(&dest_buf, dot_bin ++ "{s}", .{entry.name}) catch continue
else
@@ -519,7 +519,7 @@ pub const Bin = extern struct {
return;
}
- @memcpy(&target_buf, this.global_bin_path.ptr, this.global_bin_path.len);
+ @memcpy(target_buf[0..this.global_bin_path.len], this.global_bin_path);
from_remain = target_buf[this.global_bin_path.len..];
from_remain[0] = std.fs.path.sep;
from_remain = from_remain[1..];
@@ -557,7 +557,7 @@ pub const Bin = extern struct {
bun.copy(u8, from_remain, unscoped_name);
from_remain = from_remain[unscoped_name.len..];
from_remain[0] = 0;
- var dest_path: [:0]u8 = target_buf[0 .. @ptrToInt(from_remain.ptr) - @ptrToInt(&target_buf) :0];
+ var dest_path: [:0]u8 = target_buf[0 .. @intFromPtr(from_remain.ptr) - @intFromPtr(&target_buf) :0];
std.os.unlinkatZ(this.root_node_modules_folder, dest_path, 0) catch {};
},
@@ -566,7 +566,7 @@ pub const Bin = extern struct {
bun.copy(u8, from_remain, name_to_use);
from_remain = from_remain[name_to_use.len..];
from_remain[0] = 0;
- var dest_path: [:0]u8 = target_buf[0 .. @ptrToInt(from_remain.ptr) - @ptrToInt(&target_buf) :0];
+ var dest_path: [:0]u8 = target_buf[0 .. @intFromPtr(from_remain.ptr) - @intFromPtr(&target_buf) :0];
std.os.unlinkatZ(this.root_node_modules_folder, dest_path, 0) catch {};
},
@@ -594,7 +594,7 @@ pub const Bin = extern struct {
bun.copy(u8, from_remain, name_to_use);
from_remain = from_remain[name_to_use.len..];
from_remain[0] = 0;
- var dest_path: [:0]u8 = target_buf[0 .. @ptrToInt(from_remain.ptr) - @ptrToInt(&target_buf) :0];
+ var dest_path: [:0]u8 = target_buf[0 .. @intFromPtr(from_remain.ptr) - @intFromPtr(&target_buf) :0];
std.os.unlinkatZ(this.root_node_modules_folder, dest_path, 0) catch {};
}
@@ -613,7 +613,7 @@ pub const Bin = extern struct {
var dir = std.fs.Dir{ .fd = this.package_installed_node_modules };
var joined = Path.joinStringBuf(&target_buf, &parts, .auto);
- @intToPtr([*]u8, @ptrToInt(joined.ptr))[joined.len] = 0;
+ @ptrFromInt([*]u8, @intFromPtr(joined.ptr))[joined.len] = 0;
var joined_: [:0]const u8 = joined.ptr[0..joined.len :0];
var child_dir = bun.openDir(dir, joined_) catch |err| {
this.err = err;
@@ -634,7 +634,7 @@ pub const Bin = extern struct {
while (iter.next() catch null) |entry_| {
const entry: std.fs.IterableDir.Entry = entry_;
switch (entry.kind) {
- std.fs.IterableDir.Entry.Kind.SymLink, std.fs.IterableDir.Entry.Kind.File => {
+ std.fs.IterableDir.Entry.Kind.sym_link, std.fs.IterableDir.Entry.Kind.file => {
target_buf_remain = prev_target_buf_remain;
bun.copy(u8, target_buf_remain, entry.name);
target_buf_remain = target_buf_remain[entry.name.len..];
diff --git a/src/install/dependency.zig b/src/install/dependency.zig
index 0480dd9d8..6ef02bbfc 100644
--- a/src/install/dependency.zig
+++ b/src/install/dependency.zig
@@ -147,7 +147,7 @@ pub fn toDependency(
return Dependency{
.name = name,
.name_hash = @bitCast(u64, this[8..16].*),
- .behavior = @intToEnum(Dependency.Behavior, this[16]),
+ .behavior = @enumFromInt(Dependency.Behavior, this[16]),
.version = Dependency.Version.toVersion(name, this[17..this.len].*, ctx),
};
}
@@ -156,7 +156,7 @@ pub fn toExternal(this: Dependency) External {
var bytes: External = undefined;
bytes[0..this.name.bytes.len].* = this.name.bytes;
bytes[8..16].* = @bitCast([8]u8, this.name_hash);
- bytes[16] = @enumToInt(this.behavior);
+ bytes[16] = @intFromEnum(this.behavior);
bytes[17..bytes.len].* = this.version.toExternal();
return bytes;
}
@@ -265,7 +265,7 @@ pub const Version = struct {
ctx: Dependency.Context,
) Dependency.Version {
const slice = String{ .bytes = bytes[1..9].* };
- const tag = @intToEnum(Dependency.Version.Tag, bytes[0]);
+ const tag = @enumFromInt(Dependency.Version.Tag, bytes[0]);
const sliced = &slice.sliced(ctx.buffer);
return Dependency.parseWithTag(
ctx.allocator,
@@ -279,7 +279,7 @@ pub const Version = struct {
pub inline fn toExternal(this: Version) Version.External {
var bytes: Version.External = undefined;
- bytes[0] = @enumToInt(this.tag);
+ bytes[0] = @intFromEnum(this.tag);
bytes[1..9].* = this.literal.bytes;
return bytes;
}
@@ -339,7 +339,7 @@ pub const Version = struct {
github = 8,
pub inline fn isNPM(this: Tag) bool {
- return @enumToInt(this) < 3;
+ return @intFromEnum(this) < 3;
}
pub fn infer(dependency: string) Tag {
@@ -493,7 +493,7 @@ pub const Version = struct {
// npm:package@1.2.3
'n' => {
if (strings.hasPrefixComptime(dependency, "npm:") and dependency.len > "npm:".len) {
- const remain = dependency["npm:".len + @boolToInt(dependency["npm:".len] == '@') ..];
+ const remain = dependency["npm:".len + @intFromBool(dependency["npm:".len] == '@') ..];
for (remain, 0..) |c, i| {
if (c == '@') {
return infer(remain[i + 1 ..]);
@@ -645,7 +645,7 @@ pub fn parseWithTag(
var input = dependency;
const name = if (strings.hasPrefixComptime(input, "npm:")) sliced.sub(brk: {
var str = input["npm:".len..];
- var i: usize = @boolToInt(str.len > 0 and str[0] == '@');
+ var i: usize = @intFromBool(str.len > 0 and str[0] == '@');
while (i < str.len) : (i += 1) {
if (str[i] == '@') {
@@ -694,7 +694,7 @@ pub fn parseWithTag(
// npm:@foo/bar@latest
// ^
- i += @boolToInt(dependency[i] == '@');
+ i += @intFromBool(dependency[i] == '@');
while (i < dependency.len) : (i += 1) {
// npm:@foo/bar@latest
@@ -899,67 +899,67 @@ pub const Behavior = enum(u8) {
pub const workspace: u8 = 1 << 5;
pub inline fn isNormal(this: Behavior) bool {
- return (@enumToInt(this) & Behavior.normal) != 0;
+ return (@intFromEnum(this) & Behavior.normal) != 0;
}
pub inline fn isOptional(this: Behavior) bool {
- return (@enumToInt(this) & Behavior.optional) != 0 and !this.isPeer();
+ return (@intFromEnum(this) & Behavior.optional) != 0 and !this.isPeer();
}
pub inline fn isDev(this: Behavior) bool {
- return (@enumToInt(this) & Behavior.dev) != 0;
+ return (@intFromEnum(this) & Behavior.dev) != 0;
}
pub inline fn isPeer(this: Behavior) bool {
- return (@enumToInt(this) & Behavior.peer) != 0;
+ return (@intFromEnum(this) & Behavior.peer) != 0;
}
pub inline fn isWorkspace(this: Behavior) bool {
- return (@enumToInt(this) & Behavior.workspace) != 0;
+ return (@intFromEnum(this) & Behavior.workspace) != 0;
}
pub inline fn setNormal(this: Behavior, value: bool) Behavior {
if (value) {
- return @intToEnum(Behavior, @enumToInt(this) | Behavior.normal);
+ return @enumFromInt(Behavior, @intFromEnum(this) | Behavior.normal);
} else {
- return @intToEnum(Behavior, @enumToInt(this) & ~Behavior.normal);
+ return @enumFromInt(Behavior, @intFromEnum(this) & ~Behavior.normal);
}
}
pub inline fn setOptional(this: Behavior, value: bool) Behavior {
if (value) {
- return @intToEnum(Behavior, @enumToInt(this) | Behavior.optional);
+ return @enumFromInt(Behavior, @intFromEnum(this) | Behavior.optional);
} else {
- return @intToEnum(Behavior, @enumToInt(this) & ~Behavior.optional);
+ return @enumFromInt(Behavior, @intFromEnum(this) & ~Behavior.optional);
}
}
pub inline fn setDev(this: Behavior, value: bool) Behavior {
if (value) {
- return @intToEnum(Behavior, @enumToInt(this) | Behavior.dev);
+ return @enumFromInt(Behavior, @intFromEnum(this) | Behavior.dev);
} else {
- return @intToEnum(Behavior, @enumToInt(this) & ~Behavior.dev);
+ return @enumFromInt(Behavior, @intFromEnum(this) & ~Behavior.dev);
}
}
pub inline fn setPeer(this: Behavior, value: bool) Behavior {
if (value) {
- return @intToEnum(Behavior, @enumToInt(this) | Behavior.peer);
+ return @enumFromInt(Behavior, @intFromEnum(this) | Behavior.peer);
} else {
- return @intToEnum(Behavior, @enumToInt(this) & ~Behavior.peer);
+ return @enumFromInt(Behavior, @intFromEnum(this) & ~Behavior.peer);
}
}
pub inline fn setWorkspace(this: Behavior, value: bool) Behavior {
if (value) {
- return @intToEnum(Behavior, @enumToInt(this) | Behavior.workspace);
+ return @enumFromInt(Behavior, @intFromEnum(this) | Behavior.workspace);
} else {
- return @intToEnum(Behavior, @enumToInt(this) & ~Behavior.workspace);
+ return @enumFromInt(Behavior, @intFromEnum(this) & ~Behavior.workspace);
}
}
pub inline fn cmp(lhs: Behavior, rhs: Behavior) std.math.Order {
- if (@enumToInt(lhs) == @enumToInt(rhs)) {
+ if (@intFromEnum(lhs) == @intFromEnum(rhs)) {
return .eq;
}
diff --git a/src/install/install.zig b/src/install/install.zig
index 88c8f653f..32c24548c 100644
--- a/src/install/install.zig
+++ b/src/install/install.zig
@@ -146,12 +146,12 @@ pub fn ExternalSliceAligned(comptime Type: type, comptime alignment_: ?u29) type
pub fn init(buf: []const Type, in: []const Type) Slice {
// if (comptime Environment.allow_assert) {
- // std.debug.assert(@ptrToInt(buf.ptr) <= @ptrToInt(in.ptr));
- // std.debug.assert((@ptrToInt(in.ptr) + in.len) <= (@ptrToInt(buf.ptr) + buf.len));
+ // std.debug.assert(@intFromPtr(buf.ptr) <= @intFromPtr(in.ptr));
+ // std.debug.assert((@intFromPtr(in.ptr) + in.len) <= (@intFromPtr(buf.ptr) + buf.len));
// }
return Slice{
- .off = @truncate(u32, (@ptrToInt(in.ptr) - @ptrToInt(buf.ptr)) / @sizeOf(Type)),
+ .off = @truncate(u32, (@intFromPtr(in.ptr) - @intFromPtr(buf.ptr)) / @sizeOf(Type)),
.len = @truncate(u32, in.len),
};
}
@@ -183,7 +183,7 @@ pub const Aligner = struct {
}
pub inline fn skipAmount(comptime Type: type, pos: usize) usize {
- return std.mem.alignForward(pos, @alignOf(Type)) - pos;
+ return std.mem.alignForward(usize, pos, @alignOf(Type)) - pos;
}
};
@@ -351,7 +351,7 @@ const NetworkTask = struct {
},
);
header_builder.header_count = 1;
- header_builder.content = GlobalStringBuilder{ .ptr = @intToPtr([*]u8, @ptrToInt(bun.span(default_headers_buf).ptr)), .len = default_headers_buf.len, .cap = default_headers_buf.len };
+ header_builder.content = GlobalStringBuilder{ .ptr = @ptrFromInt([*]u8, @intFromPtr(bun.span(default_headers_buf).ptr)), .len = default_headers_buf.len, .cap = default_headers_buf.len };
}
this.response_buffer = try MutableString.init(allocator, 0);
@@ -474,12 +474,12 @@ pub const Features = struct {
pub fn behavior(this: Features) Behavior {
var out: u8 = 0;
- out |= @as(u8, @boolToInt(this.dependencies)) << 1;
- out |= @as(u8, @boolToInt(this.optional_dependencies)) << 2;
- out |= @as(u8, @boolToInt(this.dev_dependencies)) << 3;
- out |= @as(u8, @boolToInt(this.peer_dependencies)) << 4;
- out |= @as(u8, @boolToInt(this.workspaces)) << 5;
- return @intToEnum(Behavior, out);
+ out |= @as(u8, @intFromBool(this.dependencies)) << 1;
+ out |= @as(u8, @intFromBool(this.optional_dependencies)) << 2;
+ out |= @as(u8, @intFromBool(this.dev_dependencies)) << 3;
+ out |= @as(u8, @intFromBool(this.peer_dependencies)) << 4;
+ out |= @as(u8, @intFromBool(this.workspaces)) << 5;
+ return @enumFromInt(Behavior, out);
}
pub const main = Features{
@@ -541,7 +541,7 @@ const Task = struct {
/// An ID that lets us register a callback without keeping the same pointer around
pub const Id = struct {
pub fn forNPMPackage(package_name: string, package_version: Semver.Version) u64 {
- var hasher = std.hash.Wyhash.init(0);
+ var hasher = bun.Wyhash.init(0);
hasher.update(package_name);
hasher.update("@");
hasher.update(std.mem.asBytes(&package_version));
@@ -549,28 +549,28 @@ const Task = struct {
}
pub fn forBinLink(package_id: PackageID) u64 {
- const hash = std.hash.Wyhash.hash(0, std.mem.asBytes(&package_id));
+ const hash = bun.Wyhash.hash(0, std.mem.asBytes(&package_id));
return @as(u64, 1 << 61) | @as(u64, @truncate(u61, hash));
}
pub fn forManifest(name: string) u64 {
- return @as(u64, 2 << 61) | @as(u64, @truncate(u61, std.hash.Wyhash.hash(0, name)));
+ return @as(u64, 2 << 61) | @as(u64, @truncate(u61, bun.Wyhash.hash(0, name)));
}
pub fn forTarball(url: string) u64 {
- var hasher = std.hash.Wyhash.init(0);
+ var hasher = bun.Wyhash.init(0);
hasher.update(url);
return @as(u64, 3 << 61) | @as(u64, @truncate(u61, hasher.final()));
}
pub fn forGitClone(url: string) u64 {
- var hasher = std.hash.Wyhash.init(0);
+ var hasher = bun.Wyhash.init(0);
hasher.update(url);
return @as(u64, 4 << 61) | @as(u64, @truncate(u61, hasher.final()));
}
pub fn forGitCheckout(url: string, resolved: string) u64 {
- var hasher = std.hash.Wyhash.init(0);
+ var hasher = bun.Wyhash.init(0);
hasher.update(url);
hasher.update("@");
hasher.update(resolved);
@@ -1079,10 +1079,10 @@ const PackageInstall = struct {
var stackpath: [bun.MAX_PATH_BYTES]u8 = undefined;
while (try walker.next()) |entry| {
switch (entry.kind) {
- .Directory => {
+ .directory => {
std.os.mkdirat(destination_dir_.dir.fd, entry.path, 0o755) catch {};
},
- .File => {
+ .file => {
bun.copy(u8, &stackpath, entry.path);
stackpath[entry.path.len] = 0;
var path: [:0]u8 = stackpath[0..entry.path.len :0];
@@ -1190,7 +1190,7 @@ const PackageInstall = struct {
) !u32 {
var real_file_count: u32 = 0;
while (try walker.next()) |entry| {
- if (entry.kind != .File) continue;
+ if (entry.kind != .file) continue;
real_file_count += 1;
var outfile = destination_dir_.createFile(entry.path, .{}) catch brk: {
@@ -1268,10 +1268,10 @@ const PackageInstall = struct {
var real_file_count: u32 = 0;
while (try walker.next()) |entry| {
switch (entry.kind) {
- .Directory => {
+ .directory => {
std.os.mkdirat(destination_dir_.dir.fd, entry.path, 0o755) catch {};
},
- .File => {
+ .file => {
try std.os.linkat(entry.dir.dir.fd, entry.basename, destination_dir_.dir.fd, entry.path, 0);
real_file_count += 1;
},
@@ -1351,16 +1351,16 @@ const PackageInstall = struct {
while (try walker.next()) |entry| {
switch (entry.kind) {
// directories are created
- .Directory => {
+ .directory => {
std.os.mkdirat(dest_dir_fd, entry.path, 0o755) catch {};
},
// but each file in the directory is a symlink
- .File => {
- @memcpy(remain.ptr, entry.path.ptr, entry.path.len);
+ .file => {
+ @memcpy(remain[0..entry.path.len], entry.path);
remain[entry.path.len] = 0;
var from_path = buf[0 .. cache_dir_offset + entry.path.len :0];
- @memcpy(dest_remaining.ptr, entry.path.ptr, entry.path.len);
+ @memcpy(dest_remaining[0..entry.path.len], entry.path);
dest_remaining[entry.path.len] = 0;
var to_path = dest_buf[0 .. dest_dir_offset + entry.path.len :0];
@@ -1830,7 +1830,7 @@ pub const PackageManager = struct {
const offset = this.preinstall_state.items.len;
try this.preinstall_state.ensureTotalCapacity(this.allocator, count);
this.preinstall_state.expandToCapacity();
- std.mem.set(PreinstallState, this.preinstall_state.items[offset..], PreinstallState.unknown);
+ @memset(this.preinstall_state.items[offset..], PreinstallState.unknown);
}
pub fn setPreinstallState(this: *PackageManager, package_id: PackageID, lockfile: *Lockfile, value: PreinstallState) void {
@@ -2263,7 +2263,7 @@ pub const PackageManager = struct {
var iter = dir.iterate();
while (try iter.next()) |entry| {
- if (entry.kind != .Directory and entry.kind != .SymLink) continue;
+ if (entry.kind != .directory and entry.kind != .sym_link) continue;
const name = entry.name;
const sliced = SlicedString.init(name, name);
const parsed = Semver.Version.parse(sliced, allocator);
@@ -2305,7 +2305,7 @@ pub const PackageManager = struct {
};
// TODO: make this fewer passes
- std.sort.sort(
+ std.sort.block(
Semver.Version,
installed_versions.items,
@as([]const u8, tags_buf.items),
@@ -3752,7 +3752,7 @@ pub const PackageManager = struct {
if (comptime log_level.isVerbose()) {
Output.prettyError(" ", .{});
- Output.printElapsed(@intToFloat(f64, task.http.elapsed) / std.time.ns_per_ms);
+ Output.printElapsed(@floatFromInt(f64, task.http.elapsed) / std.time.ns_per_ms);
Output.prettyError("\n <d>Downloaded <r><green>{s}<r> versions\n", .{name.slice()});
Output.flush();
}
@@ -3886,7 +3886,7 @@ pub const PackageManager = struct {
if (comptime log_level.isVerbose()) {
Output.prettyError(" ", .{});
- Output.printElapsed(@floatCast(f64, @intToFloat(f64, task.http.elapsed) / std.time.ns_per_ms));
+ Output.printElapsed(@floatCast(f64, @floatFromInt(f64, task.http.elapsed) / std.time.ns_per_ms));
Output.prettyError(" <d>Downloaded <r><green>{s}<r> tarball\n", .{extract.name.slice()});
Output.flush();
}
@@ -4814,7 +4814,7 @@ pub const PackageManager = struct {
var new_dependencies = try allocator.alloc(G.Property, dependencies.len + remaining - replacing);
bun.copy(G.Property, new_dependencies, dependencies);
- std.mem.set(G.Property, new_dependencies[dependencies.len..], G.Property{});
+ @memset(new_dependencies[dependencies.len..], G.Property{});
outer: for (updates) |*update| {
if (update.e_string != null) continue;
@@ -6372,7 +6372,7 @@ pub const PackageManager = struct {
var iter: std.fs.IterableDir.Iterator = node_modules_bin.iterate();
iterator: while (iter.next() catch null) |entry| {
switch (entry.kind) {
- std.fs.IterableDir.Entry.Kind.SymLink => {
+ std.fs.IterableDir.Entry.Kind.sym_link => {
// any symlinks which we are unable to open are assumed to be dangling
// note that using access won't work here, because access doesn't resolve symlinks
@@ -6547,7 +6547,7 @@ pub const PackageManager = struct {
if (folder.len == 0 or (folder.len == 1 and folder[0] == '.')) {
installer.cache_dir_subpath = ".";
} else {
- @memcpy(&this.folder_path_buf, folder.ptr, folder.len);
+ @memcpy(this.folder_path_buf[0..folder.len], folder);
this.folder_path_buf[folder.len] = 0;
installer.cache_dir_subpath = this.folder_path_buf[0..folder.len :0];
}
@@ -6567,7 +6567,7 @@ pub const PackageManager = struct {
if (folder.len == 0 or (folder.len == 1 and folder[0] == '.')) {
installer.cache_dir_subpath = ".";
} else {
- @memcpy(&this.folder_path_buf, folder.ptr, folder.len);
+ @memcpy(this.folder_path_buf[0..folder.len], folder);
this.folder_path_buf[folder.len] = 0;
installer.cache_dir_subpath = this.folder_path_buf[0..folder.len :0];
}
@@ -6608,16 +6608,16 @@ pub const PackageManager = struct {
const global_link_dir = this.manager.globalLinkDirPath() catch unreachable;
var ptr = &this.folder_path_buf;
var remain: []u8 = this.folder_path_buf[0..];
- @memcpy(ptr, global_link_dir.ptr, global_link_dir.len);
+ @memcpy(ptr[0..global_link_dir.len], global_link_dir);
remain = remain[global_link_dir.len..];
if (global_link_dir[global_link_dir.len - 1] != std.fs.path.sep) {
remain[0] = std.fs.path.sep;
remain = remain[1..];
}
- @memcpy(remain.ptr, folder.ptr, folder.len);
+ @memcpy(remain[0..folder.len], folder);
remain = remain[folder.len..];
remain[0] = 0;
- const len = @ptrToInt(remain.ptr) - @ptrToInt(ptr);
+ const len = @intFromPtr(remain.ptr) - @intFromPtr(ptr);
installer.cache_dir_subpath = this.folder_path_buf[0..len :0];
installer.cache_dir = directory;
}
@@ -6626,7 +6626,7 @@ pub const PackageManager = struct {
}
const needs_install = this.force_install or this.skip_verify_installed_version_number or !installer.verify(resolution, buf);
- this.summary.skipped += @as(u32, @boolToInt(!needs_install));
+ this.summary.skipped += @as(u32, @intFromBool(!needs_install));
if (needs_install) {
const result: PackageInstall.Result = switch (resolution.tag) {
@@ -6637,7 +6637,7 @@ pub const PackageManager = struct {
switch (result) {
.success => {
const is_duplicate = this.successfully_installed.isSet(package_id);
- this.summary.success += @as(u32, @boolToInt(!is_duplicate));
+ this.summary.success += @as(u32, @intFromBool(!is_duplicate));
this.successfully_installed.set(package_id);
if (comptime log_level.showProgress()) {
@@ -7390,7 +7390,7 @@ pub const PackageManager = struct {
);
}
var mapping = try manager.lockfile.allocator.alloc(PackageID, maybe_root.dependencies.len);
- std.mem.set(PackageID, mapping, invalid_package_id);
+ @memset(mapping, invalid_package_id);
manager.summary = try Package.Diff.generate(
ctx.allocator,
@@ -7443,8 +7443,8 @@ pub const PackageManager = struct {
var resolutions = manager.lockfile.buffers.resolutions.items.ptr[off .. off + len];
// It is too easy to accidentally undefined memory
- std.mem.set(PackageID, resolutions, invalid_package_id);
- std.mem.set(Dependency, dependencies, Dependency{});
+ @memset(resolutions, invalid_package_id);
+ @memset(dependencies, Dependency{});
manager.lockfile.buffers.dependencies.items = manager.lockfile.buffers.dependencies.items.ptr[0 .. off + len];
manager.lockfile.buffers.resolutions.items = manager.lockfile.buffers.resolutions.items.ptr[0 .. off + len];
diff --git a/src/install/integrity.zig b/src/install/integrity.zig
index e54d9b7e1..19e55c223 100644
--- a/src/install/integrity.zig
+++ b/src/install/integrity.zig
@@ -41,7 +41,7 @@ pub const Integrity = extern struct {
var i: usize = 0;
{
- std.mem.set(u8, &integrity.value, 0);
+ @memset(&integrity.value, 0);
}
while (i < end) {
@@ -111,7 +111,7 @@ pub const Integrity = extern struct {
_,
pub inline fn isSupported(this: Tag) bool {
- return @enumToInt(this) >= @enumToInt(Tag.sha1) and @enumToInt(this) <= @enumToInt(Tag.sha512);
+ return @intFromEnum(this) >= @intFromEnum(Tag.sha1) and @intFromEnum(this) <= @intFromEnum(Tag.sha512);
}
pub fn parse(buf: []const u8) Tag {
diff --git a/src/install/lockfile.zig b/src/install/lockfile.zig
index 5c27c1a69..04c6ccec1 100644
--- a/src/install/lockfile.zig
+++ b/src/install/lockfile.zig
@@ -693,8 +693,7 @@ pub fn cleanWithLogger(old: *Lockfile, updates: []PackageManager.UpdateRequest,
const root = old.rootPackage() orelse return error.NoPackage;
var package_id_mapping = try old.allocator.alloc(PackageID, old.packages.len);
- std.mem.set(
- PackageID,
+ @memset(
package_id_mapping,
invalid_package_id,
);
@@ -998,7 +997,7 @@ pub const Printer = struct {
const dependencies_buffer: []const Dependency = this.lockfile.buffers.dependencies.items;
const string_buf = this.lockfile.buffers.string_bytes.items;
var id_map = try default_allocator.alloc(DependencyID, this.updates.len);
- std.mem.set(DependencyID, id_map, invalid_package_id);
+ @memset(id_map, invalid_package_id);
defer if (id_map.len > 0) default_allocator.free(id_map);
visited.set(0);
@@ -1211,12 +1210,12 @@ pub const Printer = struct {
}
var dependency_versions = requested_version_start[0..j];
- if (dependency_versions.len > 1) std.sort.insertionSort(Dependency.Version, dependency_versions, string_buf, Dependency.Version.isLessThan);
+ if (dependency_versions.len > 1) std.sort.insertion(Dependency.Version, dependency_versions, string_buf, Dependency.Version.isLessThan);
try requested_versions.put(i, dependency_versions);
}
}
- std.sort.sort(
+ std.sort.block(
PackageID,
alphabetized_names,
Lockfile.Package.Alphabetizer{
@@ -1908,11 +1907,11 @@ pub const Package = extern struct {
field: string,
behavior: Behavior,
- pub const dependencies = DependencyGroup{ .prop = "dependencies", .field = "dependencies", .behavior = @intToEnum(Behavior, Behavior.normal) };
- pub const dev = DependencyGroup{ .prop = "devDependencies", .field = "dev_dependencies", .behavior = @intToEnum(Behavior, Behavior.dev) };
- pub const optional = DependencyGroup{ .prop = "optionalDependencies", .field = "optional_dependencies", .behavior = @intToEnum(Behavior, Behavior.optional) };
- pub const peer = DependencyGroup{ .prop = "peerDependencies", .field = "peer_dependencies", .behavior = @intToEnum(Behavior, Behavior.peer) };
- pub const workspaces = DependencyGroup{ .prop = "workspaces", .field = "workspaces", .behavior = @intToEnum(Behavior, Behavior.workspace) };
+ pub const dependencies = DependencyGroup{ .prop = "dependencies", .field = "dependencies", .behavior = @enumFromInt(Behavior, Behavior.normal) };
+ pub const dev = DependencyGroup{ .prop = "devDependencies", .field = "dev_dependencies", .behavior = @enumFromInt(Behavior, Behavior.dev) };
+ pub const optional = DependencyGroup{ .prop = "optionalDependencies", .field = "optional_dependencies", .behavior = @enumFromInt(Behavior, Behavior.optional) };
+ pub const peer = DependencyGroup{ .prop = "peerDependencies", .field = "peer_dependencies", .behavior = @enumFromInt(Behavior, Behavior.peer) };
+ pub const workspaces = DependencyGroup{ .prop = "workspaces", .field = "workspaces", .behavior = @enumFromInt(Behavior, Behavior.workspace) };
};
pub inline fn isDisabled(this: *const Lockfile.Package) bool {
@@ -2032,7 +2031,7 @@ pub const Package = extern struct {
builder.clamp();
- cloner.trees_count += @as(u32, @boolToInt(old_resolutions.len > 0));
+ cloner.trees_count += @as(u32, @intFromBool(old_resolutions.len > 0));
for (old_resolutions, 0..) |old_resolution, i| {
if (old_resolution >= max_package_id) continue;
@@ -2108,7 +2107,7 @@ pub const Package = extern struct {
if (comptime Environment.allow_assert) std.debug.assert(dependencies_list.items.len == resolutions_list.items.len);
var dependencies: []Dependency = dependencies_list.items.ptr[dependencies_list.items.len..total_len];
- std.mem.set(Dependency, dependencies, Dependency{});
+ @memset(dependencies, Dependency{});
const package_dependencies = package_json.dependencies.map.values();
const source_buf = package_json.dependencies.source_buf;
@@ -2135,7 +2134,7 @@ pub const Package = extern struct {
const new_length = package.dependencies.len + dependencies_list.items.len;
- std.mem.set(PackageID, resolutions_list.items.ptr[package.dependencies.off .. package.dependencies.off + package.dependencies.len], invalid_package_id);
+ @memset(resolutions_list.items.ptr[package.dependencies.off .. package.dependencies.off + package.dependencies.len], invalid_package_id);
dependencies_list.items = dependencies_list.items.ptr[0..new_length];
resolutions_list.items = resolutions_list.items.ptr[0..new_length];
@@ -2160,10 +2159,10 @@ pub const Package = extern struct {
const dependency_groups = comptime brk: {
var out_groups: [
- @as(usize, @boolToInt(features.dependencies)) +
- @as(usize, @boolToInt(features.dev_dependencies)) +
- @as(usize, @boolToInt(features.optional_dependencies)) +
- @as(usize, @boolToInt(features.peer_dependencies))
+ @as(usize, @intFromBool(features.dependencies)) +
+ @as(usize, @intFromBool(features.dev_dependencies)) +
+ @as(usize, @intFromBool(features.optional_dependencies)) +
+ @as(usize, @intFromBool(features.peer_dependencies))
]DependencyGroup = undefined;
var out_group_i: usize = 0;
@@ -2252,7 +2251,7 @@ pub const Package = extern struct {
if (comptime Environment.allow_assert) std.debug.assert(dependencies_list.items.len == resolutions_list.items.len);
var dependencies = dependencies_list.items.ptr[dependencies_list.items.len..total_len];
- std.mem.set(Dependency, dependencies, .{});
+ @memset(dependencies, .{});
total_dependencies_count = 0;
inline for (dependency_groups) |group| {
@@ -2323,7 +2322,7 @@ pub const Package = extern struct {
const new_length = package.dependencies.len + dependencies_list.items.len;
- std.mem.set(PackageID, resolutions_list.items.ptr[package.dependencies.off .. package.dependencies.off + package.dependencies.len], invalid_package_id);
+ @memset(resolutions_list.items.ptr[package.dependencies.off .. package.dependencies.off + package.dependencies.len], invalid_package_id);
dependencies_list.items = dependencies_list.items.ptr[0..new_length];
resolutions_list.items = resolutions_list.items.ptr[0..new_length];
@@ -2408,7 +2407,7 @@ pub const Package = extern struct {
};
pub fn hash(name: string, version: Semver.Version) u64 {
- var hasher = std.hash.Wyhash.init(0);
+ var hasher = bun.Wyhash.init(0);
hasher.update(name);
hasher.update(std.mem.asBytes(&version));
return hasher.final();
@@ -2966,11 +2965,11 @@ pub const Package = extern struct {
const dependency_groups = comptime brk: {
var out_groups: [
- @as(usize, @boolToInt(features.dependencies)) +
- @as(usize, @boolToInt(features.dev_dependencies)) +
- @as(usize, @boolToInt(features.optional_dependencies)) +
- @as(usize, @boolToInt(features.peer_dependencies)) +
- @as(usize, @boolToInt(features.workspaces))
+ @as(usize, @intFromBool(features.dependencies)) +
+ @as(usize, @intFromBool(features.dev_dependencies)) +
+ @as(usize, @intFromBool(features.optional_dependencies)) +
+ @as(usize, @intFromBool(features.peer_dependencies)) +
+ @as(usize, @intFromBool(features.workspaces))
]DependencyGroup = undefined;
var out_group_i: usize = 0;
@@ -3320,7 +3319,7 @@ pub const Package = extern struct {
}
}
- std.sort.sort(
+ std.sort.block(
Dependency,
package_dependencies[0..total_dependencies_count],
lockfile.buffers.string_bytes.items,
@@ -3332,7 +3331,7 @@ pub const Package = extern struct {
package.resolutions = @bitCast(@TypeOf(package.resolutions), package.dependencies);
- std.mem.set(PackageID, lockfile.buffers.resolutions.items.ptr[off..total_len], invalid_package_id);
+ @memset(lockfile.buffers.resolutions.items.ptr[off..total_len], invalid_package_id);
const new_len = off + total_dependencies_count;
lockfile.buffers.dependencies.items = lockfile.buffers.dependencies.items.ptr[0..new_len];
@@ -3397,7 +3396,7 @@ pub const Package = extern struct {
}
};
var trash: i32 = undefined; // workaround for stage1 compiler bug
- std.sort.sort(Data, &data, &trash, Sort.lessThan);
+ std.sort.block(Data, &data, &trash, Sort.lessThan);
var sizes_bytes: [fields.len]usize = undefined;
var field_indexes: [fields.len]usize = undefined;
var Types: [fields.len]type = undefined;
@@ -3492,10 +3491,10 @@ pub const Package = extern struct {
var bytes = std.mem.sliceAsBytes(sliced.items(@field(Lockfile.Package.List.Field, field.name)));
const end_pos = stream.pos + bytes.len;
if (end_pos <= end_at) {
- @memcpy(bytes.ptr, stream.buffer[stream.pos..].ptr, bytes.len);
+ @memcpy(bytes, stream.buffer[stream.pos..][0..bytes.len]);
stream.pos = end_pos;
} else if (comptime strings.eqlComptime(field.name, "scripts")) {
- @memset(bytes.ptr, 0, bytes.len);
+ @memset(bytes, 0);
} else {
return error.@"Lockfile validation failed: invalid package list range";
}
@@ -3564,7 +3563,7 @@ const Buffers = struct {
}
};
var trash: i32 = undefined; // workaround for stage1 compiler bug
- std.sort.sort(Data, &data, &trash, Sort.lessThan);
+ std.sort.block(Data, &data, &trash, Sort.lessThan);
var sizes_bytes: [fields.len]usize = undefined;
var names: [fields.len][]const u8 = undefined;
var types: [fields.len]type = undefined;
@@ -3808,7 +3807,7 @@ pub const Serializer = struct {
var writer = stream.writer();
try writer.writeAll(header_bytes);
- try writer.writeIntLittle(u32, @enumToInt(this.format));
+ try writer.writeIntLittle(u32, @intFromEnum(this.format));
try writer.writeAll(&this.meta_hash);
@@ -3840,7 +3839,7 @@ pub const Serializer = struct {
}
var format = try reader.readIntLittle(u32);
- if (format != @enumToInt(Lockfile.FormatVersion.current)) {
+ if (format != @intFromEnum(Lockfile.FormatVersion.current)) {
return error.@"Outdated lockfile version";
}
@@ -3928,7 +3927,7 @@ fn generateMetaHash(this: *Lockfile, print_name_version_string: bool) !MetaHash
}
}
- std.sort.sort(
+ std.sort.block(
PackageID,
alphabetized_names,
Lockfile.Package.Alphabetizer{
diff --git a/src/install/npm.zig b/src/install/npm.zig
index c01e6ee1f..074041056 100644
--- a/src/install/npm.zig
+++ b/src/install/npm.zig
@@ -121,9 +121,9 @@ pub const Registry = struct {
if (registry.username.len > 0 and registry.password.len > 0 and auth.len == 0) {
var output_buf = try allocator.alloc(u8, registry.username.len + registry.password.len + 1 + std.base64.standard.Encoder.calcSize(registry.username.len + registry.password.len + 1));
var input_buf = output_buf[0 .. registry.username.len + registry.password.len + 1];
- @memcpy(input_buf.ptr, registry.username.ptr, registry.username.len);
+ @memcpy(input_buf[0..registry.username.len], registry.username);
input_buf[registry.username.len] = ':';
- @memcpy(input_buf[registry.username.len + 1 ..].ptr, registry.password.ptr, registry.password.len);
+ @memcpy(input_buf[registry.username.len + 1 ..][0..registry.password.len], registry.password);
output_buf = output_buf[input_buf.len..];
auth = std.base64.standard.Encoder.encode(output_buf, input_buf);
break :outer;
@@ -259,9 +259,9 @@ pub const OperatingSystem = enum(u16) {
pub fn isMatch(this: OperatingSystem) bool {
if (comptime Environment.isLinux) {
- return (@enumToInt(this) & linux) != 0;
+ return (@intFromEnum(this) & linux) != 0;
} else if (comptime Environment.isMac) {
- return (@enumToInt(this) & darwin) != 0;
+ return (@intFromEnum(this) & darwin) != 0;
} else {
return false;
}
@@ -282,7 +282,7 @@ pub const OperatingSystem = enum(u16) {
if (str.len == 0) {
return this_;
}
- const this = @enumToInt(this_);
+ const this = @intFromEnum(this_);
const is_not = str[0] == '!';
const offset: usize = if (str[0] == '!') 1 else 0;
@@ -290,9 +290,9 @@ pub const OperatingSystem = enum(u16) {
const field: u16 = NameMap.get(str[offset..]) orelse return this_;
if (is_not) {
- return @intToEnum(OperatingSystem, this & ~field);
+ return @enumFromInt(OperatingSystem, this & ~field);
} else {
- return @intToEnum(OperatingSystem, this | field);
+ return @enumFromInt(OperatingSystem, this | field);
}
}
};
@@ -334,9 +334,9 @@ pub const Architecture = enum(u16) {
pub fn isMatch(this: Architecture) bool {
if (comptime Environment.isAarch64) {
- return (@enumToInt(this) & arm64) != 0;
+ return (@intFromEnum(this) & arm64) != 0;
} else if (comptime Environment.isX64) {
- return (@enumToInt(this) & x64) != 0;
+ return (@intFromEnum(this) & x64) != 0;
} else {
return false;
}
@@ -346,7 +346,7 @@ pub const Architecture = enum(u16) {
if (str.len == 0) {
return this_;
}
- const this = @enumToInt(this_);
+ const this = @intFromEnum(this_);
const is_not = str[0] == '!';
const offset: usize = if (str[0] == '!') 1 else 0;
@@ -355,9 +355,9 @@ pub const Architecture = enum(u16) {
const field: u16 = NameMap.get(input) orelse return this_;
if (is_not) {
- return @intToEnum(Architecture, this & ~field);
+ return @enumFromInt(Architecture, this & ~field);
} else {
- return @intToEnum(Architecture, this | field);
+ return @enumFromInt(Architecture, this | field);
}
}
};
@@ -496,7 +496,7 @@ pub const PackageManifest = struct {
}
};
var trash: i32 = undefined; // workaround for stage1 compiler bug
- std.sort.sort(Data, &data, &trash, Sort.lessThan);
+ std.sort.block(Data, &data, &trash, Sort.lessThan);
var sizes_bytes: [fields.len]usize = undefined;
var names: [fields.len][]const u8 = undefined;
for (data, 0..) |elem, i| {
@@ -571,7 +571,7 @@ pub const PackageManifest = struct {
}
pub fn save(this: *const PackageManifest, tmpdir: std.fs.IterableDir, cache_dir: std.fs.IterableDir) !void {
- const file_id = std.hash.Wyhash.hash(0, this.name());
+ const file_id = bun.Wyhash.hash(0, this.name());
var dest_path_buf: [512 + 64]u8 = undefined;
var out_path_buf: ["-18446744073709551615".len + ".npm".len + 1]u8 = undefined;
var dest_path_stream = std.io.fixedBufferStream(&dest_path_buf);
@@ -588,7 +588,7 @@ pub const PackageManifest = struct {
}
pub fn load(allocator: std.mem.Allocator, cache_dir: std.fs.IterableDir, package_name: string) !?PackageManifest {
- const file_id = std.hash.Wyhash.hash(0, package_name);
+ const file_id = bun.Wyhash.hash(0, package_name);
var file_path_buf: [512 + 64]u8 = undefined;
const hex_fmt = bun.fmt.hexIntLower(file_id);
var file_path = try std.fmt.bufPrintZ(&file_path_buf, "{any}.npm", .{hex_fmt});
@@ -630,7 +630,7 @@ pub const PackageManifest = struct {
inline for (sizes.fields) |field_name| {
if (comptime strings.eqlComptime(field_name, "pkg")) {
- pkg_stream.pos = std.mem.alignForward(pkg_stream.pos, @alignOf(Npm.NpmPackage));
+ pkg_stream.pos = std.mem.alignForward(usize, pkg_stream.pos, @alignOf(Npm.NpmPackage));
var reader = pkg_stream.reader();
package_manifest.pkg = try reader.readStruct(NpmPackage);
} else {
@@ -851,7 +851,7 @@ pub const PackageManifest = struct {
pre_versions_len += 1;
extern_string_count += 1;
} else {
- extern_string_count += @as(usize, @boolToInt(std.mem.indexOfScalar(u8, version_name, '+') != null));
+ extern_string_count += @as(usize, @intFromBool(std.mem.indexOfScalar(u8, version_name, '+') != null));
release_versions_len += 1;
}
@@ -862,7 +862,7 @@ pub const PackageManifest = struct {
if (tarball_prop.data == .e_string) {
const tarball = tarball_prop.data.e_string.slice(allocator);
string_builder.count(tarball);
- tarball_urls_count += @as(usize, @boolToInt(tarball.len > 0));
+ tarball_urls_count += @as(usize, @intFromBool(tarball.len > 0));
}
}
}
@@ -961,19 +961,19 @@ pub const PackageManifest = struct {
if (versioned_packages.len > 0) {
var versioned_packages_bytes = std.mem.sliceAsBytes(versioned_packages);
- @memset(versioned_packages_bytes.ptr, 0, versioned_packages_bytes.len);
+ @memset(versioned_packages_bytes, 0);
}
if (all_semver_versions.len > 0) {
var all_semver_versions_bytes = std.mem.sliceAsBytes(all_semver_versions);
- @memset(all_semver_versions_bytes.ptr, 0, all_semver_versions_bytes.len);
+ @memset(all_semver_versions_bytes, 0);
}
if (all_extern_strings.len > 0) {
var all_extern_strings_bytes = std.mem.sliceAsBytes(all_extern_strings);
- @memset(all_extern_strings_bytes.ptr, 0, all_extern_strings_bytes.len);
+ @memset(all_extern_strings_bytes, 0);
}
if (version_extern_strings.len > 0) {
var version_extern_strings_bytes = std.mem.sliceAsBytes(version_extern_strings);
- @memset(version_extern_strings_bytes.ptr, 0, version_extern_strings_bytes.len);
+ @memset(version_extern_strings_bytes, 0);
}
var versioned_package_releases = versioned_packages[0..release_versions_len];
@@ -998,7 +998,7 @@ pub const PackageManifest = struct {
var string_buf: string = "";
if (string_builder.ptr) |ptr| {
// 0 it out for better determinism
- @memset(ptr, 0, string_builder.cap);
+ @memset(ptr[0..string_builder.cap], 0);
string_buf = ptr[0..string_builder.cap];
}
@@ -1253,8 +1253,8 @@ pub const PackageManifest = struct {
var this_names = dependency_names[0..count];
var this_versions = dependency_values[0..count];
- var name_hasher = std.hash.Wyhash.init(0);
- var version_hasher = std.hash.Wyhash.init(0);
+ var name_hasher = bun.Wyhash.init(0);
+ var version_hasher = bun.Wyhash.init(0);
const is_peer = comptime strings.eqlComptime(pair.prop, "peerDependencies");
@@ -1495,7 +1495,7 @@ pub const PackageManifest = struct {
if (src.len > 0) {
var dst = std.mem.sliceAsBytes(all_extern_strings[all_extern_strings.len - extern_strings.len ..]);
std.debug.assert(dst.len >= src.len);
- @memcpy(dst.ptr, src.ptr, src.len);
+ @memcpy(dst[0..src.len], src);
}
all_extern_strings = all_extern_strings[0 .. all_extern_strings.len - extern_strings.len];
diff --git a/src/install/resolution.zig b/src/install/resolution.zig
index 1bd88e78d..b1adb3d80 100644
--- a/src/install/resolution.zig
+++ b/src/install/resolution.zig
@@ -20,7 +20,7 @@ pub const Resolution = extern struct {
rhs_buf: []const u8,
) std.math.Order {
if (lhs.tag != rhs.tag) {
- return std.math.order(@enumToInt(lhs.tag), @enumToInt(rhs.tag));
+ return std.math.order(@intFromEnum(lhs.tag), @intFromEnum(rhs.tag));
}
return switch (lhs.tag) {
diff --git a/src/install/resolvers/folder_resolver.zig b/src/install/resolvers/folder_resolver.zig
index 90a2a414c..0ece2be7f 100644
--- a/src/install/resolvers/folder_resolver.zig
+++ b/src/install/resolvers/folder_resolver.zig
@@ -30,7 +30,7 @@ pub const FolderResolution = union(Tag) {
}
pub fn hash(normalized_path: string) u64 {
- return std.hash.Wyhash.hash(0, normalized_path);
+ return bun.hash(normalized_path);
}
fn NewResolver(comptime tag: Resolution.Tag) type {
@@ -95,9 +95,9 @@ pub const FolderResolution = union(Tag) {
.global, .cache_folder => {
const path = if (global_or_relative == .global) global_or_relative.global else global_or_relative.cache_folder;
if (path.len > 0) {
- const offset = path.len -| @as(usize, @boolToInt(path[path.len -| 1] == std.fs.path.sep));
+ const offset = path.len -| @as(usize, @intFromBool(path[path.len -| 1] == std.fs.path.sep));
if (offset > 0)
- @memcpy(remain.ptr, path.ptr, offset);
+ @memcpy(remain[0..offset], path[0..offset]);
remain = remain[offset..];
if (normalized.len > 0) {
if ((path[path.len - 1] != std.fs.path.sep) and (normalized[0] != std.fs.path.sep)) {
diff --git a/src/install/semver.zig b/src/install/semver.zig
index 9fd6b9c8d..c2730e7c7 100644
--- a/src/install/semver.zig
+++ b/src/install/semver.zig
@@ -263,7 +263,7 @@ pub const String = extern struct {
std.debug.assert(bun.isSliceInBuffer(in, buf));
return Pointer{
- .off = @truncate(u32, @ptrToInt(in.ptr) - @ptrToInt(buf.ptr)),
+ .off = @truncate(u32, @intFromPtr(in.ptr) - @intFromPtr(buf.ptr)),
.len = @truncate(u32, in.len),
};
}
@@ -311,7 +311,7 @@ pub const String = extern struct {
pub const StringPool = std.HashMap(u64, String, IdentityContext(u64), 80);
pub inline fn stringHash(buf: []const u8) u64 {
- return std.hash.Wyhash.hash(0, buf);
+ return bun.Wyhash.hash(0, buf);
}
pub inline fn count(this: *Builder, slice_: string) void {
@@ -515,7 +515,7 @@ pub const ExternalString = extern struct {
pub inline fn from(in: string) ExternalString {
return ExternalString{
.value = String.init(in, in),
- .hash = std.hash.Wyhash.hash(0, in),
+ .hash = bun.Wyhash.hash(0, in),
};
}
@@ -552,15 +552,15 @@ pub const BigExternalString = extern struct {
return BigExternalString{
.off = 0,
.len = @truncate(u32, in.len),
- .hash = std.hash.Wyhash.hash(0, in),
+ .hash = bun.Wyhash.hash(0, in),
};
}
pub inline fn init(buf: string, in: string, hash: u64) BigExternalString {
- std.debug.assert(@ptrToInt(buf.ptr) <= @ptrToInt(in.ptr) and ((@ptrToInt(in.ptr) + in.len) <= (@ptrToInt(buf.ptr) + buf.len)));
+ std.debug.assert(@intFromPtr(buf.ptr) <= @intFromPtr(in.ptr) and ((@intFromPtr(in.ptr) + in.len) <= (@intFromPtr(buf.ptr) + buf.len)));
return BigExternalString{
- .off = @truncate(u32, @ptrToInt(in.ptr) - @ptrToInt(buf.ptr)),
+ .off = @truncate(u32, @intFromPtr(in.ptr) - @intFromPtr(buf.ptr)),
.len = @truncate(u32, in.len),
.hash = hash,
};
@@ -580,19 +580,19 @@ pub const SlicedString = struct {
}
pub inline fn external(this: SlicedString) ExternalString {
- if (comptime Environment.allow_assert) std.debug.assert(@ptrToInt(this.buf.ptr) <= @ptrToInt(this.slice.ptr) and ((@ptrToInt(this.slice.ptr) + this.slice.len) <= (@ptrToInt(this.buf.ptr) + this.buf.len)));
+ if (comptime Environment.allow_assert) std.debug.assert(@intFromPtr(this.buf.ptr) <= @intFromPtr(this.slice.ptr) and ((@intFromPtr(this.slice.ptr) + this.slice.len) <= (@intFromPtr(this.buf.ptr) + this.buf.len)));
- return ExternalString.init(this.buf, this.slice, std.hash.Wyhash.hash(0, this.slice));
+ return ExternalString.init(this.buf, this.slice, bun.Wyhash.hash(0, this.slice));
}
pub inline fn value(this: SlicedString) String {
- if (comptime Environment.allow_assert) std.debug.assert(@ptrToInt(this.buf.ptr) <= @ptrToInt(this.slice.ptr) and ((@ptrToInt(this.slice.ptr) + this.slice.len) <= (@ptrToInt(this.buf.ptr) + this.buf.len)));
+ if (comptime Environment.allow_assert) std.debug.assert(@intFromPtr(this.buf.ptr) <= @intFromPtr(this.slice.ptr) and ((@intFromPtr(this.slice.ptr) + this.slice.len) <= (@intFromPtr(this.buf.ptr) + this.buf.len)));
return String.init(this.buf, this.slice);
}
pub inline fn sub(this: SlicedString, input: string) SlicedString {
- std.debug.assert(@ptrToInt(this.buf.ptr) <= @ptrToInt(this.buf.ptr) and ((@ptrToInt(input.ptr) + input.len) <= (@ptrToInt(this.buf.ptr) + this.buf.len)));
+ std.debug.assert(@intFromPtr(this.buf.ptr) <= @intFromPtr(this.buf.ptr) and ((@intFromPtr(input.ptr) + input.len) <= (@intFromPtr(this.buf.ptr) + this.buf.len)));
return SlicedString{ .buf = this.buf, .slice = input };
}
};
@@ -678,7 +678,7 @@ pub const Version = extern struct {
.build = this.tag.build.hash,
};
const bytes = std.mem.asBytes(&hashable);
- return std.hash.Wyhash.hash(0, bytes);
+ return bun.Wyhash.hash(0, bytes);
}
pub const Formatter = struct {
@@ -1814,7 +1814,7 @@ pub const Query = struct {
};
if (!hyphenate) i = rollback;
- i += @as(usize, @boolToInt(!hyphenate));
+ i += @as(usize, @intFromBool(!hyphenate));
if (hyphenate) {
const second_parsed = Version.parse(sliced.sub(input[i..]), allocator);