From c0185a1c5f5a5c5221c287c2b947407ed5372b14 Mon Sep 17 00:00:00 2001 From: Matthew Blanchard Date: Sun, 1 Oct 2023 17:48:46 -0400 Subject: [PATCH 1/2] Changes to accomodate new pattern along path. --- Cargo.lock | 573 ++++--- Cargo.toml | 16 +- examples/S_.glifjson | 1616 ++++++++++++++++++++ src/contour_operations/patternalongpath.rs | 2 +- src/system_fonts/mod.rs | 3 +- src/tools/pap/dialog.rs | 138 +- src/tools/pap/mod.rs | 13 +- src/tools/select/mod.rs | 4 +- 8 files changed, 2071 insertions(+), 294 deletions(-) create mode 100644 examples/S_.glifjson diff --git a/Cargo.lock b/Cargo.lock index e8a0d55..405765f 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -65,7 +65,6 @@ dependencies = [ [[package]] name = "MFEKmath" version = "0.1.2" -source = "git+https://github.com/MFEK/math.rlib?branch=main#910d823fc326aac950241ac230c61b16b41efab4" dependencies = [ "flo_curves", "glifparser", @@ -95,9 +94,9 @@ checksum = "c71b1793ee61086797f5c80b6efa2b8ffa6d5dd703f118545808a7f2e27f7046" [[package]] name = "addr2line" -version = "0.19.0" +version = "0.21.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97" +checksum = "8a30b2e23b9e17a9f90641c7ab1549cd9b44f296d3ccbf309d2863cfe398a0cb" dependencies = [ "gimli", ] @@ -127,9 +126,9 @@ dependencies = [ [[package]] name = "aho-corasick" -version = "1.0.2" +version = "1.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43f6cb1bf222025340178f382c426f13757b2960e89779dfcb319c32542a5a41" +checksum = "0c378d78423fdad8089616f827526ee33c19f2fddbd5de1629152c9593ba4783" dependencies = [ "memchr", ] @@ -160,9 +159,9 @@ dependencies = [ [[package]] name = "anyhow" -version = "1.0.71" +version = "1.0.75" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9c7d0618f0e0b7e8ff11427422b64564d5fb0be1940354bfe2e0529b18a9d9b8" +checksum = "a4668cab20f66d8d020e1fbc0ebe47217433c1b6c8f2040faf858554e394ace6" [[package]] name = "arboard" @@ -185,9 +184,9 @@ dependencies = [ [[package]] name = "arrayvec" -version = "0.7.2" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6" +checksum = "96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711" [[package]] name = "atk" @@ -196,7 +195,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "812b4911e210bd51b24596244523c856ca749e6223c50a7fbbba3f89ee37c426" dependencies = [ "atk-sys", - "bitflags", + "bitflags 1.3.2", "glib", "glib-sys", "gobject-sys", @@ -217,9 +216,9 @@ dependencies = [ [[package]] name = "atomic_refcell" -version = "0.1.10" +version = "0.1.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "79d6dc922a2792b006573f60b2648076355daeae5ce9cb59507e5908c9625d31" +checksum = "112ef6b3f6cb3cb6fc5b6b494ef7a848492cff1ab0ef4de10b0f7d572861c905" [[package]] name = "atty" @@ -227,7 +226,7 @@ version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d9b39be18770d11421cdb1b9947a45dd3f37e93092cbf377614828a319d5fee8" dependencies = [ - "hermit-abi", + "hermit-abi 0.1.19", "libc", "winapi", ] @@ -240,30 +239,24 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "backtrace" -version = "0.3.67" +version = "0.3.69" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "233d376d6d185f2a3093e58f283f60f880315b6c60075b01f36b3b85154564ca" +checksum = "2089b7e3f35b9dd2d0ed921ead4f6d318c27680d4a5bd167b3ee120edb105837" dependencies = [ "addr2line", "cc", "cfg-if", "libc", - "miniz_oxide 0.6.2", + "miniz_oxide 0.7.1", "object", "rustc-demangle", ] [[package]] name = "base64" -version = "0.13.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8" - -[[package]] -name = "base64" -version = "0.21.2" +version = "0.21.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "604178f6c5c21f02dc555784810edfb88d34ac2c73b2eae109655649ee73ce3d" +checksum = "414dcefbc63d77c526a76b3afcf6fbb9b5e2791c19c3aa2297733208750c6e53" [[package]] name = "bindgen" @@ -271,7 +264,7 @@ version = "0.60.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "062dddbc1ba4aca46de6338e2bf87771414c335f7b2f2036e8f3e9befebf88e6" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cexpr", "clang-sys", "clap", @@ -294,6 +287,12 @@ version = "1.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" +[[package]] +name = "bitflags" +version = "2.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635" + [[package]] name = "block" version = "0.1.6" @@ -324,7 +323,7 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "c5c0f2e047e8ca53d0ff249c54ae047931d7a6ebe05d00af73e0ffeb6e34bdb8" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cairo-sys-rs", "glib", "glib-sys", @@ -352,9 +351,12 @@ checksum = "1582e1c9e755dd6ad6b224dcffb135d199399a4568d454bd89fe515ca8425695" [[package]] name = "cc" -version = "1.0.79" +version = "1.0.83" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f" +checksum = "f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0" +dependencies = [ + "libc", +] [[package]] name = "cexpr" @@ -373,9 +375,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "chrono" -version = "0.4.26" +version = "0.4.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ec837a71355b28f6556dbd569b37b3f363091c0bd4b2e735674521b4c5fd9bc5" +checksum = "95ed24df0632f708f5f6d8082675bef2596f7084dee3dd55f632290bf35bfe0f" dependencies = [ "android-tzdata", "iana-time-zone", @@ -383,7 +385,7 @@ dependencies = [ "num-traits", "time 0.1.45", "wasm-bindgen", - "winapi", + "windows-targets 0.48.5", ] [[package]] @@ -418,7 +420,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ea181bf566f71cb9a5d17a59e1871af638180a18fb0035c92ae62b705207123" dependencies = [ "atty", - "bitflags", + "bitflags 1.3.2", "clap_lex", "indexmap", "strsim", @@ -461,7 +463,7 @@ version = "0.24.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f425db7937052c684daec3bd6375c8abe2d146dca4b8b143d6db777c39138f3a" dependencies = [ - "bitflags", + "bitflags 1.3.2", "block", "cocoa-foundation", "core-foundation", @@ -477,7 +479,7 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "931d3837c286f56e3c58423ce4eba12d08db2374461a785c86f672b08b5650d6" dependencies = [ - "bitflags", + "bitflags 1.3.2", "block", "core-foundation", "core-graphics-types", @@ -494,13 +496,13 @@ checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b" [[package]] name = "colored" -version = "2.0.0" +version = "2.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3616f750b84d8f0de8a58bda93e08e2a81ad3f523089b05f1dffecab48c6cbd" +checksum = "2674ec482fbc38012cf31e6c42ba0177b431a0cb6f15fe40efa5aab1bda516f6" dependencies = [ - "atty", + "is-terminal", "lazy_static", - "winapi", + "windows-sys 0.48.0", ] [[package]] @@ -531,7 +533,7 @@ version = "0.22.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2581bbab3b8ffc6fcbd550bf46c355135d16e9ff2a6ea032ad6b9bf1d7efe4fb" dependencies = [ - "bitflags", + "bitflags 1.3.2", "core-foundation", "core-graphics-types", "foreign-types", @@ -540,13 +542,12 @@ dependencies = [ [[package]] name = "core-graphics-types" -version = "0.1.1" +version = "0.1.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b" +checksum = "2bb142d41022986c1d8ff29103a1411c8a3dfad3552f87a4f8dc50d61d4f4e33" dependencies = [ - "bitflags", + "bitflags 1.3.2", "core-foundation", - "foreign-types", "libc", ] @@ -583,9 +584,9 @@ dependencies = [ [[package]] name = "crossbeam-utils" -version = "0.8.15" +version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b" +checksum = "5a22b2d63d4d1dc0b7f1b6b2747dd0088008a9be28b6ddf0b1e7d335e3037294" dependencies = [ "cfg-if", ] @@ -596,7 +597,7 @@ version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2a011bbe2c35ce9c1f143b7af6f94f29a167beb4cd1d29e6740ce836f723120e" dependencies = [ - "nix 0.26.2", + "nix 0.26.4", "windows-sys 0.48.0", ] @@ -616,6 +617,12 @@ dependencies = [ "byteorder", ] +[[package]] +name = "deranged" +version = "0.3.8" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f2696e8a945f658fd14dc3b87242e6b80cd0f36ff04ea560fa39082368847946" + [[package]] name = "derivative" version = "2.2.0" @@ -695,9 +702,9 @@ dependencies = [ [[package]] name = "dyn-clone" -version = "1.0.11" +version = "1.0.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68b0cf012f1230e43cd00ebb729c6bb58707ecfa8ad08b52ef3a4ccd2697fc30" +checksum = "bbfc4744c1b8f2a09adc0e55242f60b1af195d88596bd8700be74418c056c555" [[package]] name = "ecolor" @@ -738,9 +745,9 @@ dependencies = [ [[package]] name = "either" -version = "1.8.1" +version = "1.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91" +checksum = "a26ae43d7bcc3b814de94796a5e736d4029efb0ee900c12e2d54c993ad1a1e07" [[package]] name = "emath" @@ -806,6 +813,27 @@ dependencies = [ "parking_lot", ] +[[package]] +name = "errno" +version = "0.3.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "136526188508e25c6fef639d7927dfb3e0e3084488bf202267829cf7fc23dbdd" +dependencies = [ + "errno-dragonfly", + "libc", + "windows-sys 0.48.0", +] + +[[package]] +name = "errno-dragonfly" +version = "0.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa68f1b12764fab894d2755d2518754e71b4fd80ecfb822714a1206c2aab39bf" +dependencies = [ + "cc", + "libc", +] + [[package]] name = "error-code" version = "2.3.1" @@ -843,21 +871,21 @@ checksum = "4742a071cd9694fc86f9fa1a08fa3e53d40cc899d7ee532295da2d085639fbc5" [[package]] name = "filetime" -version = "0.2.21" +version = "0.2.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5cbc844cecaee9d4443931972e1289c8ff485cb4cc2767cb03ca139ed6885153" +checksum = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.2.16", + "redox_syscall 0.3.5", "windows-sys 0.48.0", ] [[package]] name = "flate2" -version = "1.0.26" +version = "1.0.27" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b9429470923de8e8cbd4d2dc513535400b4b3fef0319fb5c4e1f520a7bef743" +checksum = "c6c98ee8095e9d1dcbf2fcc6d95acccb90d1c81db1e44725c6a984b1dbdfb010" dependencies = [ "crc32fast", "miniz_oxide 0.7.1", @@ -895,7 +923,7 @@ version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "46c9a156ec38864999bc9c4156e5f3b50224d4a5578028a64e5a3875caa9ee28" dependencies = [ - "bitflags", + "bitflags 1.3.2", "byteorder", "core-foundation", "core-graphics", @@ -1034,7 +1062,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.29", ] [[package]] @@ -1073,7 +1101,7 @@ version = "0.13.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "db00839b2a68a7a10af3fa28dfb3febaba3a20c3a9ac2425a33b7df1f84a6b7d" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cairo-rs", "cairo-sys-rs", "gdk-pixbuf", @@ -1155,9 +1183,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.27.2" +version = "0.28.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ad0a93d233ebf96623465aad4046a8d3aa4da22d4f4beba5388838c8a434bbb4" +checksum = "6fb8d784f27acf97159b40fc4db5ecd8aa23b9ad5ef69cdd136d3bc80665f0c0" [[package]] name = "gio" @@ -1165,7 +1193,7 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "1fb60242bfff700772dae5d9e3a1f7aa2e4ebccf18b89662a16acb2822568561" dependencies = [ - "bitflags", + "bitflags 1.3.2", "futures", "futures-channel", "futures-core", @@ -1241,7 +1269,7 @@ version = "0.10.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0c685013b7515e668f1b57a165b009d4d28cb139a8a989bbd699c10dad29d0c5" dependencies = [ - "bitflags", + "bitflags 1.3.2", "futures-channel", "futures-core", "futures-executor", @@ -1283,13 +1311,12 @@ dependencies = [ [[package]] name = "glifparser" version = "2.0.1" -source = "git+https://github.com/MFEK/glifparser.rlib?branch=master#9d3657746e4847e85553375b77a69315513d3d5c" dependencies = [ "derivative", "derive_more", "dyn-clone", "float-cmp", - "image 0.24.6", + "image 0.24.7", "integer_or_float", "itertools 0.10.5", "kurbo 0.9.0", @@ -1305,7 +1332,6 @@ dependencies = [ [[package]] name = "glifrenderer" version = "0.1.2" -source = "git+https://github.com/MFEK/glifrenderer.rlib#84eaf0a6d83981ca2cfbbe6a4e3da5526995385b" dependencies = [ "MFEKmath", "derive_more", @@ -1345,7 +1371,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2f022f2054072b3af07666341984562c8e626a79daa8be27b955d12d06a5ad6a" dependencies = [ "atk", - "bitflags", + "bitflags 1.3.2", "cairo-rs", "cairo-sys-rs", "cc", @@ -1414,6 +1440,12 @@ dependencies = [ "libc", ] +[[package]] +name = "hermit-abi" +version = "0.3.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "443144c8cdadd93ebf52ddb4056d257f5b52c04d3c804e657d19eb73fc33668b" + [[package]] name = "humantime" version = "2.1.0" @@ -1471,16 +1503,16 @@ dependencies = [ [[package]] name = "image" -version = "0.24.6" +version = "0.24.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "527909aa81e20ac3a44803521443a765550f09b5130c2c2fa1ea59c2f8f50a3a" +checksum = "6f3dfdbdd72063086ff443e297b61695500514b1e41095b6fb9a5ab48a70a711" dependencies = [ "bytemuck", "byteorder", "color_quant", "num-rational 0.4.1", "num-traits", - "png 0.17.9", + "png 0.17.10", ] [[package]] @@ -1505,7 +1537,7 @@ version = "0.9.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff" dependencies = [ - "bitflags", + "bitflags 1.3.2", "inotify-sys", "libc", ] @@ -1535,6 +1567,17 @@ dependencies = [ "serde", ] +[[package]] +name = "is-terminal" +version = "0.4.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "cb0889898416213fab133e1d33a0e5858a48177452750691bde3666d0fdbaf8b" +dependencies = [ + "hermit-abi 0.3.2", + "rustix", + "windows-sys 0.48.0", +] + [[package]] name = "itertools" version = "0.8.2" @@ -1564,9 +1607,9 @@ dependencies = [ [[package]] name = "itoa" -version = "1.0.6" +version = "1.0.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6" +checksum = "af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38" [[package]] name = "jpeg-decoder" @@ -1576,9 +1619,9 @@ checksum = "229d53d58899083193af11e15917b5640cd40b29ff475a1fe4ef725deb02d0f2" [[package]] name = "js-sys" -version = "0.3.63" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2f37a4a5928311ac501dee68b3c7613a1037d0edb30c8e5427bd832d55d1b790" +checksum = "c5f195fe497f702db0f318b07fdd68edb16955aed830df8363d837542f8f935a" dependencies = [ "wasm-bindgen", ] @@ -1591,9 +1634,9 @@ checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc" [[package]] name = "kqueue" -version = "1.0.7" +version = "1.0.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2c8fc60ba15bf51257aa9807a48a61013db043fcf3a78cb0d916e8e396dcad98" +checksum = "7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c" dependencies = [ "kqueue-sys", "libc", @@ -1601,11 +1644,11 @@ dependencies = [ [[package]] name = "kqueue-sys" -version = "1.0.3" +version = "1.0.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8367585489f01bc55dd27404dcf56b95e6da061a256a666ab23be9ba96a2e587" +checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b" dependencies = [ - "bitflags", + "bitflags 1.3.2", "libc", ] @@ -1642,9 +1685,9 @@ checksum = "830d08ce1d1d941e6b30645f1a0eb5643013d835ce3779a5fc208261dbe10f55" [[package]] name = "libc" -version = "0.2.146" +version = "0.2.147" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f92be4933c13fd498862a9e02a3055f8a8d9c039ce33db97306fd5a6caa7f29b" +checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" [[package]] name = "libloading" @@ -1665,6 +1708,12 @@ dependencies = [ "safemem", ] +[[package]] +name = "linux-raw-sys" +version = "0.4.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503" + [[package]] name = "lock_api" version = "0.4.10" @@ -1677,9 +1726,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.19" +version = "0.4.20" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b06a4cde4c0f271a446782e3eff8de789548ce57dbc8eca9292c27f4a42004b4" +checksum = "b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f" [[package]] name = "malloc_buf" @@ -1692,9 +1741,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.5.0" +version = "2.6.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d" +checksum = "5486aed0026218e61b8a01d5fbd5a0a134649abb71a0e53b7bc088529dced86e" [[package]] name = "memoffset" @@ -1708,7 +1757,6 @@ dependencies = [ [[package]] name = "mfek-ipc" version = "0.0.4-beta1" -source = "git+https://github.com/MFEK/ipc.rlib#1d41a639e01c626873ba3d2937ee7f1ef6bf2a11" dependencies = [ "ansi_term", "atty", @@ -1748,15 +1796,6 @@ dependencies = [ "autocfg", ] -[[package]] -name = "miniz_oxide" -version = "0.6.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b275950c28b37e794e8c55d88aeb5e139d0ce23fdbbeda68f8d7174abdf9e8fa" -dependencies = [ - "adler", -] - [[package]] name = "miniz_oxide" version = "0.7.1" @@ -1807,7 +1846,7 @@ version = "0.22.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e4916f159ed8e5de0082076562152a76b7a1f64a01fd9d1e0fea002c37624faf" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cc", "cfg-if", "libc", @@ -1816,14 +1855,13 @@ dependencies = [ [[package]] name = "nix" -version = "0.26.2" +version = "0.26.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfdda3d196821d6af13126e40375cdf7da646a96114af134d5f417a9a1dc8e1a" +checksum = "598beaf3cc6fdd9a5dfb1630c2800c7acd31df7aaf0f565796fba2b53ca1af1b" dependencies = [ - "bitflags", + "bitflags 1.3.2", "cfg-if", "libc", - "static_assertions", ] [[package]] @@ -1848,7 +1886,7 @@ version = "5.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "729f63e1ca555a43fe3efa4f3efdf4801c479da85b432242a7b726f353c88486" dependencies = [ - "bitflags", + "bitflags 1.3.2", "crossbeam-channel", "filetime", "fsevent-sys", @@ -1862,9 +1900,9 @@ dependencies = [ [[package]] name = "num" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "43db66d1170d347f9a065114077f7dccb00c1b9478c89384490a3425279a4606" +checksum = "b05180d69e3da0e530ba2a1dae5110317e49e3b7f3d41be227dc5f92e49ee7af" dependencies = [ "num-bigint", "num-complex", @@ -1876,9 +1914,9 @@ dependencies = [ [[package]] name = "num-bigint" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f93ab6289c7b344a8a9f60f88d80aa20032336fe78da341afc91c8a2341fc75f" +checksum = "608e7659b5c3d7cba262d894801b9ec9d00de989e8a82bd4bef91d08da45cdc0" dependencies = [ "autocfg", "num-integer", @@ -1887,9 +1925,9 @@ dependencies = [ [[package]] name = "num-complex" -version = "0.4.3" +version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02e0d21255c828d6f128a1e41534206671e8c3ea0c62f32291e808dc82cff17d" +checksum = "1ba157ca0885411de85d6ca030ba7e2a83a28636056c7c699b07c8b6f7383214" dependencies = [ "num-traits", ] @@ -1951,9 +1989,9 @@ dependencies = [ [[package]] name = "num-traits" -version = "0.2.15" +version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd" +checksum = "f30b0abd723be7e2ffca1272140fac1a2f084c77ec3e123c192b66af1ee9e6c2" dependencies = [ "autocfg", ] @@ -1989,9 +2027,9 @@ dependencies = [ [[package]] name = "object" -version = "0.30.4" +version = "0.32.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "03b4680b86d9cfafba8fc491dc9b6df26b68cf40e9e6cd73909194759a63c385" +checksum = "77ac5bbd07aea88c60a577a1ce218075ffd59208b2d7ca97adf9bfc5aeb21ebe" dependencies = [ "memchr", ] @@ -2023,7 +2061,7 @@ version = "0.9.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9937068580bebd8ced19975938573803273ccbcbd598c58d4906efd4ac87c438" dependencies = [ - "bitflags", + "bitflags 1.3.2", "glib", "glib-sys", "gobject-sys", @@ -2064,7 +2102,7 @@ dependencies = [ "libc", "redox_syscall 0.3.5", "smallvec", - "windows-targets 0.48.0", + "windows-targets 0.48.5", ] [[package]] @@ -2100,19 +2138,20 @@ checksum = "9b2a4787296e9989611394c33f193f676704af1686e70b8f8033ab5ba9a35a94" [[package]] name = "pest" -version = "2.6.0" +version = "2.7.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e68e84bfb01f0507134eac1e9b410a12ba379d064eab48c50ba4ce329a527b70" +checksum = "d7a4d085fd991ac8d5b05a147b437791b4260b76326baf0fc60cf7c9c27ecd33" dependencies = [ + "memchr", "thiserror", "ucd-trie", ] [[package]] name = "pin-project-lite" -version = "0.2.9" +version = "0.2.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0a7ae3ac2f1173085d398531c705756c94a4c56843785df85a60c1a0afac116" +checksum = "8afb450f006bf6385ca15ef45d71d2288452bc3683ce2e2cacc0d18e4be60b58" [[package]] name = "pin-utils" @@ -2128,16 +2167,16 @@ checksum = "26072860ba924cbfa98ea39c8c19b4dd6a4a25423dbdf219c1eca91aa0cf6964" [[package]] name = "plist" -version = "1.4.3" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9bd9647b268a3d3e14ff09c23201133a62589c658db02bb7388c7246aafe0590" +checksum = "bdc0001cfea3db57a2e24bc0d818e9e20e554b5f97fabb9bc231dc240269ae06" dependencies = [ - "base64 0.21.2", + "base64", "indexmap", "line-wrap", "quick-xml", "serde", - "time 0.3.22", + "time 0.3.28", ] [[package]] @@ -2146,7 +2185,7 @@ version = "0.16.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3c3287920cb847dee3de33d301c463fba14dda99db24214ddf93f83d3021f4c6" dependencies = [ - "bitflags", + "bitflags 1.3.2", "crc32fast", "deflate", "miniz_oxide 0.3.7", @@ -2154,11 +2193,11 @@ dependencies = [ [[package]] name = "png" -version = "0.17.9" +version = "0.17.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59871cc5b6cce7eaccca5a802b4173377a1c2ba90654246789a8fa2334426d11" +checksum = "dd75bf2d8dd3702b9707cdbc56a5b9ef42cec752eb8b3bafc01234558442aa64" dependencies = [ - "bitflags", + "bitflags 1.3.2", "crc32fast", "fdeflate", "flate2", @@ -2206,9 +2245,9 @@ checksum = "dc375e1527247fe1a97d8b7156678dfe7c1af2fc075c9a4db3690ecd2a148068" [[package]] name = "proc-macro2" -version = "1.0.60" +version = "1.0.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "dec2b086b7a862cf4de201096214fa870344cf922b2b30c167badb3af3195406" +checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9" dependencies = [ "unicode-ident", ] @@ -2223,18 +2262,18 @@ dependencies = [ [[package]] name = "quick-xml" -version = "0.28.2" +version = "0.29.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0ce5e73202a820a31f8a0ee32ada5e21029c81fd9e3ebf668a40832e4219d9d1" +checksum = "81b9228215d82c7b61490fec1de287136b5de6f5700f6e58ea9ad61a7964ca51" dependencies = [ "memchr", ] [[package]] name = "quote" -version = "1.0.28" +version = "1.0.33" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b9ab9c7eadfd8df19006f1cf1a4aed13540ed5cbc047010ece5826e10825488" +checksum = "5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae" dependencies = [ "proc-macro2", ] @@ -2254,7 +2293,7 @@ version = "0.2.16" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fb5a58c1855b4b6819d59012155603f0b22ad30cad752600aadfcb695265519a" dependencies = [ - "bitflags", + "bitflags 1.3.2", ] [[package]] @@ -2263,7 +2302,7 @@ version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29" dependencies = [ - "bitflags", + "bitflags 1.3.2", ] [[package]] @@ -2279,9 +2318,21 @@ dependencies = [ [[package]] name = "regex" -version = "1.8.4" +version = "1.9.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0ab3ca65655bb1e41f2a8c8cd662eb4fb035e67c3f78da1d61dffe89d07300f" +checksum = "12de2eff854e5fa4b1295edd650e227e9d8fb0c9e90b12e7f36d6a6811791a29" +dependencies = [ + "aho-corasick", + "memchr", + "regex-automata", + "regex-syntax", +] + +[[package]] +name = "regex-automata" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "49530408a136e16e5b486e883fbb6ba058e8e4e8ae6621a77b048b314336e629" dependencies = [ "aho-corasick", "memchr", @@ -2290,9 +2341,9 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.7.2" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "436b050e76ed2903236f032a59761c1eb99e1b0aead2c257922771dab1fc8c78" +checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" [[package]] name = "ring" @@ -2342,32 +2393,65 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "bfa0f585226d2e68097d4f95d113b15b83a82e819ab25717ec0590d9584ef366" dependencies = [ - "semver 1.0.17", + "semver 1.0.18", +] + +[[package]] +name = "rustix" +version = "0.38.11" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c0c3dde1fc030af041adc40e79c0e7fbcf431dd24870053d187d7c66e4b87453" +dependencies = [ + "bitflags 2.4.0", + "errno", + "libc", + "linux-raw-sys", + "windows-sys 0.48.0", ] [[package]] name = "rustls" -version = "0.20.8" +version = "0.21.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fff78fc74d175294f4e83b28343315ffcfb114b156f0185e9741cb5570f50e2f" +checksum = "cd8d6c9f025a446bc4d18ad9632e69aec8f287aa84499ee335599fabd20c3fd8" dependencies = [ "log", "ring", + "rustls-webpki 0.101.4", "sct", - "webpki", +] + +[[package]] +name = "rustls-webpki" +version = "0.100.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "e98ff011474fa39949b7e5c0428f9b4937eda7da7848bbb947786b7be0b27dab" +dependencies = [ + "ring", + "untrusted", +] + +[[package]] +name = "rustls-webpki" +version = "0.101.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7d93931baf2d282fff8d3a532bbfd7653f734643161b87e3e01e59a04439bf0d" +dependencies = [ + "ring", + "untrusted", ] [[package]] name = "rustversion" -version = "1.0.12" +version = "1.0.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4f3208ce4d8448b3f3e7d168a73f5e0c43a61e32930de3bceeccedb388b6bf06" +checksum = "7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4" [[package]] name = "ryu" -version = "1.0.13" +version = "1.0.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041" +checksum = "1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741" [[package]] name = "safemem" @@ -2386,9 +2470,9 @@ dependencies = [ [[package]] name = "scopeguard" -version = "1.1.0" +version = "1.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" +checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "sct" @@ -2406,7 +2490,7 @@ version = "0.35.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f7959277b623f1fb9e04aea73686c3ca52f01b2145f8ea16f4ff30d8b7623b1a" dependencies = [ - "bitflags", + "bitflags 1.3.2", "lazy_static", "libc", "raw-window-handle", @@ -2436,9 +2520,9 @@ dependencies = [ [[package]] name = "semver" -version = "1.0.17" +version = "1.0.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed" +checksum = "b0293b4b29daaf487284529cc2f5675b8e57c61f70167ba415a463651fd6a918" [[package]] name = "semver-parser" @@ -2451,29 +2535,29 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.164" +version = "1.0.188" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e8c8cf938e98f769bc164923b06dce91cea1751522f46f8466461af04c9027d" +checksum = "cf9e0fcba69a370eed61bcf2b728575f726b50b55cba78064753d708ddc7549e" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.164" +version = "1.0.188" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d9735b638ccc51c28bf6914d90a2e9725b377144fc612c49a611fddd1b631d68" +checksum = "4eca7ac642d82aa35b60049a6eccb4be6be75e599bd2e9adb5f875a737654af2" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.29", ] [[package]] name = "serde_json" -version = "1.0.96" +version = "1.0.105" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "057d394a50403bcac12672b2b18fb387ab6d289d957dab67dd201875391e52f1" +checksum = "693151e1ac27563d6dbcec9dee9fbd5da8539b20fa14ad3752b2e6d363ace360" dependencies = [ "itoa", "ryu", @@ -2513,7 +2597,7 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e63e6744142336dfb606fe2b068afa2e1cca1ee6a5d8377277a92945d81fa331" dependencies = [ - "bitflags", + "bitflags 1.3.2", "itertools 0.8.2", "proc-macro2", "quote", @@ -2522,9 +2606,9 @@ dependencies = [ [[package]] name = "simd-adler32" -version = "0.3.5" +version = "0.3.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "238abfbb77c1915110ad968465608b68e869e0772622c9656714e73e5a1a522f" +checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe" [[package]] name = "skia-bindings" @@ -2550,25 +2634,25 @@ version = "0.53.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6105b1e163f20883f3bcb8cff081c6e954591f0537bdcf1580dfba6783120eea" dependencies = [ - "bitflags", + "bitflags 1.3.2", "lazy_static", "skia-bindings", ] [[package]] name = "slab" -version = "0.4.8" +version = "0.4.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d" +checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67" dependencies = [ "autocfg", ] [[package]] name = "smallvec" -version = "1.10.0" +version = "1.11.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0" +checksum = "62bb4feee49fdd9f707ef802e22365a35de4b7b299de4763d44bfea899442ff9" [[package]] name = "spin" @@ -2591,12 +2675,6 @@ dependencies = [ "serde", ] -[[package]] -name = "static_assertions" -version = "1.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f" - [[package]] name = "str-buf" version = "1.0.6" @@ -2662,9 +2740,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.18" +version = "2.0.29" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "32d41677bcbe24c20c52e7c70b0d8db04134c5d1066bf98662e2871ad200ea3e" +checksum = "c324c494eba9d92503e6f1ef2e6df781e78f6a7705a0202d9801b198807d518a" dependencies = [ "proc-macro2", "quote", @@ -2688,9 +2766,9 @@ dependencies = [ [[package]] name = "tar" -version = "0.4.38" +version = "0.4.40" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4b55807c0344e1e6c04d7c965f5289c39a8d94ae23ed5c0b57aabac549f871c6" +checksum = "b16afcea1f22891c49a00c751c7b63b2233284064f11a200fc624137c51e2ddb" dependencies = [ "filetime", "libc", @@ -2714,22 +2792,22 @@ checksum = "222a222a5bfe1bba4a77b45ec488a741b3cb8872e5e499451fd7d0129c9c7c3d" [[package]] name = "thiserror" -version = "1.0.40" +version = "1.0.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac" +checksum = "97a802ec30afc17eee47b2855fc72e0c4cd62be9b4efe6591edde0ec5bd68d8f" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.40" +version = "1.0.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f" +checksum = "6bb623b56e39ab7dcd4b1b98bb6c8f8d907ed255b18de254088016b27a8ee19b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.29", ] [[package]] @@ -2756,10 +2834,11 @@ dependencies = [ [[package]] name = "time" -version = "0.3.22" +version = "0.3.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ea9e1b3cf1243ae005d9e74085d4d542f3125458f3a81af210d901dcd7411efd" +checksum = "17f6bb557fd245c28e6411aa56b6403c689ad95061f50e4be16c274e70a17e48" dependencies = [ + "deranged", "itoa", "serde", "time-core", @@ -2774,9 +2853,9 @@ checksum = "7300fbefb4dadc1af235a9cef3737cea692a9d97e1b9cbcd4ebdae6f8868e6fb" [[package]] name = "time-macros" -version = "0.2.9" +version = "0.2.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "372950940a5f07bf38dbe211d7283c9e6d7327df53794992d293e534c733d09b" +checksum = "1a942f44339478ef67935ab2bbaec2fb0322496cf3cbe84b261e06ac3814c572" dependencies = [ "time-core", ] @@ -2813,15 +2892,15 @@ checksum = "0de5f738ceab88e2491a94ddc33c3feeadfa95fedc60363ef110845df12f3878" [[package]] name = "ttf-parser" -version = "0.19.0" +version = "0.19.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44dcf002ae3b32cd25400d6df128c5babec3927cd1eb7ce813cfff20eb6c3746" +checksum = "a464a4b34948a5f67fddd2b823c62d9d92e44be75058b99939eae6c5b6960b33" [[package]] name = "ucd-trie" -version = "0.1.5" +version = "0.1.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e79c4d996edb816c91e4308506774452e55e95c3c9de07b6729e17e15a5ef81" +checksum = "ed646292ffc8188ef8ea4d1e0e0150fb15a5c2e12ad9b8fc191ae7a8a7f3c4b9" [[package]] name = "unicode-bidi" @@ -2831,9 +2910,9 @@ checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460" [[package]] name = "unicode-ident" -version = "1.0.9" +version = "1.0.11" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b15811caf2415fb889178633e7724bad2509101cde276048e013b9def5e51fa0" +checksum = "301abaae475aa91687eb82514b328ab47a211a533026cb25fc3e519b86adfc3c" [[package]] name = "unicode-normalization" @@ -2858,25 +2937,25 @@ checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" [[package]] name = "ureq" -version = "2.6.2" +version = "2.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "338b31dd1314f68f3aabf3ed57ab922df95ffcd902476ca7ba3c4ce7b908c46d" +checksum = "0b11c96ac7ee530603dcdf68ed1557050f374ce55a5a07193ebf8cbc9f8927e9" dependencies = [ - "base64 0.13.1", + "base64", "flate2", "log", "once_cell", "rustls", + "rustls-webpki 0.100.2", "url", - "webpki", "webpki-roots", ] [[package]] name = "url" -version = "2.4.0" +version = "2.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "50bff7831e19200a85b17131d085c25d7811bc4e186efdaf54bbd132994a88cb" +checksum = "143b538f18257fac9cad154828a57c6bf5157e1aa604d4816b5995bf6de87ae5" dependencies = [ "form_urlencoded", "idna", @@ -2925,9 +3004,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423" [[package]] name = "wasm-bindgen" -version = "0.2.86" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5bba0e8cb82ba49ff4e229459ff22a191bbe9a1cb3a341610c9c33efc27ddf73" +checksum = "7706a72ab36d8cb1f80ffbf0e071533974a60d0a308d01a5d0375bf60499a342" dependencies = [ "cfg-if", "wasm-bindgen-macro", @@ -2935,24 +3014,24 @@ dependencies = [ [[package]] name = "wasm-bindgen-backend" -version = "0.2.86" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "19b04bc93f9d6bdee709f6bd2118f57dd6679cf1176a1af464fca3ab0d66d8fb" +checksum = "5ef2b6d3c510e9625e5fe6f509ab07d66a760f0885d858736483c32ed7809abd" dependencies = [ "bumpalo", "log", "once_cell", "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.29", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-macro" -version = "0.2.86" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "14d6b024f1a526bb0234f52840389927257beb670610081360e5a03c5df9c258" +checksum = "dee495e55982a3bd48105a7b947fd2a9b4a8ae3010041b9e0faab3f9cd028f1d" dependencies = [ "quote", "wasm-bindgen-macro-support", @@ -2960,50 +3039,40 @@ dependencies = [ [[package]] name = "wasm-bindgen-macro-support" -version = "0.2.86" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e128beba882dd1eb6200e1dc92ae6c5dbaa4311aa7bb211ca035779e5efc39f8" +checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.18", + "syn 2.0.29", "wasm-bindgen-backend", "wasm-bindgen-shared", ] [[package]] name = "wasm-bindgen-shared" -version = "0.2.86" +version = "0.2.87" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed9d5b4305409d1fc9482fee2d7f9bcbf24b3972bf59817ef757e23982242a93" +checksum = "ca6ad05a4870b2bf5fe995117d3728437bd27d7cd5f06f13c17443ef369775a1" [[package]] name = "web-sys" -version = "0.3.63" +version = "0.3.64" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3bdd9ef4e984da1187bf8110c5cf5b845fbc87a23602cdf912386a76fcd3a7c2" +checksum = "9b85cbef8c220a6abc02aefd892dfc0fc23afb1c6a426316ec33253a3877249b" dependencies = [ "js-sys", "wasm-bindgen", ] -[[package]] -name = "webpki" -version = "0.22.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f095d78192e208183081cc07bc5515ef55216397af48b873e5edcd72637fa1bd" -dependencies = [ - "ring", - "untrusted", -] - [[package]] name = "webpki-roots" -version = "0.22.6" +version = "0.23.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b6c71e40d7d2c34a5106301fb632274ca37242cd0c9d3e64dbece371a40a2d87" +checksum = "b03058f88386e5ff5310d9111d53f48b17d732b401aeb83a8d5190f2ac459338" dependencies = [ - "webpki", + "rustls-webpki 0.100.2", ] [[package]] @@ -3069,7 +3138,7 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f" dependencies = [ - "windows-targets 0.48.0", + "windows-targets 0.48.5", ] [[package]] @@ -3087,7 +3156,7 @@ version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" dependencies = [ - "windows-targets 0.48.0", + "windows-targets 0.48.5", ] [[package]] @@ -3107,17 +3176,17 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ - "windows_aarch64_gnullvm 0.48.0", - "windows_aarch64_msvc 0.48.0", - "windows_i686_gnu 0.48.0", - "windows_i686_msvc 0.48.0", - "windows_x86_64_gnu 0.48.0", - "windows_x86_64_gnullvm 0.48.0", - "windows_x86_64_msvc 0.48.0", + "windows_aarch64_gnullvm 0.48.5", + "windows_aarch64_msvc 0.48.5", + "windows_i686_gnu 0.48.5", + "windows_i686_msvc 0.48.5", + "windows_x86_64_gnu 0.48.5", + "windows_x86_64_gnullvm 0.48.5", + "windows_x86_64_msvc 0.48.5", ] [[package]] @@ -3128,9 +3197,9 @@ checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" [[package]] name = "windows_aarch64_gnullvm" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_msvc" @@ -3140,9 +3209,9 @@ checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" [[package]] name = "windows_aarch64_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_i686_gnu" @@ -3152,9 +3221,9 @@ checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" [[package]] name = "windows_i686_gnu" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_msvc" @@ -3164,9 +3233,9 @@ checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" [[package]] name = "windows_i686_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] name = "windows_x86_64_gnu" @@ -3176,9 +3245,9 @@ checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" [[package]] name = "windows_x86_64_gnu" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1" +checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] name = "windows_x86_64_gnullvm" @@ -3188,9 +3257,9 @@ checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" [[package]] name = "windows_x86_64_gnullvm" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] name = "windows_x86_64_msvc" @@ -3200,9 +3269,9 @@ checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" [[package]] name = "windows_x86_64_msvc" -version = "0.48.0" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a" +checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "wio" @@ -3227,18 +3296,18 @@ dependencies = [ [[package]] name = "xattr" -version = "0.2.3" +version = "1.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6d1526bbe5aaeb5eb06885f4d987bcdfa5e23187055de9b83fe00156a821fabc" +checksum = "f4686009f71ff3e5c4dbcf1a282d0a44db3f021ba69350cd42086b3e5f1c6985" dependencies = [ "libc", ] [[package]] name = "xml-rs" -version = "0.8.14" +version = "0.8.16" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "52839dc911083a8ef63efa4d039d1f58b5e409f923e44c80828f206f66e5541c" +checksum = "47430998a7b5d499ccee752b41567bc3afc57e1327dc855b1a2aa44ce29b5fa1" [[package]] name = "xmltree" diff --git a/Cargo.toml b/Cargo.toml index d53489a..5420f9a 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -88,19 +88,19 @@ ctrlc = "3.2" ## Our crates # parses .glif files and gives us a place to put arbitrary data -glifparser = { git = "https://github.com/MFEK/glifparser.rlib", branch = "master", features=["skia", "mfek"] } -#glifparser = { path = "../glifparser.rlib", features=["skia", "mfek"] } # for development +#glifparser = { git = "https://github.com/MFEK/glifparser.rlib", branch = "master", features=["skia", "mfek"] } +glifparser = { path = "../glifparser.rlib", features=["skia", "mfek"] } # for development -MFEKmath = { git = "https://github.com/MFEK/math.rlib", branch = "main" } -#MFEKmath = { path = "../math.rlib" } # for development +#MFEKmath = { git = "https://github.com/MFEK/math.rlib", branch = "main" } +MFEKmath = { path = "../math.rlib", features=["skia"]} # for development pub-mod = { git = "https://github.com/MFEK/pub_mod.rlib" } -mfek-ipc = { git = "https://github.com/MFEK/ipc.rlib" } -#mfek-ipc = { path = "../ipc.rlib" } # for development +#mfek-ipc = { git = "https://github.com/MFEK/ipc.rlib" } +mfek-ipc = { path = "../ipc.rlib" } # for development -glifrenderer = { git = "https://github.com/MFEK/glifrenderer.rlib" } -#glifrenderer = { path = "../glifrenderer.rlib" } # for development +#glifrenderer = { git = "https://github.com/MFEK/glifrenderer.rlib" } +glifrenderer = { path = "../glifrenderer.rlib" } # for development # forked from linebender/spline spline = { git = "https://github.com/MFEK/spline.rlib" } diff --git a/examples/S_.glifjson b/examples/S_.glifjson new file mode 100644 index 0000000..956b68f --- /dev/null +++ b/examples/S_.glifjson @@ -0,0 +1,1616 @@ +{ + "layers": [ + { + "name": "Layer 0", + "visible": true, + "color": null, + "outline": [ + { + "inner": { + "Cubic": [ + { + "x": 581.861, + "y": 12.1504, + "a": { + "At": [ + 580.713, + 7.62695 + ] + }, + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 578.015, + "y": -1.30957, + "a": { + "At": [ + 559.241, + -60.2803 + ] + }, + "b": { + "At": [ + 579.43, + 3.1377 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 463.054, + "y": -141.844, + "a": { + "At": [ + 409.854, + -173.463 + ] + }, + "b": { + "At": [ + 516.253, + -110.226 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 285.404, + "y": -187.0, + "a": { + "At": [ + 245.979, + -186.092 + ] + }, + "b": { + "At": [ + 347.274, + -188.426 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 170.507, + "y": -162.239, + "a": { + "At": [ + 134.513, + -146.125 + ] + }, + "b": { + "At": [ + 206.501, + -178.353 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 79.4043, + "y": -89.0, + "a": { + "At": [ + 61.4023, + -63.4414 + ] + }, + "b": { + "At": [ + 102.113, + -121.241 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 46.1699, + "y": -2.34863, + "a": { + "At": [ + 42.6221, + 28.7119 + ] + }, + "b": { + "At": [ + 49.7178, + -33.4082 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 58.3037, + "y": 89.7559, + "a": { + "At": [ + 70.4268, + 121.92 + ] + }, + "b": { + "At": [ + 47.2773, + 60.5029 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 111.646, + "y": 177.464, + "a": { + "At": [ + 133.43, + 204.053 + ] + }, + "b": { + "At": [ + 89.8613, + 150.875 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 181.756, + "y": 253.024, + "a": { + "At": [ + 196.135, + 267.247 + ] + }, + "b": { + "At": [ + 157.317, + 228.852 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 226.081, + "y": 294.444, + "a": "Colocated", + "b": { + "At": [ + 210.994, + 280.976 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 459.081, + "y": 502.44, + "a": { + "At": [ + 498.673, + 537.783 + ] + }, + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": true, + "data": null + }, + { + "x": 572.972, + "y": 613.37, + "a": { + "At": [ + 604.12, + 653.229 + ] + }, + "b": { + "At": [ + 540.293, + 571.553 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 637.431, + "y": 749.308, + "a": { + "At": [ + 639.716, + 761.736 + ] + }, + "b": { + "At": [ + 628.28, + 699.556 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 640.404, + "y": 787.039, + "a": "Colocated", + "b": { + "At": [ + 640.371, + 774.402 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 640.441, + "y": 801.04, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 668.443, + "y": 800.961, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 668.404, + "y": 786.961, + "a": { + "At": [ + 668.365, + 772.915 + ] + }, + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": true, + "data": null + }, + { + "x": 665.106, + "y": 745.02, + "a": { + "At": [ + 655.109, + 690.378 + ] + }, + "b": { + "At": [ + 667.634, + 758.837 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 594.762, + "y": 595.573, + "a": { + "At": [ + 561.06, + 552.691 + ] + }, + "b": { + "At": [ + 629.086, + 639.247 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 477.728, + "y": 481.556, + "a": "Colocated", + "b": { + "At": [ + 518.414, + 517.877 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 244.728, + "y": 273.556, + "a": { + "At": [ + 229.979, + 260.391 + ] + }, + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": true, + "data": null + }, + { + "x": 201.401, + "y": 233.066, + "a": { + "At": [ + 178.298, + 210.184 + ] + }, + "b": { + "At": [ + 215.448, + 246.978 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 135.104, + "y": 161.553, + "a": { + "At": [ + 114.428, + 136.455 + ] + }, + "b": { + "At": [ + 155.78, + 186.651 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 84.1113, + "y": 78.9004, + "a": { + "At": [ + 75.5771, + 56.3477 + ] + }, + "b": { + "At": [ + 95.6211, + 109.313 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 73.8164, + "y": 7.95996, + "a": { + "At": [ + 76.3232, + -16.0225 + ] + }, + "b": { + "At": [ + 71.3105, + 31.9434 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 101.303, + "y": -57.8018, + "a": { + "At": [ + 123.165, + -83.9541 + ] + }, + "b": { + "At": [ + 85.8369, + -39.3018 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 189.433, + "y": -105.435, + "a": { + "At": [ + 222.958, + -111.598 + ] + }, + "b": { + "At": [ + 155.908, + -99.2715 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 291.404, + "y": -108.0, + "a": { + "At": [ + 341.577, + -104.826 + ] + }, + "b": { + "At": [ + 257.386, + -110.152 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 440.529, + "y": -87.4824, + "a": { + "At": [ + 464.622, + -80.3135 + ] + }, + "b": { + "At": [ + 392.344, + -101.82 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 507.551, + "y": -53.9551, + "a": { + "At": [ + 527.178, + -38.25 + ] + }, + "b": { + "At": [ + 487.924, + -69.6592 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 551.095, + "y": 6.38867, + "a": { + "At": [ + 552.628, + 10.7988 + ] + }, + "b": { + "At": [ + 542.84, + -17.3535 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 554.941, + "y": 19.8496, + "a": "Colocated", + "b": { + "At": [ + 553.913, + 15.2959 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + } + ] + }, + "operation": null + }, + { + "inner": { + "Cubic": [ + { + "x": 281.707, + "y": 664.0, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 309.707, + "y": 664.0, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 309.707, + "y": 362.747, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 281.707, + "y": 362.747, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + } + ] + }, + "operation": null + }, + { + "inner": { + "Cubic": [ + { + "x": 432.707, + "y": 422.0, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 460.707, + "y": 422.0, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 460.707, + "y": 120.747, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 432.707, + "y": 120.747, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + } + ] + }, + "operation": null + }, + { + "inner": { + "Cubic": [ + { + "x": 649.737, + "y": 169.0, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 375.571, + "y": -3.83301, + "a": { + "At": [ + 344.563, + 30.2432 + ] + }, + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 260.904, + "y": 70.458, + "a": { + "At": [ + 238.354, + 77.4707 + ] + }, + "b": { + "At": [ + 304.898, + 56.7783 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 191.04, + "y": 80.0, + "a": { + "At": [ + 162.644, + 79.2188 + ] + }, + "b": { + "At": [ + 214.646, + 80.6494 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 106.904, + "y": 67.708, + "a": { + "At": [ + 99.7939, + 65.4102 + ] + }, + "b": { + "At": [ + 133.935, + 76.4463 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 86.8838, + "y": 57.8555, + "a": { + "At": [ + 80.9092, + 53.3682 + ] + }, + "b": { + "At": [ + 92.8584, + 62.3428 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 73.374, + "y": 40.3555, + "a": { + "At": [ + 71.2158, + 34.5244 + ] + }, + "b": { + "At": [ + 75.9668, + 47.3633 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 72.0293, + "y": 22.0, + "a": "Colocated", + "b": { + "At": [ + 70.7217, + 28.0791 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + }, + { + "x": 47.7373, + "y": 22.0, + "a": { + "At": [ + 54.2725, + 64.7432 + ] + }, + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 105.479, + "y": 135.735, + "a": { + "At": [ + 136.072, + 166.293 + ] + }, + "b": { + "At": [ + 74.8857, + 105.178 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 218.737, + "y": 195.0, + "a": { + "At": [ + 271.982, + 205.438 + ] + }, + "b": { + "At": [ + 176.305, + 186.682 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 378.737, + "y": 179.0, + "a": { + "At": [ + 422.431, + 163.19 + ] + }, + "b": { + "At": [ + 327.716, + 197.461 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 499.737, + "y": 111.0, + "a": "Colocated", + "b": { + "At": [ + 463.329, + 139.87 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + }, + { + "x": 518.737, + "y": 120.0, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 518.737, + "y": 350.0, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 385.737, + "y": 415.0, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 479.737, + "y": 509.0, + "a": { + "At": [ + 513.059, + 499.636 + ] + }, + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 575.737, + "y": 470.0, + "a": { + "At": [ + 601.935, + 455.763 + ] + }, + "b": { + "At": [ + 545.326, + 486.527 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 649.737, + "y": 420.0, + "a": "Colocated", + "b": { + "At": [ + 626.754, + 438.993 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + } + ] + }, + "operation": null + }, + { + "inner": { + "Cubic": [ + { + "x": 95.4043, + "y": 595.0, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 369.571, + "y": 767.833, + "a": { + "At": [ + 398.818, + 740.833 + ] + }, + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 472.737, + "y": 710.0, + "a": { + "At": [ + 500.995, + 702.473 + ] + }, + "b": { + "At": [ + 434.274, + 720.246 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 559.431, + "y": 708.609, + "a": { + "At": [ + 587.606, + 716.435 + ] + }, + "b": { + "At": [ + 531.254, + 700.783 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 627.737, + "y": 760.0, + "a": { + "At": [ + 634.854, + 772.538 + ] + }, + "b": { + "At": [ + 613.303, + 734.567 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 640.404, + "y": 801.0, + "a": "Colocated", + "b": { + "At": [ + 639.223, + 786.631 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + }, + { + "x": 655.404, + "y": 801.0, + "a": { + "At": [ + 664.023, + 755.465 + ] + }, + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 628.062, + "y": 668.241, + "a": { + "At": [ + 602.258, + 629.747 + ] + }, + "b": { + "At": [ + 653.867, + 706.735 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 516.737, + "y": 590.0, + "a": { + "At": [ + 464.498, + 575.769 + ] + }, + "b": { + "At": [ + 561.451, + 602.182 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 356.737, + "y": 598.0, + "a": { + "At": [ + 317.169, + 610.642 + ] + }, + "b": { + "At": [ + 408.312, + 581.521 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": true, + "data": null + }, + { + "x": 245.404, + "y": 653.0, + "a": "Colocated", + "b": { + "At": [ + 279.631, + 629.462 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + }, + { + "x": 226.404, + "y": 644.0, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 226.404, + "y": 468.0, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 342.404, + "y": 388.0, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 248.404, + "y": 294.0, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + }, + { + "x": 95.4043, + "y": 394.0, + "a": "Colocated", + "b": "Colocated", + "name": null, + "ptype": "Line", + "smooth": false, + "data": null + } + ] + }, + "operation": null + }, + { + "inner": { + "Cubic": [ + { + "x": -435.0, + "y": -112.0, + "a": { + "At": [ + -387.0, + 20.0 + ] + }, + "b": { + "At": [ + -483.0, + -244.0 + ] + }, + "name": null, + "ptype": "Move", + "smooth": false, + "data": null + }, + { + "x": -158.0, + "y": 103.0, + "a": { + "At": [ + -56.0, + 44.0 + ] + }, + "b": { + "At": [ + -260.0, + 162.0 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + }, + { + "x": -11.0, + "y": -128.0, + "a": { + "At": [ + -87.0, + -178.0 + ] + }, + "b": { + "At": [ + 65.0, + -78.0 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + }, + { + "x": -210.0, + "y": -244.0, + "a": { + "At": [ + -302.0, + -201.0 + ] + }, + "b": { + "At": [ + -118.0, + -287.0 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + } + ] + }, + "operation": { + "PatternAlongPath": { + "data": { + "pattern": [ + { + "inner": { + "Cubic": [ + { + "x": -360.16904, + "y": -296.0, + "a": { + "At": [ + -360.16904, + -299.2182 + ] + }, + "b": { + "At": [ + -360.16904, + -292.7818 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + }, + { + "x": -366.0, + "y": -301.83096, + "a": { + "At": [ + -369.2182, + -301.83096 + ] + }, + "b": { + "At": [ + -362.7818, + -301.83096 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + }, + { + "x": -371.83096, + "y": -296.0, + "a": { + "At": [ + -371.83096, + -292.7818 + ] + }, + "b": { + "At": [ + -371.83096, + -299.2182 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + }, + { + "x": -366.0, + "y": -290.16904, + "a": { + "At": [ + -362.7818, + -290.16904 + ] + }, + "b": { + "At": [ + -369.2182, + -290.16904 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + } + ] + }, + "operation": null + } + ], + "copies": "Repeated", + "subdivide": "Off", + "is_vertical": false, + "stretch": "On", + "spacing": 4.0, + "simplify": false, + "normal_offset": 0.0, + "tangent_offset": 0.0, + "pattern_scale": [ + 1.0, + 1.0 + ], + "center_pattern": true, + "prevent_overdraw": 0.0, + "two_pass_culling": false, + "reverse_path": false, + "reverse_culling": false, + "warp_pattern": true + } + } + } + } + ], + "operation": null, + "images": [] + }, + { + "name": "1", + "visible": true, + "color": null, + "outline": [ + { + "inner": { + "Cubic": [ + { + "x": -360.16904, + "y": -296.0, + "a": { + "At": [ + -360.16904, + -299.2182 + ] + }, + "b": { + "At": [ + -360.16904, + -292.7818 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + }, + { + "x": -366.0, + "y": -301.83096, + "a": { + "At": [ + -369.2182, + -301.83096 + ] + }, + "b": { + "At": [ + -362.7818, + -301.83096 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + }, + { + "x": -371.83096, + "y": -296.0, + "a": { + "At": [ + -371.83096, + -292.7818 + ] + }, + "b": { + "At": [ + -371.83096, + -299.2182 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + }, + { + "x": -366.0, + "y": -290.16904, + "a": { + "At": [ + -362.7818, + -290.16904 + ] + }, + "b": { + "At": [ + -369.2182, + -290.16904 + ] + }, + "name": null, + "ptype": "Curve", + "smooth": false, + "data": null + } + ] + }, + "operation": null + } + ], + "operation": null, + "images": [] + } + ], + "history": [], + "anchors": [ + { + "x": 298.0, + "y": 36.0, + "class": "cedilla", + "data": { + "Guideline": { + "fixed": false, + "format": false, + "right": false + } + }, + "atype": "Base" + }, + { + "x": 426.0, + "y": 808.0, + "class": "mark_top", + "data": { + "Guideline": { + "fixed": false, + "format": false, + "right": false + } + }, + "atype": "Base" + } + ], + "components": { + "root": "S", + "vec": [], + "uniques": [] + }, + "flattened": [], + "component_rects": [], + "guidelines": [], + "width": 670, + "unicode": [ + "S" + ], + "name": "S", + "note": null +} \ No newline at end of file diff --git a/src/contour_operations/patternalongpath.rs b/src/contour_operations/patternalongpath.rs index e8899a1..abb4eed 100644 --- a/src/contour_operations/patternalongpath.rs +++ b/src/contour_operations/patternalongpath.rs @@ -1,6 +1,6 @@ use glifparser::glif::contour_operations::pap::PAPContour; use glifparser::{ - glif::{contour::MFEKContourCommon, MFEKContour, MFEKOutline}, + glif::{MFEKContour, MFEKOutline}, MFEKPointData, }; use MFEKmath::mfek::ResolveCubic as _; diff --git a/src/system_fonts/mod.rs b/src/system_fonts/mod.rs index be4fe5e..8c0d5ce 100644 --- a/src/system_fonts/mod.rs +++ b/src/system_fonts/mod.rs @@ -8,7 +8,6 @@ use font_kit::{ error::SelectionError::{ self as FKSelectionError, CannotAccessSource as FKSourceError, NotFound as FKNotFoundError, }, - family_name::FamilyName as FKFamilyName, handle::Handle as FKHandle, properties::Properties, source::SystemSource, @@ -16,7 +15,7 @@ use font_kit::{ use std::path::PathBuf; use std::sync::Arc; -use std::{fmt, fs, io}; +use std::fs; #[derive(Clone, Debug)] pub struct SystemFont { diff --git a/src/tools/pap/dialog.rs b/src/tools/pap/dialog.rs index 66a82d5..dfc7cd8 100644 --- a/src/tools/pap/dialog.rs +++ b/src/tools/pap/dialog.rs @@ -1,9 +1,23 @@ use super::super::prelude::*; use super::PAP; use crate::user_interface::{Interface, gui::windows::egui_parsed_textfield}; -use glifparser::glif::contour_operations::{pap::{PatternStretch, PatternCopies, PatternSubdivide, PAPContour}, ContourOperations}; +use glifparser::glif::contour_operations::{pap::{PatternStretch, PatternCopies, PatternSubdivide, PAPContour, PatternCulling}, ContourOperations}; use egui::Ui; +#[derive(PartialEq, Clone, Copy, Debug)] +enum PAPSubdivide { + Off, + Simple, + Angle, +} + +#[derive(PartialEq, Clone, Copy, Debug)] +enum PAPCulling { + Off, + RemoveOverlapping, + EraseOverlapping, +} + impl PAP { pub fn tool_dialog(&mut self, v: &mut Editor, _i: &Interface, ui: &mut Ui) { if v.contour_idx.is_none() { return }; @@ -24,23 +38,93 @@ impl PAP { ui.selectable_value(&mut data.copies, PatternCopies::Repeated, "Repeated"); }); - let mut subdivisions = match data.subdivide { - PatternSubdivide::Simple(times) => times, - _ => 0, - } as f32; - - let subdivision_slider = egui::Slider::new(&mut subdivisions, 0.0..=3.0) - .text("Subdivisions") - .step_by(1.0); + egui::CollapsingHeader::new("Subdivision").show(ui, |ui| { + let prev_subdivide_mode = match data.subdivide { + PatternSubdivide::Off => PAPSubdivide::Off, + PatternSubdivide::Simple(_) => PAPSubdivide::Simple, + PatternSubdivide::Angle(_) => PAPSubdivide::Angle, + }; + + let mut subdivide_mode = prev_subdivide_mode.clone(); + egui::ComboBox::from_label("Mode") + .selected_text(format!("{:?}", subdivide_mode)) + .show_ui(ui, |ui| { + ui.selectable_value(&mut subdivide_mode, PAPSubdivide::Off, "Off"); + ui.selectable_value(&mut subdivide_mode, PAPSubdivide::Simple, "Simple"); + ui.selectable_value(&mut subdivide_mode, PAPSubdivide::Angle, "Angle"); + }); + + if subdivide_mode != prev_subdivide_mode { + match subdivide_mode { + PAPSubdivide::Off => data.subdivide = PatternSubdivide::Off, + PAPSubdivide::Simple => data.subdivide = PatternSubdivide::Simple(2), + PAPSubdivide::Angle => data.subdivide = PatternSubdivide::Angle(5.0), + } + } + + data.subdivide = match data.subdivide { + PatternSubdivide::Simple(mut times) => { + let mut times = times as i32; + ui.add(egui::Slider::new(&mut times, 1..=10) + .text("Times") + ); + PatternSubdivide::Simple(times as usize) + } + + PatternSubdivide::Angle(mut angle) => { + let mut angle = angle as f32; + ui.add(egui::Slider::new(&mut angle, 0.0..=90.0) + .text("Angle") + ); + PatternSubdivide::Angle(angle as f64) + } + + _ => { PatternSubdivide::Off } + } + }); + + egui::CollapsingHeader::new("Culling").show(ui, |ui| { + let prev_culling_mode: PAPCulling = match data.prevent_overdraw { + PatternCulling::Off => PAPCulling::Off, + PatternCulling::RemoveOverlapping => PAPCulling::RemoveOverlapping, + PatternCulling::EraseOverlapping(_, _) => PAPCulling::EraseOverlapping, + }; + + let mut culling_mode = prev_culling_mode.clone(); + egui::ComboBox::from_label("Mode") + .selected_text(format!("{:?}", culling_mode)) + .show_ui(ui, |ui| { + ui.selectable_value(&mut culling_mode, PAPCulling::Off, "Off"); + ui.selectable_value(&mut culling_mode, PAPCulling::RemoveOverlapping, "Remove Overlap"); + ui.selectable_value(&mut culling_mode, PAPCulling::EraseOverlapping, "Erase Overlap"); + }); + + if culling_mode != prev_culling_mode { + match culling_mode { + PAPCulling::Off => data.prevent_overdraw = PatternCulling::Off, + PAPCulling::RemoveOverlapping => data.prevent_overdraw = PatternCulling::RemoveOverlapping, + PAPCulling::EraseOverlapping => data.prevent_overdraw = PatternCulling::EraseOverlapping(5., 25.), + } + } - ui.add(subdivision_slider); + data.prevent_overdraw = match data.prevent_overdraw { + PatternCulling::EraseOverlapping(mut radius, mut cull_area_percent) => { + let mut radius = radius as f32; + ui.add(egui::Slider::new(&mut radius, 0.0..=20.0) + .text("Radius") + ); + ui.add(egui::Slider::new(&mut cull_area_percent, 0.0..=100.0) + .text("Cull Area %")); - data.subdivide = if subdivisions == 0. { - PatternSubdivide::Off - } else { - PatternSubdivide::Simple(subdivisions as usize) - }; + PatternCulling::EraseOverlapping(radius as f64, cull_area_percent as f64) + } + PatternCulling::RemoveOverlapping => PatternCulling::RemoveOverlapping, + PatternCulling::Off => PatternCulling::Off, + } + }); + ui.checkbox(&mut data.warp_pattern, "Warp"); + ui.checkbox(&mut data.split_path, "Split at Discontinuities"); ui.checkbox(&mut data.center_pattern, "Center"); egui::ComboBox::from_label("Stretch") @@ -53,29 +137,25 @@ impl PAP { ui.checkbox(&mut data.simplify, "Simplify"); - ui.horizontal(|ui| { - ui.label("Spacing:"); - data.spacing = egui_parsed_textfield(ui, "Spacing", data.spacing as f32, &mut self.edit_buf) as f64; - }); + ui.add(egui::Slider::new(&mut data.spacing, -20.0..=20.0) + .text("Spacing") + ); - ui.add(egui::Slider::new(&mut data.normal_offset, -100.0..=100.0) + ui.add(egui::Slider::new(&mut data.normal_offset, -20.0..=20.0) .text("Normal Offset") ); - ui.add(egui::Slider::new(&mut data.tangent_offset, -100.0..=100.0) + ui.add(egui::Slider::new(&mut data.tangent_offset, -20.0..=20.0) .text("Tangent Offset") ); - ui.add(egui::Slider::new(&mut data.pattern_scale.0, -10.0..=10.0) + ui.add(egui::Slider::new(&mut data.pattern_scale.0, -3.0..=3.0) .text("Scale X") ); - ui.add(egui::Slider::new(&mut data.pattern_scale.1, -10.0..=10.0) - .text("Scale Y") - ); - ui.add(egui::Slider::new(&mut data.prevent_overdraw, 0.0..=1.0) - .text("Prevent Overdraw") + ui.add(egui::Slider::new(&mut data.pattern_scale.1, -3.0..=3.0) + .text("Scale Y") ); if data != original_data { @@ -127,10 +207,12 @@ impl PAP { tangent_offset: 0., pattern_scale: (1., 1.), center_pattern: true, - prevent_overdraw: 0., + prevent_overdraw: PatternCulling::Off, two_pass_culling: false, reverse_path: false, reverse_culling: false, + warp_pattern: true, + split_path: false, }, }) ); diff --git a/src/tools/pap/mod.rs b/src/tools/pap/mod.rs index 8d52b3a..9a87745 100644 --- a/src/tools/pap/mod.rs +++ b/src/tools/pap/mod.rs @@ -4,12 +4,14 @@ use std::collections::HashMap; use super::prelude::*; use crate::tool_behaviors::zoom_scroll::ZoomScroll; +use crate::tools::Select; use crate::editor::Editor; #[derive(Clone, Debug)] pub struct PAP { pattern_layer: Option, - edit_buf: HashMap + edit_buf: HashMap, + select_tool: Select } impl Tool for PAP { @@ -17,6 +19,14 @@ impl Tool for PAP { fn event(&mut self, v: &mut Editor, i: &mut Interface, event: EditorEvent) { match event { EditorEvent::ScrollEvent { .. } => ZoomScroll::default().event(v, i, event), + EditorEvent::MouseEvent { + event_type, + mouse_info, + } => match event_type { + MouseEventType::Pressed => self.select_tool.mouse_pressed(v, i, mouse_info), + MouseEventType::DoubleClick => self.select_tool.mouse_double_pressed(v, i, mouse_info), + _ => {} + }, _ => {} } } @@ -40,6 +50,7 @@ impl PAP { Self { edit_buf: HashMap::new(), pattern_layer: None, + select_tool: Select::new() } } } diff --git a/src/tools/select/mod.rs b/src/tools/select/mod.rs index 69e9c1a..3ebd385 100644 --- a/src/tools/select/mod.rs +++ b/src/tools/select/mod.rs @@ -140,7 +140,7 @@ impl Select { v.end_modification(); } - fn mouse_pressed(&mut self, v: &mut Editor, i: &Interface, mouse_info: MouseInfo) { + pub fn mouse_pressed(&mut self, v: &mut Editor, i: &Interface, mouse_info: MouseInfo) { // if the user clicked middle mouse we initiate a pan behavior if mouse_info.button == MouseButton::Middle { v.set_behavior(Box::new(PanBehavior::new(i.viewport.clone(), mouse_info))); @@ -215,7 +215,7 @@ impl Select { }; } - fn mouse_double_pressed(&mut self, v: &mut Editor, i: &Interface, mouse_info: MouseInfo) { + pub fn mouse_double_pressed(&mut self, v: &mut Editor, i: &Interface, mouse_info: MouseInfo) { let ci = if let Some((ci, _pi, _wh)) = clicked_point_or_handle(v, i, mouse_info.raw_position, None) { From a229f1693c09c1647442bf14223f71950d268709 Mon Sep 17 00:00:00 2001 From: Fredrick Brennan Date: Sun, 1 Oct 2023 22:06:04 -0400 Subject: [PATCH 2/2] Add new Cargo.lock --- Cargo.lock | 20 ++++++++++++-------- Cargo.toml | 18 +++++++++--------- 2 files changed, 21 insertions(+), 17 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 405765f..585ea46 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -36,7 +36,7 @@ dependencies = [ "glifrenderer", "image 0.23.14", "itertools 0.10.5", - "kurbo 0.9.0", + "kurbo 0.9.5", "lazy_static", "log", "mfek-ipc", @@ -65,10 +65,11 @@ dependencies = [ [[package]] name = "MFEKmath" version = "0.1.2" +source = "git+https://github.com/MFEK/math.rlib?branch=main#1bccb33e9d8a3f6bde9ea234b7519384bc050526" dependencies = [ "flo_curves", "glifparser", - "kurbo 0.9.0", + "kurbo 0.9.5", "log", "plist", "skia-safe", @@ -1311,6 +1312,7 @@ dependencies = [ [[package]] name = "glifparser" version = "2.0.1" +source = "git+https://github.com/MFEK/glifparser.rlib?branch=master#f8dcacbcaed2632e6287f32872bf1ab3b6174cfb" dependencies = [ "derivative", "derive_more", @@ -1319,7 +1321,7 @@ dependencies = [ "image 0.24.7", "integer_or_float", "itertools 0.10.5", - "kurbo 0.9.0", + "kurbo 0.9.5", "log", "plist", "serde", @@ -1332,6 +1334,7 @@ dependencies = [ [[package]] name = "glifrenderer" version = "0.1.2" +source = "git+https://github.com/MFEK/glifrenderer.rlib#84eaf0a6d83981ca2cfbbe6a4e3da5526995385b" dependencies = [ "MFEKmath", "derive_more", @@ -1663,12 +1666,12 @@ dependencies = [ [[package]] name = "kurbo" -version = "0.9.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e119590a03caff1f7a582e8ee8c2164ddcc975791701188132fd1d1b518d3871" +version = "0.9.5" +source = "git+https://github.com/MFEK/kurbo.rlib?branch=master#b0bec8ab69d41f638aaf4feb41736c4943399a7b" dependencies = [ "arrayvec", "serde", + "smallvec", ] [[package]] @@ -1757,6 +1760,7 @@ dependencies = [ [[package]] name = "mfek-ipc" version = "0.0.4-beta1" +source = "git+https://github.com/MFEK/ipc.rlib#5cebcdddd619e13fb375f5a4695ccca0573f98b2" dependencies = [ "ansi_term", "atty", @@ -2669,9 +2673,9 @@ checksum = "4c845fbdc07cb9555a94806496be14d51dcda6d3bf6894d92af2c3a93bebc2c5" [[package]] name = "spline" version = "0.3.0" -source = "git+https://github.com/MFEK/spline.rlib#46d9121b03d2e6bea67b33078057ecad28666d07" +source = "git+https://github.com/MFEK/spline.rlib#0baf40a846c7ed92c35a56f589bcea5fe08b7884" dependencies = [ - "kurbo 0.9.0", + "kurbo 0.9.5", "serde", ] diff --git a/Cargo.toml b/Cargo.toml index 5420f9a..6afbd77 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -88,19 +88,19 @@ ctrlc = "3.2" ## Our crates # parses .glif files and gives us a place to put arbitrary data -#glifparser = { git = "https://github.com/MFEK/glifparser.rlib", branch = "master", features=["skia", "mfek"] } -glifparser = { path = "../glifparser.rlib", features=["skia", "mfek"] } # for development +glifparser = { git = "https://github.com/MFEK/glifparser.rlib", branch = "master", features=["skia", "mfek"] } +#glifparser = { path = "../glifparser.rlib", features=["skia", "mfek"] } # for development -#MFEKmath = { git = "https://github.com/MFEK/math.rlib", branch = "main" } -MFEKmath = { path = "../math.rlib", features=["skia"]} # for development +MFEKmath = { git = "https://github.com/MFEK/math.rlib", branch = "main" } +#MFEKmath = { path = "../math.rlib", features=["skia"]} # for development pub-mod = { git = "https://github.com/MFEK/pub_mod.rlib" } -#mfek-ipc = { git = "https://github.com/MFEK/ipc.rlib" } -mfek-ipc = { path = "../ipc.rlib" } # for development +mfek-ipc = { git = "https://github.com/MFEK/ipc.rlib" } +#mfek-ipc = { path = "../ipc.rlib" } # for development -#glifrenderer = { git = "https://github.com/MFEK/glifrenderer.rlib" } -glifrenderer = { path = "../glifrenderer.rlib" } # for development +glifrenderer = { git = "https://github.com/MFEK/glifrenderer.rlib" } +#glifrenderer = { path = "../glifrenderer.rlib" } # for development # forked from linebender/spline spline = { git = "https://github.com/MFEK/spline.rlib" } @@ -130,7 +130,7 @@ flo_curves = "0.6" plist = "1.3" # we use this for affine matrices in some of our data types -kurbo = { version = "=0.9.0", features = ["serde"] } +kurbo = { git = "https://github.com/MFEK/kurbo.rlib", branch = "master" } # show backtrace backtrace = "0.3"