deno_ast 0.43.3

Source text parsing, lexing, and AST related functionality for Deno
Documentation
[package]
name = "deno_ast"
version = "0.43.3"
authors = ["the Deno authors"]
documentation = "https://docs.rs/deno_ast"
edition = "2021"
homepage = "https://deno.land/"
license = "MIT"
repository = "https://github.com/denoland/deno_ast"
description = "Source text parsing, lexing, and AST related functionality for Deno"

[package.metadata.docs.rs]
all-features = true

[features]
bundler = ["swc_bundler", "swc_ecma_transforms_optimization", "swc_graph_analyzer"]
cjs = ["utils", "visit"]
codegen = ["swc_ecma_codegen", "swc_ecma_codegen_macros", "swc_macros_common"]
compat = ["transforms", "swc_ecma_transforms_compat", "swc_trace_macro", "swc_config", "swc_config_macro"]
dep_analysis = ["visit"]
proposal = ["transforms", "swc_ecma_transforms_proposal", "swc_ecma_transforms_classes", "swc_ecma_transforms_macros", "swc_macros_common"]
react = ["transforms", "swc_ecma_transforms_react", "swc_ecma_transforms_macros", "swc_config", "swc_config_macro", "swc_macros_common"]
scopes = ["view", "utils", "visit"]
sourcemap = ["dprint-swc-ext/sourcemap"]
transforms = ["swc_ecma_loader", "swc_ecma_transforms_base"]
emit = ["base64", "codegen", "sourcemap", "dep:sourcemap"]
transpiling = ["emit", "proposal", "react", "transforms", "typescript", "utils", "visit"]
typescript = ["transforms", "swc_ecma_transforms_typescript"]
utils = ["swc_ecma_utils"]
view = ["dprint-swc-ext/view"]
visit = ["swc_ecma_visit", "swc_visit", "swc_visit_macros", "swc_macros_common"]

[dependencies]
base64 = { version = "0.21.6", optional = true }
deno_media_type = "0.2.1"
deno_terminal = "0.1.1"

dprint-swc-ext = "0.20.0"
once_cell = "1.19.0"
percent-encoding = "2.3.1"
serde = { version = "1.0.144", features = ["derive"] }
text_lines = { version = "0.6.0", features = ["serialization"] }
url = { version = "2.3.1", features = ["serde"] }
unicode-width = "0.1.13" # 0.1.13 because control characters have a width of 1 there

# swc's version bumping is very buggy and there will often be patch versions
# published that break our build, so we pin all swc versions to prevent
# pulling in new versions of swc crates
#
# NOTE: You can automatically update these dependencies by running ./scripts/update_swc_deps.ts
swc_atoms = "=0.6.7"
swc_common = "=0.37.5"
swc_config = { version = "=0.1.15", optional = true }
swc_config_macro = { version = "=0.1.4", optional = true }
swc_ecma_ast = { version = "=0.118.2", features = ["serde-impl"] }
swc_ecma_codegen = { version = "=0.155.1", optional = true }
swc_ecma_codegen_macros = { version = "=0.7.7", optional = true }
swc_ecma_loader = { version = "=0.49.1", optional = true }
swc_ecma_parser = "=0.149.1"
swc_ecma_transforms_base = { version = "=0.145.0", optional = true }
swc_ecma_transforms_classes = { version = "=0.134.0", optional = true }
swc_ecma_transforms_compat = { version = "=0.171.0", optional = true }
swc_ecma_transforms_macros = { version = "=0.5.5", optional = true }
swc_ecma_transforms_optimization = { version = "=0.208.0", optional = true }
swc_ecma_transforms_proposal = { version = "=0.179.0", optional = true }
swc_ecma_transforms_react = { version = "=0.191.0", optional = true }
swc_ecma_transforms_typescript = { version = "=0.198.1", optional = true }
swc_ecma_utils = { version = "=0.134.2", optional = true }
swc_ecma_visit = { version = "=0.104.8", optional = true }
swc_eq_ignore_macros = "=0.1.4"
swc_bundler = { version = "=0.237.0", optional = true }
swc_graph_analyzer = { version = "=0.26.0", optional = true }
swc_macros_common = { version = "=0.3.13", optional = true }
swc_trace_macro = { version = "=0.1.3", optional = true }
swc_visit = { version = "=0.6.2", optional = true }
swc_visit_macros = { version = "=0.5.13", optional = true }
# just for error handling
sourcemap = { version = "9.0.0", optional = true }
thiserror = "1.0.58"

[dev-dependencies]
pretty_assertions = "1.3.0"
serde_json = { version = "1.0.87", features = ["preserve_order"] }