mirror of
https://github.com/enso-org/enso.git
synced 2024-12-26 06:41:38 +03:00
d1af25793a
Use the Rust parser rather than the Scala parser to parse Enso code in the IDE. Implements: - https://www.pivotaltracker.com/story/show/182975925 - https://www.pivotaltracker.com/story/show/182988419 - https://www.pivotaltracker.com/story/show/182970096 - https://www.pivotaltracker.com/story/show/182973659 - https://www.pivotaltracker.com/story/show/182974161 - https://www.pivotaltracker.com/story/show/182974205 There is additional functionality needed before the transition is fully-completed, however I think it's time for this to see review and testing, so I've opened separate issues. In rough order of urgency (these issues are also linked from the corresponding disabled tests): - #5573 - #5571 - #5572 - #5574 # Important Notes The implementation is based partly on translation, and partly on new analysis. Method- and operator-related shapes are translated to the old `Ast` variants, so that all the analysis applied to them doesn't need to be ported at this time. Everything else (mostly "macros" in the old AST) is implemented with new analysis.
91 lines
3.1 KiB
TOML
91 lines
3.1 KiB
TOML
[package]
|
|
name = "enso-gui"
|
|
version = "0.1.0"
|
|
authors = ["Enso Team <contact@enso.org>"]
|
|
edition = "2021"
|
|
|
|
[lib]
|
|
crate-type = ["cdylib", "rlib"]
|
|
|
|
[dependencies]
|
|
analytics = { path = "analytics" }
|
|
double-representation = { path = "controller/double-representation" }
|
|
enso-config = { path = "config" }
|
|
enso-callback = { path = "../../lib/rust/callback" }
|
|
enso-data-structures = { path = "../../lib/rust/data-structures" }
|
|
enso-debug-api = { path = "../../lib/rust/debug-api" }
|
|
enso-debug-scene = { path = "view/debug_scene" }
|
|
enso-frp = { path = "../../lib/rust/frp" }
|
|
enso-prelude = { path = "../../lib/rust/prelude" }
|
|
enso-profiler = { path = "../../lib/rust/profiler" }
|
|
enso-executor = { path = "../../lib/rust/executor" }
|
|
enso-notification = { path = "../../lib/rust/notification" }
|
|
enso-shapely = { path = "../../lib/rust/shapely" }
|
|
enso-text = { path = "../../lib/rust/text" }
|
|
enso-web = { path = "../../lib/rust/web" }
|
|
enso-suggestion-database = { path = "suggestion-database" }
|
|
ensogl = { path = "../../lib/rust/ensogl" }
|
|
ensogl-examples = { path = "../../lib/rust/ensogl/example" }
|
|
ensogl-component = { path = "../../lib/rust/ensogl/component" }
|
|
ensogl-text-msdf = { path = "../../lib/rust/ensogl/component/text/src/font/msdf" }
|
|
ensogl-hardcoded-theme = { path = "../../lib/rust/ensogl/app/theme/hardcoded" }
|
|
ensogl-drop-manager = { path = "../../lib/rust/ensogl/component/drop-manager" }
|
|
fuzzly = { path = "../../lib/rust/fuzzly" }
|
|
ast = { path = "language/ast/impl" }
|
|
parser = { path = "language/parser" }
|
|
parser-scala = { path = "language/parser-scala" }
|
|
ide-view = { path = "view" }
|
|
engine-protocol = { path = "controller/engine-protocol" }
|
|
json-rpc = { path = "../../lib/rust/json-rpc" }
|
|
span-tree = { path = "language/span-tree" }
|
|
bimap = { version = "0.4.0" }
|
|
console_error_panic_hook = { workspace = true }
|
|
const_format = { workspace = true }
|
|
convert_case = { workspace = true }
|
|
failure = { workspace = true }
|
|
flo_stream = { version = "0.4.0" }
|
|
futures = { workspace = true }
|
|
itertools = { workspace = true }
|
|
js-sys = { workspace = true }
|
|
mockall = { version = "0.7.1", features = ["nightly"] }
|
|
nalgebra = { workspace = true }
|
|
semver = { version = "1.0.0", features = ["serde"] }
|
|
serde = { version = "1.0", features = ["derive"] }
|
|
serde_json = { workspace = true }
|
|
sha3 = { version = "0.8.2" }
|
|
uuid = { version = "0.8", features = ["serde", "v4", "wasm-bindgen"] }
|
|
# wasm-bindgen version 0.2.79 is causing issues with clippy.
|
|
# See for more information. https://github.com/rustwasm/wasm-bindgen/issues/2774
|
|
# Should be removed once 0.2.80 is available.
|
|
wasm-bindgen = { workspace = true }
|
|
wasm-bindgen-futures = "0.4"
|
|
|
|
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
|
|
websocket = "0.26.5"
|
|
|
|
[dev-dependencies]
|
|
regex = { workspace = true }
|
|
wasm-bindgen-test = { workspace = true }
|
|
|
|
[dependencies.web-sys]
|
|
version = "0.3.22"
|
|
features = [
|
|
'BinaryType',
|
|
'Blob',
|
|
'console',
|
|
'CloseEvent',
|
|
'Document',
|
|
'Element',
|
|
'ErrorEvent',
|
|
'EventTarget',
|
|
'MessageEvent',
|
|
'HtmlElement',
|
|
'Node',
|
|
'WebSocket',
|
|
'Window',
|
|
]
|
|
|
|
# Stop wasm-pack from running wasm-opt, because we run it from our build scripts in order to customize options.
|
|
[package.metadata.wasm-pack.profile.release]
|
|
wasm-opt = false
|