diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml index d15ffb8d1185..cc9bce064998 100644 --- a/.github/workflows/nightly.yml +++ b/.github/workflows/nightly.yml @@ -4,7 +4,7 @@ name: Nightly Release on: schedule: - - cron: 0 5 * * 2-6 + - cron: 0 2 * * 2-6 workflow_dispatch: {} jobs: promote-nightly: diff --git a/CHANGELOG.md b/CHANGELOG.md index 3f1b627161c5..c0004a4389e6 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -138,9 +138,11 @@ sending messages to the backend][6341]. - [List Editor Widget][6470]. Now you can edit lists by clicking buttons on nodes or by dragging the elements. +- [Fixed text visualisations which were being cut off at the last line.][6421] - [Fixed a bug where, when scrolling or dragging on a full-screen visualization, the view of the graph changed as well.][6530] +[6421]: https://github.com/enso-org/enso/pull/6421 [6530]: https://github.com/enso-org/enso/pull/6530 #### EnsoGL (rendering engine) diff --git a/Cargo.lock b/Cargo.lock index c047daa3e1e7..ad4c0a5a1be2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -35,7 +35,7 @@ checksum = "fcb51a0695d8f838b1ee009b3fbf66bda078cd64590202a864a8f3e8c4315c47" dependencies = [ "getrandom 0.2.8", "once_cell", - "version_check 0.9.4", + "version_check", ] [[package]] @@ -211,11 +211,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8c374dda1ed3e7d8f0d9ba58715f924862c63eae6849c92d3a18e7fbde9e2794" dependencies = [ "async-lock", - "autocfg 1.1.0", + "autocfg", "concurrent-queue", "futures-lite", "libc", - "log 0.4.17", + "log", "parking", "polling", "slab", @@ -244,14 +244,14 @@ dependencies = [ "async-global-executor", "async-io", "async-lock", - "crossbeam-utils 0.8.14", + "crossbeam-utils", "futures-channel", "futures-core", "futures-io", "futures-lite", "gloo-timers", "kv-log-macro", - "log 0.4.17", + "log", "memchr", "once_cell", "pin-project-lite", @@ -318,16 +318,7 @@ checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" dependencies = [ "hermit-abi 0.1.19", "libc", - "winapi 0.3.9", -] - -[[package]] -name = "autocfg" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0dde43e75fd43e8a1bf86103336bc699aa8d17ad1be60c76c0bdfd4828e19b78" -dependencies = [ - "autocfg 1.1.0", + "winapi", ] [[package]] @@ -352,10 +343,10 @@ dependencies = [ "aws-smithy-json", "aws-smithy-types", "aws-types", - "bytes 1.1.0", + "bytes", "hex", "http", - "hyper 0.14.23", + "hyper", "ring", "time 0.3.17", "tokio", @@ -387,11 +378,11 @@ dependencies = [ "aws-smithy-http", "aws-smithy-types", "aws-types", - "bytes 1.1.0", + "bytes", "http", "http-body", "lazy_static", - "percent-encoding 2.1.0", + "percent-encoding", "pin-project-lite", "tracing", ] @@ -412,7 +403,7 @@ dependencies = [ "aws-smithy-json", "aws-smithy-types", "aws-types", - "bytes 1.1.0", + "bytes", "http", "tokio-stream", "tower", @@ -437,7 +428,7 @@ dependencies = [ "aws-smithy-types", "aws-smithy-xml", "aws-types", - "bytes 1.1.0", + "bytes", "bytes-utils", "http", "http-body", @@ -462,7 +453,7 @@ dependencies = [ "aws-smithy-json", "aws-smithy-types", "aws-types", - "bytes 1.1.0", + "bytes", "http", "tokio-stream", "tower", @@ -485,7 +476,7 @@ dependencies = [ "aws-smithy-types", "aws-smithy-xml", "aws-types", - "bytes 1.1.0", + "bytes", "http", "tower", ] @@ -512,12 +503,12 @@ checksum = "8d33790cecae42b999d197074c8a19e9b96b9e346284a6f93989e7489c9fa0f5" dependencies = [ "aws-smithy-eventstream", "aws-smithy-http", - "bytes 1.1.0", + "bytes", "form_urlencoded", "hex", "http", "once_cell", - "percent-encoding 2.1.0", + "percent-encoding", "regex", "ring", "time 0.3.17", @@ -544,7 +535,7 @@ checksum = "4b402da39bc5aae618b70a9b8d828acad21fe4a3a73b82c0205b89db55d71ce8" dependencies = [ "aws-smithy-http", "aws-smithy-types", - "bytes 1.1.0", + "bytes", "crc32c", "crc32fast", "hex", @@ -567,11 +558,11 @@ dependencies = [ "aws-smithy-http", "aws-smithy-http-tower", "aws-smithy-types", - "bytes 1.1.0", + "bytes", "fastrand", "http", "http-body", - "hyper 0.14.23", + "hyper", "hyper-rustls 0.22.1", "lazy_static", "pin-project-lite", @@ -587,7 +578,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "98c2a7b9490fd2bc7af3a1c486ae921102d7234d1fa5e7d91039068e7af48a01" dependencies = [ "aws-smithy-types", - "bytes 1.1.0", + "bytes", "crc32fast", ] @@ -599,14 +590,14 @@ checksum = "014a0ef5c4508fc2f6a9d3925c214725af19f020ea388db48e20196cc4cc9d6d" dependencies = [ "aws-smithy-eventstream", "aws-smithy-types", - "bytes 1.1.0", + "bytes", "bytes-utils", "futures-core", "http", "http-body", - "hyper 0.14.23", + "hyper", "once_cell", - "percent-encoding 2.1.0", + "percent-encoding", "pin-project-lite", "tokio", "tokio-util", @@ -620,7 +611,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "deecb478dc3cc40203e0e97ac0fb92947e0719754bbafd0026bdc49318e2fd03" dependencies = [ "aws-smithy-http", - "bytes 1.1.0", + "bytes", "http", "http-body", "pin-project-lite", @@ -693,16 +684,16 @@ dependencies = [ "async-trait", "axum-core", "bitflags", - "bytes 1.1.0", + "bytes", "futures-util", "http", "http-body", - "hyper 0.14.23", + "hyper", "itoa 1.0.5", "matchit", "memchr", - "mime 0.3.16", - "percent-encoding 2.1.0", + "mime", + "percent-encoding", "pin-project-lite", "rustversion", "serde", @@ -720,11 +711,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1cae3e661676ffbacb30f1a824089a8c9150e71017f7e1e38f2aa32009188d34" dependencies = [ "async-trait", - "bytes 1.1.0", + "bytes", "futures-util", "http", "http-body", - "mime 0.3.16", + "mime", "rustversion", "tower-layer", "tower-service", @@ -745,25 +736,6 @@ dependencies = [ "rustc-demangle", ] -[[package]] -name = "base64" -version = "0.9.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "489d6c0ed21b11d038c31b6ceccca973e65d73ba3bd8ecb9a2babf5546164643" -dependencies = [ - "byteorder", - "safemem", -] - -[[package]] -name = "base64" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0b25d992356d2eb0ed82172f5248873db5560c4721f564b13cb5193bda5e668e" -dependencies = [ - "byteorder", -] - [[package]] name = "base64" version = "0.13.1" @@ -945,16 +917,6 @@ version = "1.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610" -[[package]] -name = "bytes" -version = "0.4.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "206fdffcfa2df7cbe15601ef46c813fce0965eb3286db6b56c583b814b51c81c" -dependencies = [ - "byteorder", - "iovec", -] - [[package]] name = "bytes" version = "1.1.0" @@ -967,7 +929,7 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e47d3a8076e283f3acd27400535992edb3ba4b5bb72f8891ad8fbe7932a7d4b9" dependencies = [ - "bytes 1.1.0", + "bytes", "either", ] @@ -981,7 +943,7 @@ dependencies = [ "async_once", "cached_proc_macro", "cached_proc_macro_types", - "futures 0.3.26", + "futures", "hashbrown", "instant", "lazy_static", @@ -1051,7 +1013,7 @@ dependencies = [ "serde", "time 0.1.45", "wasm-bindgen", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -1105,15 +1067,6 @@ dependencies = [ "os_str_bytes", ] -[[package]] -name = "cloudabi" -version = "0.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ddfc5b9aa5d4507acaf872de71051dfd0e309860e88966e1051e462a077aac4f" -dependencies = [ - "bitflags", -] - [[package]] name = "code-builder" version = "0.1.0" @@ -1150,7 +1103,7 @@ version = "4.6.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "35ed6e9d84f0b51a7f52daf1c7d71dd136fd7a3f41a8462b8cdb8c78d920fad4" dependencies = [ - "bytes 1.1.0", + "bytes", "memchr", ] @@ -1160,7 +1113,7 @@ version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c278839b831783b70278b14df4d45e1beb1aad306c07bb796637de9a0e323e8e" dependencies = [ - "crossbeam-utils 0.8.14", + "crossbeam-utils", ] [[package]] @@ -1205,8 +1158,8 @@ checksum = "22a3a81dfaf6b66bce5d159eddae701e3a002f194d378cbf7be5f053c281d9be" dependencies = [ "console-api", "crossbeam-channel", - "crossbeam-utils 0.8.14", - "futures 0.3.26", + "crossbeam-utils", + "futures", "hdrhistogram", "humantime 2.1.0", "prost-types", @@ -1362,7 +1315,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2dd04ddaf88237dc3b8d8f9a3c1004b506b54b3313403944054d23c0870c521" dependencies = [ "cfg-if 1.0.0", - "crossbeam-utils 0.8.14", + "crossbeam-utils", ] [[package]] @@ -1373,7 +1326,7 @@ checksum = "715e8152b692bba2d374b53d4875445368fdf21a94751410af607a5ac677d1fc" dependencies = [ "cfg-if 1.0.0", "crossbeam-epoch", - "crossbeam-utils 0.8.14", + "crossbeam-utils", ] [[package]] @@ -1382,24 +1335,13 @@ version = "0.9.13" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "01a9af1f4c2ef74bb8aa1f7e19706bc72d03598c8a570bb5de72243c7a9d9d5a" dependencies = [ - "autocfg 1.1.0", + "autocfg", "cfg-if 1.0.0", - "crossbeam-utils 0.8.14", + "crossbeam-utils", "memoffset", "scopeguard", ] -[[package]] -name = "crossbeam-utils" -version = "0.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c3c7c73a2d1e9fc0886a08b93e98eb643461230d5f1925e4036204d5f2e261a8" -dependencies = [ - "autocfg 1.1.0", - "cfg-if 0.1.10", - "lazy_static", -] - [[package]] name = "crossbeam-utils" version = "0.8.14" @@ -1705,7 +1647,7 @@ dependencies = [ "serde", "serde_json", "thiserror", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -1780,7 +1722,7 @@ checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" dependencies = [ "libc", "redox_users", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -1840,7 +1782,7 @@ dependencies = [ name = "engine-protocol" version = "0.1.0" dependencies = [ - "bytes 1.1.0", + "bytes", "chrono", "enso-build-utilities", "enso-data-structures", @@ -1851,7 +1793,7 @@ dependencies = [ "failure", "flatbuffers", "flatc-rust", - "futures 0.3.26", + "futures", "hex", "json-rpc", "mockall", @@ -1893,7 +1835,7 @@ dependencies = [ "aws-sdk-s3", "base64 0.13.1", "byte-unit", - "bytes 1.1.0", + "bytes", "cached", "cfg-if 1.0.0", "chrono", @@ -1909,7 +1851,7 @@ dependencies = [ "flate2", "flume", "fs_extra", - "futures 0.3.26", + "futures", "futures-util", "glob", "handlebars", @@ -1920,7 +1862,7 @@ dependencies = [ "indicatif", "itertools", "lazy_static", - "mime 0.3.16", + "mime", "new_mime_guess", "nix", "octocrab", @@ -1949,8 +1891,8 @@ dependencies = [ "toml", "tracing", "tracing-subscriber", - "unicase 2.6.0", - "url 2.3.0", + "unicase", + "url", "uuid 1.2.2", "walkdir", "which", @@ -1964,7 +1906,7 @@ version = "0.1.0" dependencies = [ "anyhow", "fn-error-context", - "futures 0.3.26", + "futures", "futures-util", "serde", "serde_json", @@ -1995,7 +1937,7 @@ dependencies = [ "enso-build", "enso-build-base", "enso-formatter", - "futures 0.3.26", + "futures", "futures-util", "glob", "humantime 2.1.0", @@ -2097,7 +2039,7 @@ name = "enso-debug-api" version = "0.1.0" dependencies = [ "derivative", - "futures 0.3.26", + "futures", "js-sys", "wasm-bindgen", "web-sys", @@ -2136,7 +2078,7 @@ dependencies = [ "enso-prelude", "enso-profiler", "ensogl-core", - "futures 0.3.26", + "futures", ] [[package]] @@ -2160,7 +2102,7 @@ dependencies = [ "enso-web", "keyboard-types", "nalgebra", - "percent-encoding 2.1.0", + "percent-encoding", "unicode-segmentation", "wasm-bindgen", "web-sys", @@ -2210,7 +2152,7 @@ dependencies = [ "ensogl-text-msdf", "failure", "flo_stream", - "futures 0.3.26", + "futures", "fuzzly", "ide-view", "itertools", @@ -2231,7 +2173,6 @@ dependencies = [ "wasm-bindgen-futures", "wasm-bindgen-test", "web-sys", - "websocket", ] [[package]] @@ -2317,7 +2258,7 @@ dependencies = [ "enso-executor", "enso-prelude", "flo_stream", - "futures 0.3.26", + "futures", ] [[package]] @@ -2400,7 +2341,7 @@ dependencies = [ "enso-shapely", "enso-web", "failure", - "futures 0.3.26", + "futures", "gen-iter", "itertools", "lazy_static", @@ -2420,7 +2361,7 @@ version = "0.1.0" dependencies = [ "enso-profiler-macros", "enso-web", - "futures 0.3.26", + "futures", "serde", "serde_json", "wasm-bindgen", @@ -2433,7 +2374,7 @@ dependencies = [ "derivative", "enso-prelude", "enso-profiler", - "futures 0.3.26", + "futures", "serde", "serde_json", ] @@ -2443,7 +2384,7 @@ name = "enso-profiler-demo-data" version = "0.1.0" dependencies = [ "enso-profiler", - "futures 0.3.26", + "futures", ] [[package]] @@ -2465,7 +2406,7 @@ version = "0.1.0" dependencies = [ "enso-profiler", "enso-profiler-data", - "futures 0.3.26", + "futures", ] [[package]] @@ -2558,7 +2499,7 @@ dependencies = [ "enso-text", "failure", "flo_stream", - "futures 0.3.26", + "futures", "parser", "span-tree", "wasm-bindgen-test", @@ -2668,7 +2609,7 @@ dependencies = [ "ensogl-text-embedded-fonts", "enum_dispatch", "failure", - "futures 0.3.26", + "futures", "itertools", "js-sys", "nalgebra", @@ -2935,10 +2876,10 @@ dependencies = [ "ensogl-text", "ensogl-text-msdf", "ensogl-tooltip", - "futures 0.3.26", + "futures", "qstring", "serde", - "url 2.3.0", + "url", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -2960,7 +2901,7 @@ dependencies = [ "ensogl-text", "ensogl-text-msdf", "ensogl-tooltip", - "futures 0.3.26", + "futures", "wasm-bindgen", "wasm-bindgen-futures", "web-sys", @@ -3145,7 +3086,7 @@ dependencies = [ "enso-bitmap", "enso-prelude", "fs_extra", - "futures 0.3.26", + "futures", "ide-ci", "manifest-dir-macros", "regex", @@ -3287,7 +3228,7 @@ dependencies = [ "ensogl-text-embedded-fonts", "ensogl-text-font-family", "failure", - "futures 0.3.26", + "futures", "ide-ci", "js-sys", "nalgebra", @@ -3336,7 +3277,7 @@ checksum = "44533bbbb3bb3c1fa17d9f2e4e38bbbaf8396ba82193c4cb1b6445d711445d36" dependencies = [ "atty", "humantime 1.3.0", - "log 0.4.17", + "log", "regex", "termcolor", ] @@ -3349,7 +3290,7 @@ checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1" dependencies = [ "errno-dragonfly", "libc", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -3390,12 +3331,6 @@ dependencies = [ "synstructure", ] -[[package]] -name = "fake-simd" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" - [[package]] name = "fastrand" version = "1.8.0" @@ -3413,7 +3348,7 @@ checksum = "4e884668cd0c7480504233e951174ddc3b382f7c2666e3b7310b5c4e7b0c37f9" dependencies = [ "cfg-if 1.0.0", "libc", - "redox_syscall 0.2.16", + "redox_syscall", "windows-sys", ] @@ -3432,7 +3367,7 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fdce2ac68e3bccc405e0255e9b56d7841c06f6c7d36a8aa8b2966fbb3995bd9a" dependencies = [ - "log 0.4.17", + "log", ] [[package]] @@ -3451,7 +3386,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b02e0d3667b27514149c1ac9b372d700f3e6df4bbaf6b7c5df12915de2996049" dependencies = [ - "futures 0.3.26", + "futures", "smallvec 1.10.0", ] @@ -3522,7 +3457,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5fc25a87fa4fd2094bffb06925852034d90a17f0d1e05197d4956d3555752191" dependencies = [ "matches", - "percent-encoding 2.1.0", + "percent-encoding", ] [[package]] @@ -3552,34 +3487,6 @@ version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2022715d62ab30faffd124d40b76f4134a550a87792276512b18d63272333394" -[[package]] -name = "fuchsia-cprng" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a06f77d526c1a601b7c4cdd98f54b5eaabffc14d5f2f0296febdc7f357c6d3ba" - -[[package]] -name = "fuchsia-zircon" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e9763c69ebaae630ba35f74888db465e49e259ba1bc0eda7d06f4a067615d82" -dependencies = [ - "bitflags", - "fuchsia-zircon-sys", -] - -[[package]] -name = "fuchsia-zircon-sys" -version = "0.3.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dcaa9ae7725d12cdb85b3ad99a434db70b468c09ded17e012d86b5c1010f7a7" - -[[package]] -name = "futures" -version = "0.1.31" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a471a38ef8ed83cd6e40aa59c1ffe17db6855c18e3604d9c4ed8c08ebc28678" - [[package]] name = "futures" version = "0.3.26" @@ -3719,7 +3626,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9" dependencies = [ "typenum", - "version_check 0.9.4", + "version_check", ] [[package]] @@ -3843,7 +3750,7 @@ version = "0.3.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5f9f29bc9dda355256b2916cf526ab02ce0aeaaaf2bad60d65ef3f12f11dd0f4" dependencies = [ - "bytes 1.1.0", + "bytes", "fnv", "futures-core", "futures-sink", @@ -3868,7 +3775,7 @@ version = "4.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "035ef95d03713f2c347a72547b7cd38cbc9af7cd51e6099fb62d586d4a6dee3a" dependencies = [ - "log 0.4.17", + "log", "pest", "pest_derive", "serde", @@ -3906,11 +3813,11 @@ checksum = "f3e372db8e5c0d213e0cd0b9be18be2aca3d44cf2fe30a9d46a65581cd454584" dependencies = [ "base64 0.13.1", "bitflags", - "bytes 1.1.0", + "bytes", "headers-core", "http", "httpdate", - "mime 0.3.16", + "mime", "sha1 0.10.5", ] @@ -3979,7 +3886,7 @@ version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "75f43d41e26995c17e71ee126451dd3941010b0514a81a9d11f3b341debc2399" dependencies = [ - "bytes 1.1.0", + "bytes", "fnv", "itoa 1.0.5", ] @@ -3990,7 +3897,7 @@ version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d5f38f16d184e36f2408a55281cd658ecbd3ca05cce6d6510a176eca393e26d1" dependencies = [ - "bytes 1.1.0", + "bytes", "http", "pin-project-lite", ] @@ -4029,7 +3936,7 @@ dependencies = [ "serde_json", "serde_qs", "serde_urlencoded", - "url 2.3.0", + "url", ] [[package]] @@ -4059,32 +3966,13 @@ version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4" -[[package]] -name = "hyper" -version = "0.10.16" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a0652d9a2609a968c14be1a9ea00bf4b1d64e2e1f53a1b51b6fff3a6e829273" -dependencies = [ - "base64 0.9.3", - "httparse", - "language-tags 0.2.2", - "log 0.3.9", - "mime 0.2.6", - "num_cpus", - "time 0.1.45", - "traitobject", - "typeable", - "unicase 1.4.2", - "url 1.7.2", -] - [[package]] name = "hyper" version = "0.14.23" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "034711faac9d2166cb1baf1a2fb0b60b1f277f8492fd72176c17f3515e1abd3c" dependencies = [ - "bytes 1.1.0", + "bytes", "futures-channel", "futures-core", "futures-util", @@ -4110,8 +3998,8 @@ checksum = "5f9f7a97316d44c0af9b0301e65010573a853a9fc97046d7331d7f6bc0fd5a64" dependencies = [ "ct-logs", "futures-util", - "hyper 0.14.23", - "log 0.4.17", + "hyper", + "log", "rustls 0.19.1", "rustls-native-certs", "tokio", @@ -4126,7 +4014,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1788965e61b367cd03a62950836d5cd41560c3577d90e40e0819373194d1661c" dependencies = [ "http", - "hyper 0.14.23", + "hyper", "rustls 0.20.8", "tokio", "tokio-rustls 0.23.4", @@ -4138,7 +4026,7 @@ version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bbb958482e8c7be4bc3cf272a766a2b0bf1a6755e7a6ae777f017a31d11b13b1" dependencies = [ - "hyper 0.14.23", + "hyper", "pin-project-lite", "tokio", "tokio-io-timeout", @@ -4150,8 +4038,8 @@ version = "0.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d6183ddfa99b85da61a140bea0efc93fdf56ceaa041b37d553518030827f9905" dependencies = [ - "bytes 1.1.0", - "hyper 0.14.23", + "bytes", + "hyper", "native-tls", "tokio", "tokio-native-tls", @@ -4164,13 +4052,13 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5617e92fc2f2501c3e2bc6ce547cad841adba2bae5b921c7e52510beca6d084c" dependencies = [ "base64 0.13.1", - "bytes 1.1.0", + "bytes", "http", "httpdate", - "language-tags 0.3.2", - "mime 0.3.16", - "percent-encoding 2.1.0", - "unicase 2.6.0", + "language-tags", + "mime", + "percent-encoding", + "unicase", ] [[package]] @@ -4184,7 +4072,7 @@ dependencies = [ "iana-time-zone-haiku", "js-sys", "wasm-bindgen", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -4206,7 +4094,7 @@ dependencies = [ "async-trait", "bincode 1.3.3", "byte-unit", - "bytes 1.1.0", + "bytes", "cached", "cfg-if 1.0.0", "chrono", @@ -4223,7 +4111,7 @@ dependencies = [ "flate2", "flume", "fs_extra", - "futures 0.3.26", + "futures", "futures-util", "glob", "graphql_client", @@ -4234,8 +4122,8 @@ dependencies = [ "indicatif", "itertools", "lazy_static", - "log 0.4.17", - "mime 0.3.16", + "log", + "mime", "multimap", "new_mime_guess", "nix", @@ -4270,8 +4158,8 @@ dependencies = [ "tokio-util", "tracing", "tracing-subscriber", - "unicase 2.6.0", - "url 2.3.0", + "unicase", + "url", "uuid 1.2.2", "walkdir", "warp", @@ -4471,17 +4359,6 @@ version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b9e0384b61958566e926dc50660321d12159025e767c18e043daf26b70104c39" -[[package]] -name = "idna" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e" -dependencies = [ - "matches", - "unicode-bidi", - "unicode-normalization", -] - [[package]] name = "idna" version = "0.2.3" @@ -4505,7 +4382,7 @@ version = "1.9.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399" dependencies = [ - "autocfg 1.1.0", + "autocfg", "hashbrown", ] @@ -4553,15 +4430,6 @@ dependencies = [ "windows-sys", ] -[[package]] -name = "iovec" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2b3ea6ff95e175473f8ffe6a7eb7c00d054240321b84c57051175fe3c1e075e" -dependencies = [ - "libc", -] - [[package]] name = "ipnet" version = "2.7.1" @@ -4598,7 +4466,7 @@ dependencies = [ "cesu8", "combine 4.6.6", "jni-sys", - "log 0.4.17", + "log", "thiserror", "walkdir", ] @@ -4628,7 +4496,7 @@ dependencies = [ "enso-shapely", "enso-web", "failure", - "futures 0.3.26", + "futures", "serde", "serde_json", ] @@ -4656,16 +4524,6 @@ dependencies = [ "cpufeatures", ] -[[package]] -name = "kernel32-sys" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" -dependencies = [ - "winapi 0.2.8", - "winapi-build", -] - [[package]] name = "keyboard-types" version = "0.5.0" @@ -4683,15 +4541,9 @@ version = "1.0.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0de8b303297635ad57c9f5059fd9cee7a47f8e8daa09df0fcd07dd39fb22977f" dependencies = [ - "log 0.4.17", + "log", ] -[[package]] -name = "language-tags" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a91d884b6667cd606bb5a69aa0c99ba811a115fc68915e7056ec08a46e93199a" - [[package]] name = "language-tags" version = "0.3.2" @@ -4758,34 +4610,16 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4" -[[package]] -name = "lock_api" -version = "0.3.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c4da24a77a3d8a6d4862d95f72e6fdb9c09a643ecdb402d754004a557f2bec75" -dependencies = [ - "scopeguard", -] - [[package]] name = "lock_api" version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "435011366fe56583b16cf956f9df0095b405b82d76425bc8981c0e22e60ec4df" dependencies = [ - "autocfg 1.1.0", + "autocfg", "scopeguard", ] -[[package]] -name = "log" -version = "0.3.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b" -dependencies = [ - "log 0.4.17", -] - [[package]] name = "log" version = "0.4.17" @@ -4878,16 +4712,7 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5de893c32cde5f383baa4c04c5d6dbdd735cfd4a794b0debdb2bb1b421da5ff4" dependencies = [ - "autocfg 1.1.0", -] - -[[package]] -name = "mime" -version = "0.2.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba626b8a6de5da682e1caa06bdb42a335aee5a84db8e5046a3e8ab17ba0a3ae0" -dependencies = [ - "log 0.3.9", + "autocfg", ] [[package]] @@ -4902,8 +4727,8 @@ version = "2.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4192263c238a5f0d0c6bfd21f336a313a4ce1c450542449ca191bb657b4642ef" dependencies = [ - "mime 0.3.16", - "unicase 2.6.0", + "mime", + "unicase", ] [[package]] @@ -4921,25 +4746,6 @@ dependencies = [ "adler", ] -[[package]] -name = "mio" -version = "0.6.23" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4afd66f5b91bf2a3bc13fad0e21caedac168ca4c707504e75585648ae80e4cc4" -dependencies = [ - "cfg-if 0.1.10", - "fuchsia-zircon", - "fuchsia-zircon-sys", - "iovec", - "kernel32-sys", - "libc", - "log 0.4.17", - "miow", - "net2", - "slab", - "winapi 0.2.8", -] - [[package]] name = "mio" version = "0.8.5" @@ -4947,23 +4753,11 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e5d732bc30207a6423068df043e3d02e0735b155ad7ce1a6f76fe2baa5b158de" dependencies = [ "libc", - "log 0.4.17", + "log", "wasi 0.11.0+wasi-snapshot-preview1", "windows-sys", ] -[[package]] -name = "miow" -version = "0.2.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ebd808424166322d4a38da87083bfddd3ac4c131334ed55856112eb06d46944d" -dependencies = [ - "kernel32-sys", - "net2", - "winapi 0.2.8", - "ws2_32-sys", -] - [[package]] name = "mockall" version = "0.7.2" @@ -5023,8 +4817,8 @@ checksum = "00dec633863867f29cb39df64a397cdf4a6354708ddd7759f70c7fb51c5f9182" dependencies = [ "buf_redux", "httparse", - "log 0.4.17", - "mime 0.3.16", + "log", + "mime", "mime_guess", "quick-error", "rand 0.8.5", @@ -5066,7 +4860,7 @@ checksum = "07226173c32f2926027b63cce4bcd8076c3552846cbe7925f3aaffeac0a3b92e" dependencies = [ "lazy_static", "libc", - "log 0.4.17", + "log", "openssl", "openssl-probe", "openssl-sys", @@ -5076,25 +4870,14 @@ dependencies = [ "tempfile", ] -[[package]] -name = "net2" -version = "0.2.38" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "74d0df99cfcd2530b2e694f6e17e7f37b8e26bb23983ac530c0c97408837c631" -dependencies = [ - "cfg-if 0.1.10", - "libc", - "winapi 0.3.9", -] - [[package]] name = "new_mime_guess" version = "4.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c2d684d1b59e0dc07b37e2203ef576987473288f530082512aff850585c61b1f" dependencies = [ - "mime 0.3.16", - "unicase 2.6.0", + "mime", + "unicase", ] [[package]] @@ -5148,7 +4931,7 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bc51db7b362b205941f71232e56c625156eb9a929f8cf74a428fd5bc094a4afc" dependencies = [ - "winapi 0.3.9", + "winapi", ] [[package]] @@ -5158,7 +4941,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84" dependencies = [ "overload", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -5167,7 +4950,7 @@ version = "0.4.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f" dependencies = [ - "autocfg 1.1.0", + "autocfg", "num-integer", "num-traits", ] @@ -5188,7 +4971,7 @@ version = "0.1.45" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9" dependencies = [ - "autocfg 1.1.0", + "autocfg", "num-traits", ] @@ -5198,7 +4981,7 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "12ac428b1cb17fce6f731001d307d351ec70a6d202fc2e60f7d4c5e42d8f4f07" dependencies = [ - "autocfg 1.1.0", + "autocfg", "num-integer", "num-traits", ] @@ -5209,7 +4992,7 @@ version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" dependencies = [ - "autocfg 1.1.0", + "autocfg", "libm", ] @@ -5267,7 +5050,7 @@ dependencies = [ "arc-swap", "async-trait", "base64 0.13.1", - "bytes 1.1.0", + "bytes", "cfg-if 1.0.0", "chrono", "hyperx", @@ -5279,7 +5062,7 @@ dependencies = [ "serde_json", "serde_path_to_error", "snafu", - "url 2.3.0", + "url", ] [[package]] @@ -5338,7 +5121,7 @@ version = "0.9.80" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "23bbbf7854cd45b83958ebe919f0e8e516793727652e27fda10a8384cfc790b7" dependencies = [ - "autocfg 1.1.0", + "autocfg", "cc", "libc", "pkg-config", @@ -5404,40 +5187,14 @@ version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "427c3892f9e783d91cc128285287e70a59e206ca452770ece88a76f7a3eddd72" -[[package]] -name = "parking_lot" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f842b1982eb6c2fe34036a4fbfb06dd185a3f5c8edfaacdf7d1ea10b07de6252" -dependencies = [ - "lock_api 0.3.4", - "parking_lot_core 0.6.3", - "rustc_version 0.2.3", -] - [[package]] name = "parking_lot" version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f" dependencies = [ - "lock_api 0.4.9", - "parking_lot_core 0.9.6", -] - -[[package]] -name = "parking_lot_core" -version = "0.6.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bda66b810a62be75176a80873726630147a5ca780cd33921e0b5709033e66b0a" -dependencies = [ - "cfg-if 0.1.10", - "cloudabi", - "libc", - "redox_syscall 0.1.57", - "rustc_version 0.2.3", - "smallvec 0.6.14", - "winapi 0.3.9", + "lock_api", + "parking_lot_core", ] [[package]] @@ -5448,7 +5205,7 @@ checksum = "ba1ef8814b5c993410bb3adfad7a5ed269563e4a2f90c41f5d85be7fb47133bf" dependencies = [ "cfg-if 1.0.0", "libc", - "redox_syscall 0.2.16", + "redox_syscall", "smallvec 1.10.0", "windows-sys", ] @@ -5520,7 +5277,7 @@ dependencies = [ "libc", "no-std-compat", "pelite-macros", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -5538,12 +5295,6 @@ dependencies = [ "base64 0.13.1", ] -[[package]] -name = "percent-encoding" -version = "1.0.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "31010dd2e1ac33d5b46a5b413495239882813e0369f8ed8a5e266f173602f831" - [[package]] name = "percent-encoding" version = "2.1.0" @@ -5675,10 +5426,10 @@ version = "2.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "22122d5ec4f9fe1b3916419b76be1e80bcb93f618d071d2edf841b137b2a2bd6" dependencies = [ - "autocfg 1.1.0", + "autocfg", "cfg-if 1.0.0", "libc", - "log 0.4.17", + "log", "wepoll-ffi", "windows-sys", ] @@ -5737,7 +5488,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "926d36b9553851b8b0005f1275891b392ee4d2d833852c417ed025477350fb9d" dependencies = [ "env_logger", - "log 0.4.17", + "log", ] [[package]] @@ -5760,7 +5511,7 @@ dependencies = [ "proc-macro2", "quote", "syn", - "version_check 0.9.4", + "version_check", ] [[package]] @@ -5771,7 +5522,7 @@ checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" dependencies = [ "proc-macro2", "quote", - "version_check 0.9.4", + "version_check", ] [[package]] @@ -5795,7 +5546,7 @@ version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "21dc42e00223fc37204bd4aa177e69420c604ca4a183209a8f9de30c6d934698" dependencies = [ - "bytes 1.1.0", + "bytes", "prost-derive", ] @@ -5818,7 +5569,7 @@ version = "0.11.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a5e0526209433e96d83d750dd81a99118edbc55739e7e61a46764fd2ad537788" dependencies = [ - "bytes 1.1.0", + "bytes", "prost", ] @@ -5831,7 +5582,7 @@ dependencies = [ "bitflags", "getopts", "memchr", - "unicase 2.6.0", + "unicase", ] [[package]] @@ -5840,7 +5591,7 @@ version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d464fae65fff2680baf48019211ce37aaec0c78e9264c84a3e484717f965104e" dependencies = [ - "percent-encoding 2.1.0", + "percent-encoding", ] [[package]] @@ -5858,25 +5609,6 @@ dependencies = [ "proc-macro2", ] -[[package]] -name = "rand" -version = "0.6.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d71dacdc3c88c1fde3885a3be3fbab9f35724e6ce99467f7d9c5026132184ca" -dependencies = [ - "autocfg 0.1.8", - "libc", - "rand_chacha 0.1.1", - "rand_core 0.4.2", - "rand_hc 0.1.0", - "rand_isaac", - "rand_jitter", - "rand_os", - "rand_pcg", - "rand_xorshift", - "winapi 0.3.9", -] - [[package]] name = "rand" version = "0.7.3" @@ -5887,7 +5619,7 @@ dependencies = [ "libc", "rand_chacha 0.2.2", "rand_core 0.5.1", - "rand_hc 0.2.0", + "rand_hc", ] [[package]] @@ -5901,16 +5633,6 @@ dependencies = [ "rand_core 0.6.4", ] -[[package]] -name = "rand_chacha" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "556d3a1ca6600bfcbab7c7c91ccb085ac7fbbcd70e008a98742e7847f4f7bcef" -dependencies = [ - "autocfg 0.1.8", - "rand_core 0.3.1", -] - [[package]] name = "rand_chacha" version = "0.2.2" @@ -5931,21 +5653,6 @@ dependencies = [ "rand_core 0.6.4", ] -[[package]] -name = "rand_core" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7a6fdeb83b075e8266dcc8762c22776f6877a63111121f5f8c7411e5be7eed4b" -dependencies = [ - "rand_core 0.4.2", -] - -[[package]] -name = "rand_core" -version = "0.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c33a3c44ca05fa6f1807d8e6743f3824e8509beca625669633be0acbdf509dc" - [[package]] name = "rand_core" version = "0.5.1" @@ -5974,15 +5681,6 @@ dependencies = [ "rand 0.8.5", ] -[[package]] -name = "rand_hc" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b40677c7be09ae76218dc623efbf7b18e34bced3f38883af07bb75630a21bc4" -dependencies = [ - "rand_core 0.3.1", -] - [[package]] name = "rand_hc" version = "0.2.0" @@ -5992,59 +5690,6 @@ dependencies = [ "rand_core 0.5.1", ] -[[package]] -name = "rand_isaac" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ded997c9d5f13925be2a6fd7e66bf1872597f759fd9dd93513dd7e92e5a5ee08" -dependencies = [ - "rand_core 0.3.1", -] - -[[package]] -name = "rand_jitter" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1166d5c91dc97b88d1decc3285bb0a99ed84b05cfd0bc2341bdf2d43fc41e39b" -dependencies = [ - "libc", - "rand_core 0.4.2", - "winapi 0.3.9", -] - -[[package]] -name = "rand_os" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b75f676a1e053fc562eafbb47838d67c84801e38fc1ba459e8f180deabd5071" -dependencies = [ - "cloudabi", - "fuchsia-cprng", - "libc", - "rand_core 0.4.2", - "rdrand", - "winapi 0.3.9", -] - -[[package]] -name = "rand_pcg" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "abf9b09b01790cfe0364f52bf32995ea3c39f4d2dd011eac241d2914146d0b44" -dependencies = [ - "autocfg 0.1.8", - "rand_core 0.4.2", -] - -[[package]] -name = "rand_xorshift" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cbf7e9e623549b0e21f6e97cf8ecf247c1a8fd2e8a992ae265314300b2455d5c" -dependencies = [ - "rand_core 0.3.1", -] - [[package]] name = "rawpointer" version = "0.2.1" @@ -6069,25 +5714,10 @@ checksum = "356a0625f1954f730c0201cdab48611198dc6ce21f4acff55089b5a78e6e835b" dependencies = [ "crossbeam-channel", "crossbeam-deque", - "crossbeam-utils 0.8.14", + "crossbeam-utils", "num_cpus", ] -[[package]] -name = "rdrand" -version = "0.4.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "678054eb77286b51581ba43620cc911abf02758c91f93f479767aed0f90458b2" -dependencies = [ - "rand_core 0.3.1", -] - -[[package]] -name = "redox_syscall" -version = "0.1.57" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce" - [[package]] name = "redox_syscall" version = "0.2.16" @@ -6104,7 +5734,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b033d837a7cf162d7993aded9304e30a83213c648b6e389db233191f891e5c2b" dependencies = [ "getrandom 0.2.8", - "redox_syscall 0.2.16", + "redox_syscall", "thiserror", ] @@ -6140,7 +5770,7 @@ version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7" dependencies = [ - "winapi 0.3.9", + "winapi", ] [[package]] @@ -6150,23 +5780,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "21eed90ec8570952d53b772ecf8f206aa1ec9a3d76b2521c56c42973f2d91ee9" dependencies = [ "base64 0.21.0", - "bytes 1.1.0", + "bytes", "encoding_rs", "futures-core", "futures-util", "h2", "http", "http-body", - "hyper 0.14.23", + "hyper", "hyper-rustls 0.23.2", "hyper-tls", "ipnet", "js-sys", - "log 0.4.17", - "mime 0.3.16", + "log", + "mime", "native-tls", "once_cell", - "percent-encoding 2.1.0", + "percent-encoding", "pin-project-lite", "rustls 0.20.8", "rustls-pemfile 1.0.2", @@ -6178,7 +5808,7 @@ dependencies = [ "tokio-rustls 0.23.4", "tokio-util", "tower-service", - "url 2.3.0", + "url", "wasm-bindgen", "wasm-bindgen-futures", "wasm-streams", @@ -6205,7 +5835,7 @@ dependencies = [ "spin 0.5.2", "untrusted", "web-sys", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -6268,7 +5898,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "35edb675feee39aec9c99fa5ff985081995a06d594114ae14cbe797ad7b7a6d7" dependencies = [ "base64 0.13.1", - "log 0.4.17", + "log", "ring", "sct 0.6.1", "webpki 0.21.4", @@ -6280,7 +5910,7 @@ version = "0.20.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fff78fc74d175294f4e83b28343315ffcfb114b156f0185e9741cb5570f50e2f" dependencies = [ - "log 0.4.17", + "log", "ring", "sct 0.7.0", "webpki 0.22.0", @@ -6535,7 +6165,7 @@ version = "0.8.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c7715380eec75f029a4ef7de39a9200e0a63823176b759d055b613f5a87df6a6" dependencies = [ - "percent-encoding 2.1.0", + "percent-encoding", "serde", "thiserror", ] @@ -6565,18 +6195,6 @@ dependencies = [ "unsafe-libyaml", ] -[[package]] -name = "sha-1" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7d94d0bede923b3cea61f3f1ff57ff8cdfd77b400fb8f9998949e0cf04163df" -dependencies = [ - "block-buffer 0.7.3", - "digest 0.8.1", - "fake-simd", - "opaque-debug", -] - [[package]] name = "sha-1" version = "0.10.1" @@ -6686,7 +6304,7 @@ version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef" dependencies = [ - "autocfg 1.1.0", + "autocfg", ] [[package]] @@ -6734,7 +6352,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd" dependencies = [ "libc", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -6749,7 +6367,7 @@ dependencies = [ "serde", "serde_json", "unicode-id", - "url 2.3.0", + "url", ] [[package]] @@ -6778,7 +6396,7 @@ version = "0.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f6002a767bff9e83f8eeecf883ecb8011875a21ae8da43bffb817a57e78cc09" dependencies = [ - "lock_api 0.4.9", + "lock_api", ] [[package]] @@ -6862,7 +6480,7 @@ dependencies = [ "ntapi", "once_cell", "rayon", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -6885,9 +6503,9 @@ dependencies = [ "cfg-if 1.0.0", "fastrand", "libc", - "redox_syscall 0.2.16", + "redox_syscall", "remove_dir_all", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -6970,7 +6588,7 @@ checksum = "1b797afad3f312d1c66a56d11d0316f916356d11bd158fbc6ca6389ff6bf805a" dependencies = [ "libc", "wasi 0.10.0+wasi-snapshot-preview1", - "winapi 0.3.9", + "winapi", ] [[package]] @@ -7031,13 +6649,13 @@ version = "1.25.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c8e00990ebabbe4c14c08aca901caed183ecd5c09562a12c824bb53d3c3fd3af" dependencies = [ - "autocfg 1.1.0", - "bytes 1.1.0", + "autocfg", + "bytes", "libc", "memchr", - "mio 0.8.5", + "mio", "num_cpus", - "parking_lot 0.12.1", + "parking_lot", "pin-project-lite", "signal-hook-registry", "socket2", @@ -7046,38 +6664,6 @@ dependencies = [ "windows-sys", ] -[[package]] -name = "tokio-codec" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "25b2998660ba0e70d18684de5d06b70b70a3a747469af9dea7618cc59e75976b" -dependencies = [ - "bytes 0.4.12", - "futures 0.1.31", - "tokio-io", -] - -[[package]] -name = "tokio-executor" -version = "0.1.10" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fb2d1b8f4548dbf5e1f7818512e9c406860678f29c300cdf0ebac72d1a3a1671" -dependencies = [ - "crossbeam-utils 0.7.2", - "futures 0.1.31", -] - -[[package]] -name = "tokio-io" -version = "0.1.13" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "57fc868aae093479e3131e3d165c93b1c7474109d13c90ec0dda2a1bbfff0674" -dependencies = [ - "bytes 0.4.12", - "futures 0.1.31", - "log 0.4.17", -] - [[package]] name = "tokio-io-timeout" version = "1.2.0" @@ -7109,25 +6695,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "tokio-reactor" -version = "0.1.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09bc590ec4ba8ba87652da2068d150dcada2cfa2e07faae270a5e0409aa51351" -dependencies = [ - "crossbeam-utils 0.7.2", - "futures 0.1.31", - "lazy_static", - "log 0.4.17", - "mio 0.6.23", - "num_cpus", - "parking_lot 0.9.0", - "slab", - "tokio-executor", - "tokio-io", - "tokio-sync", -] - [[package]] name = "tokio-rustls" version = "0.22.0" @@ -7161,41 +6728,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "tokio-sync" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "edfe50152bc8164fcc456dab7891fa9bf8beaf01c5ee7e1dd43a397c3cf87dee" -dependencies = [ - "fnv", - "futures 0.1.31", -] - -[[package]] -name = "tokio-tcp" -version = "0.1.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98df18ed66e3b72e742f185882a9e201892407957e45fbff8da17ae7a7c51f72" -dependencies = [ - "bytes 0.4.12", - "futures 0.1.31", - "iovec", - "mio 0.6.23", - "tokio-io", - "tokio-reactor", -] - -[[package]] -name = "tokio-tls" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "354b8cd83825b3c20217a9dc174d6a0c67441a2fae5c41bcb1ea6679f6ae0f7c" -dependencies = [ - "futures 0.1.31", - "native-tls", - "tokio-io", -] - [[package]] name = "tokio-tungstenite" version = "0.17.2" @@ -7203,7 +6735,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f714dd15bead90401d77e04243611caec13726c2408afd5b31901dfcdcb3b181" dependencies = [ "futures-util", - "log 0.4.17", + "log", "tokio", "tungstenite", ] @@ -7214,7 +6746,7 @@ version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0bb2e075f03b3d66d8d8785356224ba688d2906a371015e225beeb65ca92c740" dependencies = [ - "bytes 1.1.0", + "bytes", "futures-core", "futures-io", "futures-sink", @@ -7262,15 +6794,15 @@ dependencies = [ "async-trait", "axum", "base64 0.13.1", - "bytes 1.1.0", + "bytes", "futures-core", "futures-util", "h2", "http", "http-body", - "hyper 0.14.23", + "hyper", "hyper-timeout", - "percent-encoding 2.1.0", + "percent-encoding", "pin-project", "prost", "prost-derive", @@ -7311,7 +6843,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f873044bf02dd1e8239e9c1293ea39dad76dc594ec16185d0a1bf31d8dc8d858" dependencies = [ "bitflags", - "bytes 1.1.0", + "bytes", "futures-core", "futures-util", "http", @@ -7342,7 +6874,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8ce8c33a8d48bd45d624a6e523445fd21ec13d3653cd51f681abf67418f54eb8" dependencies = [ "cfg-if 1.0.0", - "log 0.4.17", + "log", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -7386,7 +6918,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "78ddad33d2d10b1ed7eb9d1f518a5674713876e97e5bb9b7345a7984fbb4f922" dependencies = [ "lazy_static", - "log 0.4.17", + "log", "tracing-core", ] @@ -7408,12 +6940,6 @@ dependencies = [ "tracing-log", ] -[[package]] -name = "traitobject" -version = "0.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "efd1f82c56340fdf16f2a953d7bda4f8fdffba13d93b00844c25572110b26079" - [[package]] name = "try-lock" version = "0.2.4" @@ -7434,14 +6960,14 @@ checksum = "e27992fd6a8c29ee7eef28fc78349aa244134e10ad447ce3b9f0ac0ed0fa4ce0" dependencies = [ "base64 0.13.1", "byteorder", - "bytes 1.1.0", + "bytes", "http", "httparse", - "log 0.4.17", + "log", "rand 0.8.5", - "sha-1 0.10.1", + "sha-1", "thiserror", - "url 2.3.0", + "url", "utf-8", ] @@ -7454,12 +6980,6 @@ dependencies = [ "memchr", ] -[[package]] -name = "typeable" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1410f6f91f21d1612654e7cc69193b0334f909dcf2c790c4826254fbb86f8887" - [[package]] name = "typenum" version = "1.16.0" @@ -7472,22 +6992,13 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9e79c4d996edb816c91e4308506774452e55e95c3c9de07b6729e17e15a5ef81" -[[package]] -name = "unicase" -version = "1.4.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7f4765f83163b74f957c797ad9253caf97f103fb064d3999aea9568d09fc8a33" -dependencies = [ - "version_check 0.1.5", -] - [[package]] name = "unicase" version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "50f37be617794602aabbeee0be4f259dc1778fabe05e2d67ee8f79326d5cb4f6" dependencies = [ - "version_check 0.9.4", + "version_check", ] [[package]] @@ -7580,17 +7091,6 @@ version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" -[[package]] -name = "url" -version = "1.7.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a" -dependencies = [ - "idna 0.1.5", - "matches", - "percent-encoding 1.0.1", -] - [[package]] name = "url" version = "2.3.0" @@ -7598,8 +7098,8 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "22fe195a4f217c25b25cb5058ced57059824a678474874038dc88d211bf508d3" dependencies = [ "form_urlencoded", - "idna 0.2.3", - "percent-encoding 2.1.0", + "idna", + "percent-encoding", "serde", ] @@ -7654,7 +7154,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2209b78d1249f7e6f3293657c9779fe31ced465df091bbd433a1cf88e916ec55" dependencies = [ "ctor", - "version_check 0.9.4", + "version_check", ] [[package]] @@ -7663,12 +7163,6 @@ version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" -[[package]] -name = "version_check" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd" - [[package]] name = "version_check" version = "0.9.4" @@ -7700,7 +7194,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56" dependencies = [ "same-file", - "winapi 0.3.9", + "winapi", "winapi-util", ] @@ -7710,7 +7204,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1ce8a968cb1cd110d136ff8b819a556d6fb6d919363c61534f6860c7eb172ba0" dependencies = [ - "log 0.4.17", + "log", "try-lock", ] @@ -7720,17 +7214,17 @@ version = "0.3.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ed7b8be92646fc3d18b06147664ebc5f48d222686cb11a8755e561a735aacc6d" dependencies = [ - "bytes 1.1.0", + "bytes", "futures-channel", "futures-util", "headers", "http", - "hyper 0.14.23", - "log 0.4.17", - "mime 0.3.16", + "hyper", + "log", + "mime", "mime_guess", "multipart", - "percent-encoding 2.1.0", + "percent-encoding", "pin-project", "rustls-pemfile 0.2.1", "scoped-tls", @@ -7782,7 +7276,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95ce90fd5bcc06af55a641a86428ee4229e44e07033963a2290a8e241607ccb9" dependencies = [ "bumpalo", - "log 0.4.17", + "log", "once_cell", "proc-macro2", "quote", @@ -7913,47 +7407,6 @@ dependencies = [ "webpki 0.22.0", ] -[[package]] -name = "websocket" -version = "0.26.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "92aacab060eea423e4036820ddd28f3f9003b2c4d8048cbda985e5a14e18038d" -dependencies = [ - "bytes 0.4.12", - "futures 0.1.31", - "hyper 0.10.16", - "native-tls", - "rand 0.6.5", - "tokio-codec", - "tokio-io", - "tokio-reactor", - "tokio-tcp", - "tokio-tls", - "unicase 1.4.2", - "url 1.7.2", - "websocket-base", -] - -[[package]] -name = "websocket-base" -version = "0.26.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "49aec794b07318993d1db16156d5a9c750120597a5ee40c6b928d416186cb138" -dependencies = [ - "base64 0.10.1", - "bitflags", - "byteorder", - "bytes 0.4.12", - "futures 0.1.31", - "native-tls", - "rand 0.6.5", - "sha-1 0.8.2", - "tokio-codec", - "tokio-io", - "tokio-tcp", - "tokio-tls", -] - [[package]] name = "websocket-codec" version = "0.5.2" @@ -7962,7 +7415,7 @@ checksum = "2108c9c18a6e746addc085c18cedb66b672e8ffea6a993712decc295b0d8ae55" dependencies = [ "base64 0.13.1", "byteorder", - "bytes 1.1.0", + "bytes", "httparse", "rand 0.8.5", "sha1 0.6.1", @@ -7976,14 +7429,14 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1d6cae39139c6e837afebd915935e7adc8af5c28425935de606d0e8c9d3268f6" dependencies = [ "base64 0.13.1", - "bytes 1.1.0", - "futures 0.3.26", + "bytes", + "futures", "native-tls", "rand 0.8.5", "tokio", "tokio-native-tls", "tokio-util", - "url 2.3.0", + "url", "websocket-codec", ] @@ -8027,12 +7480,6 @@ dependencies = [ "web-sys", ] -[[package]] -name = "winapi" -version = "0.2.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a" - [[package]] name = "winapi" version = "0.3.9" @@ -8043,12 +7490,6 @@ dependencies = [ "winapi-x86_64-pc-windows-gnu", ] -[[package]] -name = "winapi-build" -version = "0.1.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d315eee3b34aca4797b2da6b13ed88266e6d612562a0c46390af8299fc699bc" - [[package]] name = "winapi-i686-pc-windows-gnu" version = "0.4.0" @@ -8061,7 +7502,7 @@ version = "0.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "70ec6ce85bb158151cae5e5c87f95a8e97d2c0c4b001223f33a334e3ce5de178" dependencies = [ - "winapi 0.3.9", + "winapi", ] [[package]] @@ -8133,7 +7574,7 @@ version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "80d0f4e272c85def139476380b12f9ac60926689dd2e01d4923222f40580869d" dependencies = [ - "winapi 0.3.9", + "winapi", ] [[package]] @@ -8146,11 +7587,11 @@ dependencies = [ "async-trait", "base64 0.13.1", "deadpool", - "futures 0.3.26", + "futures", "futures-timer", "http-types", - "hyper 0.14.23", - "log 0.4.17", + "hyper", + "log", "once_cell", "regex", "serde", @@ -8158,16 +7599,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "ws2_32-sys" -version = "0.2.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d59cefebd0c892fa2dd6de581e937301d8552cb44489cdff035c6187cb63fa5e" -dependencies = [ - "winapi 0.2.8", - "winapi-build", -] - [[package]] name = "wstest" version = "0.1.0" @@ -8176,12 +7607,12 @@ dependencies = [ "clap 3.2.23", "either", "enso-prelude", - "futures 0.3.26", + "futures", "regex", "time 0.3.17", "tokio", "tokio-stream", - "url 2.3.0", + "url", "websocket-lite", ] @@ -8226,6 +7657,6 @@ checksum = "537ce7411d25e54e8ae21a7ce0b15840e7bfcff15b51d697ec3266cc76bdf080" dependencies = [ "byteorder", "crc32fast", - "crossbeam-utils 0.8.14", + "crossbeam-utils", "flate2", ] diff --git a/app/gui/Cargo.toml b/app/gui/Cargo.toml index aa0dc1de9d40..5a57c3454fcd 100644 --- a/app/gui/Cargo.toml +++ b/app/gui/Cargo.toml @@ -62,9 +62,6 @@ ordered-float = "3.4.0" 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 } diff --git a/app/gui/view/examples/text-grid-visualization/src/lib.rs b/app/gui/view/examples/text-grid-visualization/src/lib.rs index cfc8c4f4ce10..f5f0494e016f 100644 --- a/app/gui/view/examples/text-grid-visualization/src/lib.rs +++ b/app/gui/view/examples/text-grid-visualization/src/lib.rs @@ -16,8 +16,6 @@ use ensogl::prelude::*; -use crate::text_visualization::TextGrid; - use ensogl::animation; use ensogl::application::Application; use ensogl::display::navigation::navigator::Navigator; @@ -25,8 +23,8 @@ use ensogl::system::web; use ensogl::system::web::traits::DocumentOps; use ensogl::system::web::traits::ElementOps; use ensogl_text_msdf::run_once_initialized; -use ide_view::graph_editor::builtin::visualization::native::text_visualization; use ide_view::graph_editor::builtin::visualization::native::text_visualization::text_provider; +use ide_view::graph_editor::builtin::visualization::native::text_visualization::TextGrid; diff --git a/app/gui/view/graph-editor/src/builtin/visualization/native/text_visualization.rs b/app/gui/view/graph-editor/src/builtin/visualization/native/text_visualization.rs index ac8ce22dd457..f99e2fd92cb1 100644 --- a/app/gui/view/graph-editor/src/builtin/visualization/native/text_visualization.rs +++ b/app/gui/view/graph-editor/src/builtin/visualization/native/text_visualization.rs @@ -61,7 +61,7 @@ const CHARS_PER_CHUNK: usize = 20; /// loaded in each direction around the visible grid. So a value of 5 with a base grid of 20x10 will /// load 25x15 grid. const CACHE_PADDING: u32 = 15; -const PADDING_TEXT: f32 = 5.0; +const PADDING_TEXT: f32 = 10.0; @@ -325,7 +325,7 @@ impl TextGrid { frp::extend! { network - scroll_positition <- all(&scrollbar_h.thumb_position, &scrollbar_v.thumb_position); + scroll_position <- all(&scrollbar_h.thumb_position, &scrollbar_v.thumb_position); longest_line_with_init <- all(&init, &text_provider.longest_line)._1(); lines_with_init <- all(&init, &text_provider.line_count)._1(); @@ -350,6 +350,12 @@ impl TextGrid { text_grid_content_size_y <- text_grid.content_size.map(|size| size.y).on_change(); text_grid_content_size_y_previous <- text_grid_content_size_y.previous(); + scrollbar_h.set_max <+ text_grid_content_size_x; + scrollbar_v.set_max <+ text_grid_content_size_y; + + scrollbar_h.set_thumb_size <+ frp.set_size.map(|size| size.x - 2.0 * PADDING_TEXT); + scrollbar_v.set_thumb_size <+ frp.set_size.map(|size| size.y - 2.0 * PADDING_TEXT); + horizontal_scrollbar_change_args <- all( text_grid_content_size_x, text_grid_content_size_x_previous, @@ -373,34 +379,20 @@ impl TextGrid { thumb_position * content_size_y_previous / content_size_y }); - size_update <- all(&frp.set_size, &text_grid.content_size); - scrollbar_sizes <- size_update.map(|(vis_size, content_size)| { - vis_size.iter().zip(content_size.iter()).map(|(vis_size, content_size)| { - if *content_size > 0.0 { - (vis_size / content_size).clamp(0.0,1.0) - } else { - 0.0 - } - }).collect_tuple::<(f32,f32)>() - }).unwrap(); - scrollbar_h.set_thumb_size <+ scrollbar_sizes._0(); - scrollbar_v.set_thumb_size <+ scrollbar_sizes._1(); - - viewport <- all_with4( + viewport <- all_with3( &init, - &scroll_positition, + &scroll_position, &frp.set_size, - &text_grid.content_size, - f!([dom_entry_root](_, scroll_position, vis_size, content_size) { + f!([dom_entry_root] (_, scroll_position, vis_size) { let (scroll_x, scroll_y) = *scroll_position; - let top = -scroll_y * content_size.y; + let top = -scroll_y; let bottom = top - vis_size.y; - let left = scroll_x * content_size.x; - let right = left + vis_size.x; + let left = scroll_x; + let right = left + vis_size.x; // Set DOM element size. - dom_entry_root.set_style_or_warn("top", format!("{}px", top + PADDING_TEXT)); - dom_entry_root.set_style_or_warn("left", format!("{}px", -left + PADDING_TEXT)); + dom_entry_root.set_style_or_warn("top", format!("{top}px")); + dom_entry_root.set_style_or_warn("left", format!("{}px", -left)); // Output viewport. let viewport = grid_view::Viewport {top, bottom, left, right}; diff --git a/app/gui/view/graph-editor/src/builtin/visualization/native/text_visualization/grid_view_entry.rs b/app/gui/view/graph-editor/src/builtin/visualization/native/text_visualization/grid_view_entry.rs index 61c7078baedc..f1d1a80591d4 100644 --- a/app/gui/view/graph-editor/src/builtin/visualization/native/text_visualization/grid_view_entry.rs +++ b/app/gui/view/graph-editor/src/builtin/visualization/native/text_visualization/grid_view_entry.rs @@ -77,6 +77,11 @@ impl Entry { let mut style = "position: absolute; white-space: pre; pointer-events: auto;".to_string(); write!(style, "left: {left}px; top: {top}px;").ok(); write!(style, "width: {width}px; height: {height}px;").ok(); + // The default line height in browsers is 1.2, which is great for multi-line text and + // elements whose height is greater than the line height. In this case, however, where the + // height and the font size are set to the same value, the default setting of 1.2 pushes + // the text below the allotted space. + write!(style, "line-height: 1").ok(); self.text.set_attribute_or_warn("style", style); } diff --git a/app/ide-desktop/lib/client/src/file-associations.ts b/app/ide-desktop/lib/client/src/file-associations.ts index 02dc0bfbfd3c..4a6e1c67c330 100644 --- a/app/ide-desktop/lib/client/src/file-associations.ts +++ b/app/ide-desktop/lib/client/src/file-associations.ts @@ -104,7 +104,7 @@ export function isFileOpenable(path: string): boolean { * we manually start a new instance of the application and pass the file path to it (using the * Windows-style command). */ -export function onFileOpened(event: Event, path: string): string | void { +export function onFileOpened(event: Event, path: string): string | null { logger.log(`Received 'open-file' event for path '${path}'.`) if (isFileOpenable(path)) { logger.log(`The file '${path}' is openable.`) @@ -114,7 +114,6 @@ export function onFileOpened(event: Event, path: string): string | void { if (!electron.app.isReady() && CLIENT_ARGUMENTS.length === 0) { event.preventDefault() logger.log(`Opening file '${path}'.`) - // eslint-disable-next-line no-restricted-syntax return handleOpenFile(path) } else { // We need to start another copy of the application, as the first one is already running. @@ -128,9 +127,11 @@ export function onFileOpened(event: Event, path: string): string | void { }) // Prevent parent (this) process from waiting for the child to exit. child.unref() + return null } } else { logger.log(`The file '${path}' is not openable, ignoring the 'open-file' event.`) + return null } } diff --git a/build/build/src/ci_gen.rs b/build/build/src/ci_gen.rs index 089834e3ce1b..57ee9ffa733a 100644 --- a/build/build/src/ci_gen.rs +++ b/build/build/src/ci_gen.rs @@ -293,8 +293,8 @@ pub fn changelog() -> Result { pub fn nightly() -> Result { let on = Event { workflow_dispatch: Some(default()), - // 5am (UTC) from Tuesday to Saturday (i.e. after every workday) - schedule: vec![Schedule::new("0 5 * * 2-6")?], + // 2am (UTC) from Tuesday to Saturday (i.e. after every workday) + schedule: vec![Schedule::new("0 2 * * 2-6")?], ..default() }; diff --git a/build/cli/src/lib.rs b/build/cli/src/lib.rs index 7ab115122e0f..c6fc4f497cc7 100644 --- a/build/cli/src/lib.rs +++ b/build/cli/src/lib.rs @@ -86,6 +86,8 @@ use ide_ci::programs::git; use ide_ci::programs::git::clean; use ide_ci::programs::rustc; use ide_ci::programs::Cargo; +use ide_ci::programs::Npm; +use ide_ci::programs::Npx; use std::time::Duration; use tempfile::tempdir; use tokio::process::Child; @@ -835,6 +837,10 @@ pub async fn main_internal(config: Option) -> Result .await?; prettier::check(&ctx.repo_root).await?; + let js_modules_root = ctx.repo_root.join("app/ide-desktop"); + Npm.cmd()?.current_dir(&js_modules_root).args(["install"]).run_ok().await?; + Npm.cmd()?.current_dir(&js_modules_root).args(["run", "typecheck"]).run_ok().await?; + Npx.cmd()?.current_dir(&js_modules_root).args(["eslint", "."]).run_ok().await?; } Target::Fmt => { let prettier = prettier::write(&ctx.repo_root); diff --git a/engine/language-server/src/main/scala/org/enso/languageserver/text/CollaborativeBuffer.scala b/engine/language-server/src/main/scala/org/enso/languageserver/text/CollaborativeBuffer.scala index c9510c0d5293..24f3056e6eac 100644 --- a/engine/language-server/src/main/scala/org/enso/languageserver/text/CollaborativeBuffer.scala +++ b/engine/language-server/src/main/scala/org/enso/languageserver/text/CollaborativeBuffer.scala @@ -136,7 +136,23 @@ class CollaborativeBuffer( case JsonSessionTerminated(client) => if (clients.contains(client.clientId)) { - removeClient(buffer, clients, lockHolder, client.clientId, autoSave) + autoSave.get(client.clientId) match { + case Some((contentVersion, cancellable)) => + cancellable.cancel() + saveFile( + buffer, + clients, + lockHolder, + client.clientId, + contentVersion, + autoSave, + isAutoSave = true, + onClose = Some(client.clientId), + reportProgress = Some(sender()) + ) + case None => + removeClient(buffer, clients, lockHolder, client.clientId, autoSave) + } } case CloseFile(clientId, _) => diff --git a/engine/language-server/src/test/scala/org/enso/languageserver/websocket/json/BaseServerTest.scala b/engine/language-server/src/test/scala/org/enso/languageserver/websocket/json/BaseServerTest.scala index e34496602e46..a7fef1577b8c 100644 --- a/engine/language-server/src/test/scala/org/enso/languageserver/websocket/json/BaseServerTest.scala +++ b/engine/language-server/src/test/scala/org/enso/languageserver/websocket/json/BaseServerTest.scala @@ -362,6 +362,14 @@ class BaseServerTest client } + def getInitialisedWsClientAndId( + debug: Boolean = false + ): (WsTestClient, ClientId) = { + val client = new WsTestClient(address, debugMessages = debug) + val uuid = initSession(client) + (client, uuid) + } + private def initSession(client: WsTestClient): UUID = { initPackage val clientId = UUID.randomUUID() diff --git a/engine/language-server/src/test/scala/org/enso/languageserver/websocket/json/TextOperationsTest.scala b/engine/language-server/src/test/scala/org/enso/languageserver/websocket/json/TextOperationsTest.scala index 8169e5924757..50c35949babd 100644 --- a/engine/language-server/src/test/scala/org/enso/languageserver/websocket/json/TextOperationsTest.scala +++ b/engine/language-server/src/test/scala/org/enso/languageserver/websocket/json/TextOperationsTest.scala @@ -2,8 +2,9 @@ package org.enso.languageserver.websocket.json import akka.testkit.TestProbe import io.circe.literal._ -import org.enso.languageserver.event.BufferClosed +import org.enso.languageserver.event.{BufferClosed, JsonSessionTerminated} import org.enso.languageserver.filemanager.Path +import org.enso.languageserver.session.JsonSession import org.enso.testkit.FlakySpec import scala.concurrent.duration._ @@ -2601,8 +2602,6 @@ class TextOperationsTest extends BaseServerTest with FlakySpec { "result": null } """) - Thread.sleep(5.seconds.toMillis) - // Should return the original contents of the file client2.send(json""" { "jsonrpc": "2.0", "method": "file/read", @@ -2621,6 +2620,129 @@ class TextOperationsTest extends BaseServerTest with FlakySpec { "result": { "contents": "bar123456789foo" } } """) + + } + + "be triggered when a client closed session abruptly" in { + this.timingsConfig.withAutoSave(10.seconds) + + val (client1, client1Id) = getInitialisedWsClientAndId() + val client2 = getInitialisedWsClient() + client1.send(json""" + { "jsonrpc": "2.0", + "method": "file/write", + "id": 0, + "params": { + "path": { + "rootId": $testContentRootId, + "segments": [ "foo.txt" ] + }, + "contents": "123456789" + } + } + """) + client1.expectJson(json""" + { "jsonrpc": "2.0", + "id": 0, + "result": null + } + """) + client1.send(json""" + { "jsonrpc": "2.0", + "method": "text/openFile", + "id": 1, + "params": { + "path": { + "rootId": $testContentRootId, + "segments": [ "foo.txt" ] + } + } + } + """) + client1.expectJson(json""" + { + "jsonrpc" : "2.0", + "id" : 1, + "result" : { + "writeCapability" : { + "method" : "text/canEdit", + "registerOptions" : { + "path" : { + "rootId" : $testContentRootId, + "segments" : [ + "foo.txt" + ] + } + } + }, + "content" : "123456789", + "currentVersion" : "5795c3d628fd638c9835a4c79a55809f265068c88729a1a3fcdf8522" + } + } + """) + + client1.send(json""" + { "jsonrpc": "2.0", + "method": "text/applyEdit", + "id": 2, + "params": { + "edit": { + "path": { + "rootId": $testContentRootId, + "segments": [ "foo.txt" ] + }, + "oldVersion": "5795c3d628fd638c9835a4c79a55809f265068c88729a1a3fcdf8522", + "newVersion": "ebe55342f9c8b86857402797dd723fb4a2174e0b56d6ace0a6929ec3", + "edits": [ + { + "range": { + "start": { "line": 0, "character": 0 }, + "end": { "line": 0, "character": 0 } + }, + "text": "bar" + }, + { + "range": { + "start": { "line": 0, "character": 12 }, + "end": { "line": 0, "character": 12 } + }, + "text": "foo" + } + ] + } + } + } + """) + client1.expectJson(json""" + { "jsonrpc": "2.0", + "id": 2, + "result": null + } + """) + + // Simulate client1 closing + system.eventStream.publish( + JsonSessionTerminated(JsonSession(client1Id, client1.actorRef())) + ) + client2.send(json""" + { "jsonrpc": "2.0", + "method": "file/read", + "id": 4, + "params": { + "path": { + "rootId": $testContentRootId, + "segments": [ "foo.txt" ] + } + } + } + """) + client2.expectJson(json""" + { "jsonrpc": "2.0", + "id": 4, + "result": { "contents": "bar123456789foo" } + } + """) + } } diff --git a/engine/runtime/src/main/java/org/enso/interpreter/node/callable/InvokeMethodNode.java b/engine/runtime/src/main/java/org/enso/interpreter/node/callable/InvokeMethodNode.java index 670882debfa3..79b74ab577d1 100644 --- a/engine/runtime/src/main/java/org/enso/interpreter/node/callable/InvokeMethodNode.java +++ b/engine/runtime/src/main/java/org/enso/interpreter/node/callable/InvokeMethodNode.java @@ -53,6 +53,7 @@ @ImportStatic({HostMethodCallNode.PolyglotCallType.class, HostMethodCallNode.class}) public abstract class InvokeMethodNode extends BaseNode { + protected static final int CACHE_SIZE = 10; private @Child InvokeFunctionNode invokeFunctionNode; private final ConditionProfile errorReceiverProfile = ConditionProfile.createCountingProfile(); private @Child InvokeMethodNode childDispatch; @@ -104,30 +105,46 @@ public void setTailStatus(TailStatus tailStatus) { public abstract Object execute( VirtualFrame frame, State state, UnresolvedSymbol symbol, Object self, Object[] arguments); - @Specialization(guards = {"typesLibrary.hasType(self)", "!typesLibrary.hasSpecialDispatch(self)"}) - Object doFunctionalDispatch( + @Specialization(guards = { + "typesLibrary.hasType(self)", + "!typesLibrary.hasSpecialDispatch(self)", + "cachedSymbol == symbol", + "cachedSelfTpe == typesLibrary.getType(self)", + "function != null" + }, limit = "CACHE_SIZE") + Object doFunctionalDispatchCachedSymbol( VirtualFrame frame, State state, UnresolvedSymbol symbol, Object self, Object[] arguments, @CachedLibrary(limit = "10") TypesLibrary typesLibrary, - @Cached MethodResolverNode methodResolverNode) { + @Cached MethodResolverNode methodResolverNode, + @Cached("symbol") UnresolvedSymbol cachedSymbol, + @Cached("typesLibrary.getType(self)") Type cachedSelfTpe, + @Cached("resolveFunction(cachedSymbol, cachedSelfTpe, methodResolverNode)") Function function) { + return invokeFunctionNode.execute(function, frame, state, arguments); + } - Type selfTpe = typesLibrary.getType(self); - Function function = methodResolverNode.expectNonNull(self, selfTpe, symbol); + Function resolveFunction(UnresolvedSymbol symbol, Type selfTpe, MethodResolverNode methodResolverNode) { + Function function = methodResolverNode.execute(selfTpe, symbol); + if (function == null) { + return null; + } RootNode where = function.getCallTarget().getRootNode(); // If both Any and the type where `function` is declared, define `symbol` // and the method is invoked statically, i.e. type of self is the eigentype, // then we want to disambiguate method resolution by always resolved to the one in Any. - if (where instanceof MethodRootNode node && typeCanOverride(node, EnsoContext.get(this))) { - Function anyFun = symbol.getScope().lookupMethodDefinition(EnsoContext.get(this).getBuiltins().any(), symbol.getName()); + EnsoContext ctx = EnsoContext.get(this); + if (where instanceof MethodRootNode node && typeCanOverride(node, ctx)) { + Type any = ctx.getBuiltins().any(); + Function anyFun = symbol.getScope().lookupMethodDefinition(any, symbol.getName()); if (anyFun != null) { function = anyFun; } } - return invokeFunctionNode.execute(function, frame, state, arguments); + return function; } private boolean typeCanOverride(MethodRootNode node, EnsoContext ctx) { @@ -137,13 +154,32 @@ private boolean typeCanOverride(MethodRootNode node, EnsoContext ctx) { Type warning = builtins.warning(); Type panic = builtins.panic(); return methodOwnerType.isEigenType() - && builtins.nothing() != methodOwnerType && any.getEigentype() != methodOwnerType && panic.getEigentype() != methodOwnerType && warning.getEigentype() != methodOwnerType; } + @Specialization( + replaces = "doFunctionalDispatchCachedSymbol", + guards = {"typesLibrary.hasType(self)", "!typesLibrary.hasSpecialDispatch(self)"}) + Object doFunctionalDispatchUncachedSymbol( + VirtualFrame frame, + State state, + UnresolvedSymbol symbol, + Object self, + Object[] arguments, + @CachedLibrary(limit = "10") TypesLibrary typesLibrary, + @Cached MethodResolverNode methodResolverNode) { + Type selfTpe = typesLibrary.getType(self); + Function function = resolveFunction(symbol, selfTpe, methodResolverNode); + if (function == null) { + throw new PanicException( + EnsoContext.get(this).getBuiltins().error().makeNoSuchMethod(self, symbol), this); + } + return invokeFunctionNode.execute(function, frame, state, arguments); + } + @Specialization Object doDataflowError( VirtualFrame frame, diff --git a/engine/runtime/src/main/scala/org/enso/compiler/PackageRepository.scala b/engine/runtime/src/main/scala/org/enso/compiler/PackageRepository.scala index b904ba969534..99ea89f033eb 100644 --- a/engine/runtime/src/main/scala/org/enso/compiler/PackageRepository.scala +++ b/engine/runtime/src/main/scala/org/enso/compiler/PackageRepository.scala @@ -391,11 +391,12 @@ object PackageRepository { s"""|import $modName |export $modName |""".stripMargin - ( - QualifiedName(namespace :: name :: parts, lastModuleName), + val syntheticModuleInfo = ( + QualifiedName(namespace :: name :: parts.reverse, lastModuleName), QualifiedName(namespace :: name :: pathElems, exportItem), modSource - ) :: listAllIntermediateModules( + ) + syntheticModuleInfo :: listAllIntermediateModules( namespace, name, parts, diff --git a/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/package.yaml b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/package.yaml new file mode 100644 index 000000000000..4a197bdc870d --- /dev/null +++ b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/package.yaml @@ -0,0 +1,6 @@ +name: Test_Deeply_Nested_Modules +license: APLv2 +enso-version: default +version: "0.0.1" +author: "Enso Team " +maintainer: "Enso Team " diff --git a/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A.enso b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A.enso new file mode 100644 index 000000000000..2a0d7d425d84 --- /dev/null +++ b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A.enso @@ -0,0 +1 @@ +type Foo_A diff --git a/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A/A_Mod.enso b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A/A_Mod.enso new file mode 100644 index 000000000000..b9b50be1cb1a --- /dev/null +++ b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A/A_Mod.enso @@ -0,0 +1,2 @@ +type A_Mod + Value a diff --git a/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A/B.enso b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A/B.enso new file mode 100644 index 000000000000..ef7b67c958d3 --- /dev/null +++ b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A/B.enso @@ -0,0 +1 @@ +type Foo_B diff --git a/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A/B/B_Mod.enso b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A/B/B_Mod.enso new file mode 100644 index 000000000000..cdcce6657294 --- /dev/null +++ b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A/B/B_Mod.enso @@ -0,0 +1,2 @@ +type B_Mod + Value a diff --git a/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A/B/C/C_Mod.enso b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A/B/C/C_Mod.enso new file mode 100644 index 000000000000..b7041e9da6b4 --- /dev/null +++ b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A/B/C/C_Mod.enso @@ -0,0 +1,2 @@ +type C_Mod + Value a diff --git a/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A/B/C/D/D_Mod.enso b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A/B/C/D/D_Mod.enso new file mode 100644 index 000000000000..956bd09d5c62 --- /dev/null +++ b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/A/B/C/D/D_Mod.enso @@ -0,0 +1,2 @@ +type D_Mod + Value a diff --git a/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/Main.enso b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/Main.enso new file mode 100644 index 000000000000..910c68d41e93 --- /dev/null +++ b/engine/runtime/src/test/resources/Test_Deeply_Nested_Modules/src/Main.enso @@ -0,0 +1,11 @@ +from Standard.Base import all + +import project.A.A_Mod +import project.A.B.B_Mod +import project.A.B + +main = + IO.println (A_Mod.A_Mod.Value 1) + IO.println (B.C.C_Mod.C_Mod.Value 1) + IO.println (B.C.D.D_Mod.D_Mod.Value 1) + 0 diff --git a/engine/runtime/src/test/scala/org/enso/interpreter/test/semantic/ImportsTest.scala b/engine/runtime/src/test/scala/org/enso/interpreter/test/semantic/ImportsTest.scala index ff739d19d052..fbe3abf305ea 100644 --- a/engine/runtime/src/test/scala/org/enso/interpreter/test/semantic/ImportsTest.scala +++ b/engine/runtime/src/test/scala/org/enso/interpreter/test/semantic/ImportsTest.scala @@ -191,4 +191,15 @@ class ImportsTest extends PackageTest { ) shouldEqual "Main.enso[2:1-2:57]: The exported type `Atom` in `local.Test_Fully_Qualified_Name_Conflict.Atom` module will cause name conflict when attempting to use a fully qualified name of the `local.Test_Fully_Qualified_Name_Conflict.Atom.Foo` module." } + "Deeply nested modules" should "infer correct synthetic modules" in { + evalTestProject( + "Test_Deeply_Nested_Modules" + ).toString shouldEqual "0" + val outLines = consumeOut + outLines should have length 3 + outLines(0) shouldEqual "(A_Mod.Value 1)" + outLines(1) shouldEqual "(C_Mod.Value 1)" + outLines(2) shouldEqual "(D_Mod.Value 1)" + } + } diff --git a/lib/scala/json-rpc-server-test/src/main/scala/org/enso/jsonrpc/test/JsonRpcServerTestKit.scala b/lib/scala/json-rpc-server-test/src/main/scala/org/enso/jsonrpc/test/JsonRpcServerTestKit.scala index a700a080c1be..e26dc4a948f9 100644 --- a/lib/scala/json-rpc-server-test/src/main/scala/org/enso/jsonrpc/test/JsonRpcServerTestKit.scala +++ b/lib/scala/json-rpc-server-test/src/main/scala/org/enso/jsonrpc/test/JsonRpcServerTestKit.scala @@ -140,6 +140,10 @@ abstract class JsonRpcServerTestKit } def expectNoMessage(): Unit = outActor.expectNoMessage() + + def actorRef(): ActorRef = { + outActor.ref + } } } diff --git a/lib/scala/project-manager/src/main/scala/org/enso/projectmanager/infrastructure/languageserver/LanguageServerController.scala b/lib/scala/project-manager/src/main/scala/org/enso/projectmanager/infrastructure/languageserver/LanguageServerController.scala index 0c58130a6cc9..283066070324 100644 --- a/lib/scala/project-manager/src/main/scala/org/enso/projectmanager/infrastructure/languageserver/LanguageServerController.scala +++ b/lib/scala/project-manager/src/main/scala/org/enso/projectmanager/infrastructure/languageserver/LanguageServerController.scala @@ -292,6 +292,11 @@ class LanguageServerController( maybeRequester.foreach(_ ! ServerShutdownTimedOut) stop() + case ClientDisconnected(clientId) => + logger.debug( + s"Received client ($clientId) disconnect request during shutdown. Ignoring." + ) + case m: StartServer => // This instance has not yet been shut down. Retry context.parent.forward(Retry(m))