diff options
-rw-r--r-- | src/feature_flags.zig | 2 | ||||
-rw-r--r-- | src/js_parser.zig | 11 | ||||
-rw-r--r-- | test/bundler/bundler_minify.test.ts | 4 |
3 files changed, 12 insertions, 5 deletions
diff --git a/src/feature_flags.zig b/src/feature_flags.zig index 130e07d33..0f7e35988 100644 --- a/src/feature_flags.zig +++ b/src/feature_flags.zig @@ -23,6 +23,8 @@ pub const bundle_node_modules = true; pub const tracing = true; +pub const minify_javascript_string_length = false; + pub const verbose_watcher = false; pub const css_supports_fence = true; diff --git a/src/js_parser.zig b/src/js_parser.zig index 68e45ace2..6351aa33b 100644 --- a/src/js_parser.zig +++ b/src/js_parser.zig @@ -17050,10 +17050,13 @@ fn NewParser_( } }, .e_string => |str| { - if (p.options.features.minify_syntax) { - // minify "long-string".length to 11 - if (strings.eqlComptime(name, "length")) { - return p.newExpr(E.Number{ .value = @as(f64, @floatFromInt(str.javascriptLength())) }, loc); + // Disable until https://github.com/oven-sh/bun/issues/4217 is fixed + if (comptime FeatureFlags.minify_javascript_string_length) { + if (p.options.features.minify_syntax) { + // minify "long-string".length to 11 + if (strings.eqlComptime(name, "length")) { + return p.newExpr(E.Number{ .value = @as(f64, @floatFromInt(str.javascriptLength())) }, loc); + } } } }, diff --git a/test/bundler/bundler_minify.test.ts b/test/bundler/bundler_minify.test.ts index 17286f6b8..c984bbe67 100644 --- a/test/bundler/bundler_minify.test.ts +++ b/test/bundler/bundler_minify.test.ts @@ -1,10 +1,12 @@ import assert from "assert"; -import dedent from "dedent"; import { itBundled, testForFile } from "./expectBundled"; var { describe, test, expect } = testForFile(import.meta.path); describe("bundler", () => { itBundled("minify/TemplateStringFolding", { + // TODO: https://github.com/oven-sh/bun/issues/4217 + todo: true, + files: { "/entry.js": /* js */ ` capture(\`\${1}-\${2}-\${3}-\${null}-\${undefined}-\${true}-\${false}\`); |