aports/testing/meli/neither_dbus_nor_cli-docs.patch
omni caca5d4257 testing/meli: new aport
- don't vendor openssl
- try to avoid static linking
- patch out cli-docs and the man sub-command, we package manpages in the
  -doc subpackage
- patch out dbus support, for now, this was mostly an effort to make the
  binary smaller, I'll probably revert it in the future if I can't make
  it have a significant dent on the size of the binary
2024-12-16 09:58:46 +00:00

2412 lines
75 KiB
Diff

Disable the man subcommand, we package man pages anyway
Also disable DBUS notifications support, for now...
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -40,9 +40,9 @@ dependencies = [
[[package]]
name = "allocator-api2"
-version = "0.2.18"
+version = "0.2.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c6cb57a04249c6480766f7f7cef5467412af1490f8d1e243141daddada3264f"
+checksum = "683d7910e743518b0e34f1186f92494becacb047c7b6bf616c96772180fef923"
[[package]]
name = "android-tzdata"
@@ -61,9 +61,9 @@ dependencies = [
[[package]]
name = "anstyle"
-version = "1.0.8"
+version = "1.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1bec1de6f59aedf83baf9ff929c98f2ad654b97c9510f4e70cf6f661d49fd5b1"
+checksum = "55cc3b69f167a1ef2e161439aa98aed94e6028e5f9a59be9a6ffb47aef1651f9"
[[package]]
name = "assert_cmd"
@@ -105,14 +105,14 @@ dependencies = [
[[package]]
name = "async-executor"
-version = "1.13.0"
+version = "1.13.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d7ebdfa2ebdab6b1760375fa7d6f382b9f486eac35fc994625a00e89280bdbb7"
+checksum = "30ca9a001c1e8ba5149f91a74362376cc6bc5b919d92d988668657bd570bdcec"
dependencies = [
"async-task",
"concurrent-queue",
- "fastrand 2.1.1",
- "futures-lite 2.3.0",
+ "fastrand 2.3.0",
+ "futures-lite 2.5.0",
"slab",
]
@@ -134,22 +134,22 @@ checksum = "ebcd09b382f40fcd159c2d695175
dependencies = [
"async-lock",
"blocking",
- "futures-lite 2.3.0",
+ "futures-lite 2.5.0",
]
[[package]]
name = "async-io"
-version = "2.3.4"
+version = "2.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "444b0228950ee6501b3568d3c93bf1176a1fdbc3b758dcd9475046d30f4dc7e8"
+checksum = "43a2b323ccce0a1d90b449fd71f2a06ca7faa7c54c2751f06c9bd851fc061059"
dependencies = [
"async-lock",
"cfg-if",
"concurrent-queue",
"futures-io",
- "futures-lite 2.3.0",
+ "futures-lite 2.5.0",
"parking",
- "polling 3.7.3",
+ "polling 3.7.4",
"rustix",
"slab",
"tracing",
@@ -175,14 +175,14 @@ checksum = "b948000fad4873c1c9339d60f262
dependencies = [
"async-io",
"blocking",
- "futures-lite 2.3.0",
+ "futures-lite 2.5.0",
]
[[package]]
name = "async-process"
-version = "2.2.4"
+version = "2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a8a07789659a4d385b79b18b9127fc27e1a59e1e89117c78c5ea3b806f016374"
+checksum = "63255f1dc2381611000436537bbedfe83183faa303a5a0edaf191edef06526bb"
dependencies = [
"async-channel 2.3.1",
"async-io",
@@ -192,10 +192,9 @@ dependencies = [
"blocking",
"cfg-if",
"event-listener 5.3.1",
- "futures-lite 2.3.0",
+ "futures-lite 2.5.0",
"rustix",
"tracing",
- "windows-sys 0.59.0",
]
[[package]]
@@ -230,9 +229,9 @@ checksum = "1505bd5d3d116872e7271a6d4e16
[[package]]
name = "autocfg"
-version = "1.3.0"
+version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0c4b4d0bd25bd0b74681c0ad21497610ce1b7c91b1022cd21c80c6fbdd9476b0"
+checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26"
[[package]]
name = "base64"
@@ -256,12 +255,6 @@ dependencies = [
]
[[package]]
-name = "block"
-version = "0.1.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
-
-[[package]]
name = "blocking"
version = "1.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -270,7 +263,7 @@ dependencies = [
"async-channel 2.3.1",
"async-task",
"futures-io",
- "futures-lite 2.3.0",
+ "futures-lite 2.5.0",
"piper",
]
@@ -288,14 +281,14 @@ checksum = "e0af050e27e5d57aa14975f97fe4
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.76",
+ "syn 2.0.90",
]
[[package]]
name = "bstr"
-version = "1.10.0"
+version = "1.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "40723b8fb387abc38f4f4a37c09073622e41dd12327033091ef8950659e6dc0c"
+checksum = "786a307d683a5bf92e6fd5fd69a7eb613751668d1d8d67d802846dfe367c62c8"
dependencies = [
"memchr",
"regex-automata",
@@ -310,9 +303,9 @@ checksum = "79296716171880943b8470b5f8d0
[[package]]
name = "bytes"
-version = "1.7.1"
+version = "1.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8318a53db07bb3f8dca91a600466bdb3f2eaadeedfdbcf02e1accbad9271ba50"
+checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b"
[[package]]
name = "castaway"
@@ -322,9 +315,9 @@ checksum = "a2698f953def977c68f935bb0dfa
[[package]]
name = "cc"
-version = "1.1.15"
+version = "1.2.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "57b6a275aa2903740dc87da01c62040406b8812552e97129a63ea8850a17c6e6"
+checksum = "9157bbaa6b165880c27a4293a474c91cdcf265cc68cc829bf10be0964a391caf"
dependencies = [
"shlex",
]
@@ -343,9 +336,9 @@ checksum = "613afe47fcd5fac7ccf1db93babc
[[package]]
name = "chrono"
-version = "0.4.38"
+version = "0.4.39"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a21f936df1771bf62b77f047b726c4625ff2e8aa607c01ec06e5a05bd8463401"
+checksum = "7e36cc9d416881d2e24f9a963be5fb1cd90966419ac844274161d10488b3e825"
dependencies = [
"android-tzdata",
"iana-time-zone",
@@ -413,18 +406,18 @@ dependencies = [
[[package]]
name = "crossbeam-channel"
-version = "0.5.13"
+version = "0.5.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2"
+checksum = "06ba6d68e24814cb8de6bb986db8222d3a027d15872cabc0d18817bc3c0e4471"
dependencies = [
"crossbeam-utils",
]
[[package]]
name = "crossbeam-deque"
-version = "0.8.5"
+version = "0.8.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
+checksum = "9dd111b7b7f7d55b72c0a6ae361660ee5853c9af73f70c3c2ef6858b950e2e51"
dependencies = [
"crossbeam-epoch",
"crossbeam-utils",
@@ -441,24 +434,24 @@ dependencies = [
[[package]]
name = "crossbeam-queue"
-version = "0.3.11"
+version = "0.3.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "df0346b5d5e76ac2fe4e327c5fd1118d6be7c51dfb18f9b7922923f287471e35"
+checksum = "0f58bbc28f91df819d0aa2a2c00cd19754769c2fad90579b3592b1c9ba7a3115"
dependencies = [
"crossbeam-utils",
]
[[package]]
name = "crossbeam-utils"
-version = "0.8.20"
+version = "0.8.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80"
+checksum = "d0a5c400df2834b80a4c3327b3aad3a4c4cd4de0629063962b03235697506a28"
[[package]]
name = "csv"
-version = "1.3.0"
+version = "1.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac574ff4d437a7b5ad237ef331c17ccca63c46479e5b5453eb8e10bb99a759fe"
+checksum = "acdc4883a9c96732e4733212c01447ebd805833b7275a73ca3ee080fd77afdaf"
dependencies = [
"csv-core",
"itoa",
@@ -477,9 +470,9 @@ dependencies = [
[[package]]
name = "curl"
-version = "0.4.46"
+version = "0.4.47"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1e2161dd6eba090ff1594084e95fd67aeccf04382ffea77999ea94ed42ec67b6"
+checksum = "d9fb4d13a1be2b58f14d60adba57c9834b78c62fd86c3e76a148f732686e9265"
dependencies = [
"curl-sys",
"libc",
@@ -492,9 +485,9 @@ dependencies = [
[[package]]
name = "curl-sys"
-version = "0.4.74+curl-8.9.0"
+version = "0.4.78+curl-8.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8af10b986114528fcdc4b63b6f5f021b7057618411046a4de2ba0f0149a097bf"
+checksum = "8eec768341c5c7789611ae51cf6c459099f22e64a5d5d0ce4892434e33821eaf"
dependencies = [
"cc",
"libc",
@@ -513,17 +506,6 @@ source = "registry+https://github.com/ru
checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2"
[[package]]
-name = "dbus"
-version = "0.9.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1bb21987b9fb1613058ba3843121dd18b163b254d8a6e797e144cbac14d96d1b"
-dependencies = [
- "libc",
- "libdbus-sys",
- "winapi",
-]
-
-[[package]]
name = "deranged"
version = "0.3.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -539,24 +521,14 @@ source = "registry+https://github.com/ru
checksum = "6184e33543162437515c2e2b48714794e37845ec9851711914eec9d308f6ebe8"
[[package]]
-name = "dirs-next"
-version = "2.0.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b98cf8ebf19c3d1b223e151f99a4f9f0690dca41414773390fc824184ac833e1"
-dependencies = [
- "cfg-if",
- "dirs-sys-next",
-]
-
-[[package]]
-name = "dirs-sys-next"
-version = "0.1.2"
+name = "displaydoc"
+version = "0.2.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4ebda144c4fe02d1f7ea1a7d9641b6fc6b580adcfa024ae48797ecdeb6825b4d"
+checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0"
dependencies = [
- "libc",
- "redox_users",
- "winapi",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.90",
]
[[package]]
@@ -567,9 +539,9 @@ checksum = "fea41bba32d969b5139977527356
[[package]]
name = "encoding_rs"
-version = "0.8.34"
+version = "0.8.35"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b45de904aa0b010bce2ab45264d0631681847fa7b6f2eaa7dab7619943bc4f59"
+checksum = "75030f3c4f45dafd7586dd6780965a8c7e8e285a5ecb86713e63a79c5b2766f3"
dependencies = [
"cfg-if",
]
@@ -582,12 +554,12 @@ checksum = "5443807d6dff69373d433ab9ef53
[[package]]
name = "errno"
-version = "0.3.9"
+version = "0.3.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "534c5cf6194dfab3db3242765c03bbe257cf92f22b38f6bc0c58d59108a820ba"
+checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d"
dependencies = [
"libc",
- "windows-sys 0.52.0",
+ "windows-sys 0.59.0",
]
[[package]]
@@ -609,9 +581,9 @@ dependencies = [
[[package]]
name = "event-listener-strategy"
-version = "0.5.2"
+version = "0.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1"
+checksum = "3c3e4e0dd3673c1139bf041f3008816d9cf2946bbfac2945c09e523b8d7b05b2"
dependencies = [
"event-listener 5.3.1",
"pin-project-lite",
@@ -640,9 +612,9 @@ dependencies = [
[[package]]
name = "fastrand"
-version = "2.1.1"
+version = "2.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e8c02a5121d4ea3eb16a80748c74f5549a5665e4c21333c6098f283870fbdea6"
+checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be"
[[package]]
name = "filetime"
@@ -658,9 +630,9 @@ dependencies = [
[[package]]
name = "flate2"
-version = "1.0.33"
+version = "1.0.35"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "324a1be68054ef05ad64b861cc9eaf1d623d2d8cb25b4bf2cb9cdd902b4bf253"
+checksum = "c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c"
dependencies = [
"crc32fast",
"miniz_oxide",
@@ -716,9 +688,9 @@ dependencies = [
[[package]]
name = "futures"
-version = "0.3.30"
+version = "0.3.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "645c6916888f6cb6350d2550b80fb63e734897a8498abe35cfb732b6487804b0"
+checksum = "65bc07b1a8bc7c85c5f2e110c476c7389b4554ba72af57d8445ea63a576b0876"
dependencies = [
"futures-channel",
"futures-core",
@@ -747,9 +719,9 @@ checksum = "05f29059c0c2090612e8d742178b
[[package]]
name = "futures-executor"
-version = "0.3.30"
+version = "0.3.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a576fc72ae164fca6b9db127eaa9a9dda0d61316034f33a0a0d4eda41f02b01d"
+checksum = "1e28d1d997f585e54aebc3f97d39e72338912123a67330d723fdbb564d646c9f"
dependencies = [
"futures-core",
"futures-task",
@@ -779,11 +751,11 @@ dependencies = [
[[package]]
name = "futures-lite"
-version = "2.3.0"
+version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52527eb5074e35e9339c6b4e8d12600c7128b68fb25dcb9fa9dec18f7c25f3a5"
+checksum = "cef40d21ae2c515b51041df9ed313ed21e572df340ea58a922a0aefe7e8891a1"
dependencies = [
- "fastrand 2.1.1",
+ "fastrand 2.3.0",
"futures-core",
"futures-io",
"parking",
@@ -798,7 +770,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.76",
+ "syn 2.0.90",
]
[[package]]
@@ -853,12 +825,18 @@ dependencies = [
]
[[package]]
+name = "hashbrown"
+version = "0.15.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289"
+
+[[package]]
name = "hashlink"
version = "0.8.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e8094feaf31ff591f651a2664fb9cfd92bba7a60ce3197265e9482ebe753c8f7"
dependencies = [
- "hashbrown",
+ "hashbrown 0.14.5",
]
[[package]]
@@ -889,16 +867,16 @@ dependencies = [
[[package]]
name = "iana-time-zone"
-version = "0.1.60"
+version = "0.1.61"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e7ffbb5a1b541ea2561f8c41c087286cc091e21e556a4f09a8f6cbf17b69b141"
+checksum = "235e081f3925a06703c2d0117ea8b91f042756fd6e7a6e5d901e8ca1a996b220"
dependencies = [
"android_system_properties",
"core-foundation-sys",
"iana-time-zone-haiku",
"js-sys",
"wasm-bindgen",
- "windows-core 0.52.0",
+ "windows-core",
]
[[package]]
@@ -911,13 +889,142 @@ dependencies = [
]
[[package]]
+name = "icu_collections"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "db2fa452206ebee18c4b5c2274dbf1de17008e874b4dc4f0aea9d01ca79e4526"
+dependencies = [
+ "displaydoc",
+ "yoke",
+ "zerofrom",
+ "zerovec",
+]
+
+[[package]]
+name = "icu_locid"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "13acbb8371917fc971be86fc8057c41a64b521c184808a698c02acc242dbf637"
+dependencies = [
+ "displaydoc",
+ "litemap",
+ "tinystr",
+ "writeable",
+ "zerovec",
+]
+
+[[package]]
+name = "icu_locid_transform"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "01d11ac35de8e40fdeda00d9e1e9d92525f3f9d887cdd7aa81d727596788b54e"
+dependencies = [
+ "displaydoc",
+ "icu_locid",
+ "icu_locid_transform_data",
+ "icu_provider",
+ "tinystr",
+ "zerovec",
+]
+
+[[package]]
+name = "icu_locid_transform_data"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "fdc8ff3388f852bede6b579ad4e978ab004f139284d7b28715f773507b946f6e"
+
+[[package]]
+name = "icu_normalizer"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "19ce3e0da2ec68599d193c93d088142efd7f9c5d6fc9b803774855747dc6a84f"
+dependencies = [
+ "displaydoc",
+ "icu_collections",
+ "icu_normalizer_data",
+ "icu_properties",
+ "icu_provider",
+ "smallvec",
+ "utf16_iter",
+ "utf8_iter",
+ "write16",
+ "zerovec",
+]
+
+[[package]]
+name = "icu_normalizer_data"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "f8cafbf7aa791e9b22bec55a167906f9e1215fd475cd22adfcf660e03e989516"
+
+[[package]]
+name = "icu_properties"
+version = "1.5.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "93d6020766cfc6302c15dbbc9c8778c37e62c14427cb7f6e601d849e092aeef5"
+dependencies = [
+ "displaydoc",
+ "icu_collections",
+ "icu_locid_transform",
+ "icu_properties_data",
+ "icu_provider",
+ "tinystr",
+ "zerovec",
+]
+
+[[package]]
+name = "icu_properties_data"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "67a8effbc3dd3e4ba1afa8ad918d5684b8868b3b26500753effea8d2eed19569"
+
+[[package]]
+name = "icu_provider"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6ed421c8a8ef78d3e2dbc98a973be2f3770cb42b606e3ab18d6237c4dfde68d9"
+dependencies = [
+ "displaydoc",
+ "icu_locid",
+ "icu_provider_macros",
+ "stable_deref_trait",
+ "tinystr",
+ "writeable",
+ "yoke",
+ "zerofrom",
+ "zerovec",
+]
+
+[[package]]
+name = "icu_provider_macros"
+version = "1.5.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1ec89e9337638ecdc08744df490b221a7399bf8d164eb52a665454e60e075ad6"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.90",
+]
+
+[[package]]
name = "idna"
-version = "0.5.0"
+version = "1.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "686f825264d630750a544639377bae737628043f20d38bbc029e8f29ea968a7e"
+dependencies = [
+ "idna_adapter",
+ "smallvec",
+ "utf8_iter",
+]
+
+[[package]]
+name = "idna_adapter"
+version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6"
+checksum = "daca1df1c957320b2cf139ac61e7bd64fed304c5040df000a745aa1de3b4ef71"
dependencies = [
- "unicode-bidi",
- "unicode-normalization",
+ "icu_normalizer",
+ "icu_properties",
]
[[package]]
@@ -949,12 +1056,12 @@ dependencies = [
[[package]]
name = "indexmap"
-version = "2.4.0"
+version = "2.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "93ead53efc7ea8ed3cfb0c79fc8023fbb782a5432b52830b6518941cebe6505c"
+checksum = "62f822373a4fe84d4bb149bf54e584a7f4abec90e072ed49cda0edea5b95471f"
dependencies = [
"equivalent",
- "hashbrown",
+ "hashbrown 0.15.2",
"serde",
]
@@ -1018,16 +1125,17 @@ dependencies = [
[[package]]
name = "itoa"
-version = "1.0.11"
+version = "1.0.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49f1f14873335454500d59611f1cf4a4b0f786f9ac11f4312a78e4cf2566695b"
+checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674"
[[package]]
name = "js-sys"
-version = "0.3.70"
+version = "0.3.76"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1868808506b929d7b0cfa8f75951347aa71bb21144b7791bae35d9bccfcfe37a"
+checksum = "6717b6b5b077764fb5966237269cb3c64edddde4b14ce42647430a78ced9e7b7"
dependencies = [
+ "once_cell",
"wasm-bindgen",
]
@@ -1059,25 +1167,15 @@ checksum = "bbd2bcb4c963f2ddae06a2efc7e9
[[package]]
name = "libc"
-version = "0.2.158"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d8adc4bb1803a324070e64a98ae98f38934d91957a99cfb3a43dcbc01bc56439"
-
-[[package]]
-name = "libdbus-sys"
-version = "0.2.5"
+version = "0.2.168"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "06085512b750d640299b79be4bad3d2fa90a9c00b1fd9e1b46364f66f0485c72"
-dependencies = [
- "cc",
- "pkg-config",
-]
+checksum = "5aaeb2981e0606ca11d79718f8bb01164f1d6ed75080182d3abf017e6d244b6d"
[[package]]
name = "libloading"
-version = "0.8.5"
+version = "0.8.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4979f22fdb869068da03c9f7528f8297c6fd2606bc3a4affe42e6a823fdb8da4"
+checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34"
dependencies = [
"cfg-if",
"windows-targets 0.52.6",
@@ -1101,7 +1199,7 @@ checksum = "c0ff37bd590ca25063e35af745c3
dependencies = [
"bitflags 2.6.0",
"libc",
- "redox_syscall 0.5.3",
+ "redox_syscall 0.5.8",
]
[[package]]
@@ -1143,32 +1241,16 @@ source = "registry+https://github.com/ru
checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89"
[[package]]
-name = "log"
-version = "0.4.22"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24"
-
-[[package]]
-name = "mac-notification-sys"
-version = "0.6.1"
+name = "litemap"
+version = "0.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "51fca4d74ff9dbaac16a01b924bc3693fa2bba0862c2c633abc73f9a8ea21f64"
-dependencies = [
- "cc",
- "dirs-next",
- "objc-foundation",
- "objc_id",
- "time",
-]
+checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104"
[[package]]
-name = "malloc_buf"
-version = "0.0.6"
+name = "log"
+version = "0.4.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
-dependencies = [
- "libc",
-]
+checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24"
[[package]]
name = "meli"
@@ -1188,7 +1270,6 @@ dependencies = [
"linkify",
"melib",
"nix",
- "notify-rust",
"predicates",
"proc-macro2",
"quote",
@@ -1232,7 +1313,7 @@ dependencies = [
"nix",
"nom",
"notify",
- "polling 3.7.3",
+ "polling 3.7.4",
"regex",
"rusqlite",
"rusty-fork",
@@ -1365,18 +1446,6 @@ dependencies = [
]
[[package]]
-name = "notify-rust"
-version = "4.11.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "26a1d03b6305ecefdd9c6c60150179bb8d9f0cd4e64bbcad1e41419e7bf5e414"
-dependencies = [
- "dbus",
- "log",
- "mac-notification-sys",
- "tauri-winrt-notification",
-]
-
-[[package]]
name = "num-conv"
version = "0.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1398,45 +1467,16 @@ source = "registry+https://github.com/ru
checksum = "b8f8bdf33df195859076e54ab11ee78a1b208382d3a26ec40d142ffc1ecc49ef"
[[package]]
-name = "objc"
-version = "0.2.7"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
-dependencies = [
- "malloc_buf",
-]
-
-[[package]]
-name = "objc-foundation"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1add1b659e36c9607c7aab864a76c7a4c2760cd0cd2e120f3fb8b952c7e22bf9"
-dependencies = [
- "block",
- "objc",
- "objc_id",
-]
-
-[[package]]
-name = "objc_id"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c92d4ddb4bd7b50d730c215ff871754d0da6b2178849f8a2a2ab69712d0c073b"
-dependencies = [
- "objc",
-]
-
-[[package]]
name = "once_cell"
-version = "1.19.0"
+version = "1.20.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92"
+checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775"
[[package]]
name = "openssl"
-version = "0.10.66"
+version = "0.10.68"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9529f4786b70a3e8c61e11179af17ab6188ad8d0ded78c5529441ed39d4bd9c1"
+checksum = "6174bc48f102d208783c2c84bf931bb75927a617866870de8a4ea85597f871f5"
dependencies = [
"bitflags 2.6.0",
"cfg-if",
@@ -1455,7 +1495,7 @@ checksum = "a948666b637a0f465e8564c73e89
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.76",
+ "syn 2.0.90",
]
[[package]]
@@ -1466,18 +1506,18 @@ checksum = "ff011a302c396a5197692431fc19
[[package]]
name = "openssl-src"
-version = "300.3.1+3.3.1"
+version = "300.4.1+3.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7259953d42a81bf137fbbd73bd30a8e1914d6dce43c2b90ed575783a22608b91"
+checksum = "faa4eac4138c62414b5622d1b31c5c304f34b406b013c079c2bbc652fdd6678c"
dependencies = [
"cc",
]
[[package]]
name = "openssl-sys"
-version = "0.9.103"
+version = "0.9.104"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7f9e8deee91df40a943c71b917e5874b951d32a802526c85721ce3b776c929d6"
+checksum = "45abf306cbf99debc8195b66b7346498d7b10c210de50418b5ccd7ceba08c741"
dependencies = [
"cc",
"libc",
@@ -1488,9 +1528,9 @@ dependencies = [
[[package]]
name = "parking"
-version = "2.2.0"
+version = "2.2.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb813b8af86854136c6922af0598d719255ecb2179515e6e7730d468f05c9cae"
+checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba"
[[package]]
name = "percent-encoding"
@@ -1500,29 +1540,29 @@ checksum = "e3148f5046208a5d56bcfc03053e
[[package]]
name = "pin-project"
-version = "1.1.5"
+version = "1.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b6bf43b791c5b9e34c3d182969b4abb522f9343702850a2e57f460d00d09b4b3"
+checksum = "be57f64e946e500c8ee36ef6331845d40a93055567ec57e8fae13efd33759b95"
dependencies = [
"pin-project-internal",
]
[[package]]
name = "pin-project-internal"
-version = "1.1.5"
+version = "1.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2f38a4412a78282e09a2cf38d195ea5420d15ba0602cb375210efbc877243965"
+checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.76",
+ "syn 2.0.90",
]
[[package]]
name = "pin-project-lite"
-version = "0.2.14"
+version = "0.2.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bda66fc9667c18cb2758a2ac84d1167245054bcf85d5d1aaa6923f45801bdd02"
+checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff"
[[package]]
name = "pin-utils"
@@ -1537,15 +1577,15 @@ source = "registry+https://github.com/ru
checksum = "96c8c490f422ef9a4efd2cb5b42b76c8613d7e7dfc1caf667b8a3350a5acc066"
dependencies = [
"atomic-waker",
- "fastrand 2.1.1",
+ "fastrand 2.3.0",
"futures-io",
]
[[package]]
name = "pkg-config"
-version = "0.3.30"
+version = "0.3.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d231b230927b5e4ad203db57bbcbee2802f6bce620b1e4a9024a07d94e2907ec"
+checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2"
[[package]]
name = "polling"
@@ -1565,9 +1605,9 @@ dependencies = [
[[package]]
name = "polling"
-version = "3.7.3"
+version = "3.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc2790cd301dec6cd3b7a025e4815cf825724a51c98dccfe6a3e55f05ffb6511"
+checksum = "a604568c3202727d1507653cb121dbd627a58684eb09a820fd746bee38b4442f"
dependencies = [
"cfg-if",
"concurrent-queue",
@@ -1586,9 +1626,9 @@ checksum = "439ee305def115ba05938db6eb16
[[package]]
name = "predicates"
-version = "3.1.0"
+version = "3.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68b87bfd4605926cdfefc1c3b5f8fe560e3feca9d5552cf68c466d3d8236c7e8"
+checksum = "7e9086cc7640c29a356d1a29fd134380bee9d8f79a17410aa76e7ad295f42c97"
dependencies = [
"anstyle",
"difflib",
@@ -1600,15 +1640,15 @@ dependencies = [
[[package]]
name = "predicates-core"
-version = "1.0.6"
+version = "1.0.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b794032607612e7abeb4db69adb4e33590fa6cf1149e95fd7cb00e634b92f174"
+checksum = "ae8177bee8e75d6846599c6b9ff679ed51e882816914eec639944d7c9aa11931"
[[package]]
name = "predicates-tree"
-version = "1.0.9"
+version = "1.0.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "368ba315fb8c5052ab692e68a0eefec6ec57b23a36959c14496f0b0df2c0cecf"
+checksum = "41b740d195ed3166cd147c8047ec98db0e22ec019eb8eeb76d343b795304fb13"
dependencies = [
"predicates-core",
"termtree",
@@ -1640,9 +1680,9 @@ dependencies = [
[[package]]
name = "proc-macro2"
-version = "1.0.86"
+version = "1.0.92"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77"
+checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0"
dependencies = [
"unicode-ident",
]
@@ -1654,15 +1694,6 @@ source = "registry+https://github.com/ru
checksum = "a1d01941d82fa2ab50be1e79e6714289dd7cde78eba4c074bc5a4374f650dfe0"
[[package]]
-name = "quick-xml"
-version = "0.31.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1004a344b30a54e2ee58d66a71b32d2db2feb0a31f9a2d302bf0536f15de2a33"
-dependencies = [
- "memchr",
-]
-
-[[package]]
name = "quote"
version = "1.0.37"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1682,9 +1713,9 @@ dependencies = [
[[package]]
name = "redox_syscall"
-version = "0.5.3"
+version = "0.5.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a908a6e00f1fdd0dfd9c0eb08ce85126f6d8bbda50017e74bc4a4b7d4a926a4"
+checksum = "03a862b389f93e68874fbf580b9de08dd02facb9a788ebadaf4a3fd33cf58834"
dependencies = [
"bitflags 2.6.0",
]
@@ -1696,21 +1727,10 @@ source = "registry+https://github.com/ru
checksum = "20145670ba436b55d91fc92d25e71160fbfbdd57831631c8d7d36377a476f1cb"
[[package]]
-name = "redox_users"
-version = "0.4.6"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ba009ff324d1fc1b900bd1fdb31564febe58a8ccc8a6fdbb93b543d33b13ca43"
-dependencies = [
- "getrandom",
- "libredox",
- "thiserror",
-]
-
-[[package]]
name = "regex"
-version = "1.10.6"
+version = "1.11.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4219d74c6b67a3654a9fbebc4b419e22126d13d2f3c4a07ee0cb61ff79a79619"
+checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191"
dependencies = [
"aho-corasick",
"memchr",
@@ -1720,9 +1740,9 @@ dependencies = [
[[package]]
name = "regex-automata"
-version = "0.4.7"
+version = "0.4.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df"
+checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908"
dependencies = [
"aho-corasick",
"memchr",
@@ -1731,9 +1751,9 @@ dependencies = [
[[package]]
name = "regex-syntax"
-version = "0.8.4"
+version = "0.8.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b"
+checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c"
[[package]]
name = "rusqlite"
@@ -1757,15 +1777,15 @@ dependencies = [
[[package]]
name = "rustix"
-version = "0.38.35"
+version = "0.38.42"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a85d50532239da68e9addb745ba38ff4612a242c1c7ceea689c4bc7c2f43c36f"
+checksum = "f93dc38ecbab2eb790ff964bb77fa94faf256fd3e73285fd7ba0903b76bedb85"
dependencies = [
"bitflags 2.6.0",
"errno",
"libc",
"linux-raw-sys",
- "windows-sys 0.52.0",
+ "windows-sys 0.59.0",
]
[[package]]
@@ -1797,11 +1817,11 @@ dependencies = [
[[package]]
name = "schannel"
-version = "0.1.23"
+version = "0.1.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fbc91545643bcf3a0bbb6569265615222618bdf33ce4ffbbd13c4bbd4c093534"
+checksum = "1f29ebaa345f945cec9fbbc532eb307f0fdad8161f281b6369539c8d84876b3d"
dependencies = [
- "windows-sys 0.52.0",
+ "windows-sys 0.59.0",
]
[[package]]
@@ -1819,9 +1839,9 @@ dependencies = [
[[package]]
name = "security-framework-sys"
-version = "2.11.1"
+version = "2.12.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75da29fe9b9b08fe9d6b22b5b4bcbc75d8db3aa31e639aa56bb62e9d46bfceaf"
+checksum = "fa39c7303dc58b5543c94d22c1766b0d31f2ee58306363ea622b10bbc075eaa2"
dependencies = [
"core-foundation-sys",
"libc",
@@ -1829,29 +1849,29 @@ dependencies = [
[[package]]
name = "serde"
-version = "1.0.209"
+version = "1.0.216"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "99fce0ffe7310761ca6bf9faf5115afbc19688edd00171d81b1bb1b116c63e09"
+checksum = "0b9781016e935a97e8beecf0c933758c97a5520d32930e460142b4cd80c6338e"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_derive"
-version = "1.0.209"
+version = "1.0.216"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a5831b979fd7b5439637af1752d535ff49f4860c0f341d1baeb6faf0f4242170"
+checksum = "46f859dbbf73865c6627ed570e78961cd3ac92407a2d117204c49232485da55e"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.76",
+ "syn 2.0.90",
]
[[package]]
name = "serde_json"
-version = "1.0.127"
+version = "1.0.133"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "8043c06d9f82bd7271361ed64f415fe5e12a77fdb52e573e7f06a516dea329ad"
+checksum = "c7fceb2473b9166b2294ef05efcb65a3db80803f0b03ef86a5fc88a2b85ee377"
dependencies = [
"itoa",
"memchr",
@@ -1871,9 +1891,9 @@ dependencies = [
[[package]]
name = "serde_spanned"
-version = "0.6.7"
+version = "0.6.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eb5b1b31579f3811bf615c144393417496f152e12ac8b7663bf664f4a815306d"
+checksum = "87607cb1398ed59d48732e575a4c28a7a8ebf2454b964fe3f224f2afc07909e1"
dependencies = [
"serde",
]
@@ -1940,9 +1960,9 @@ dependencies = [
[[package]]
name = "smol"
-version = "2.0.1"
+version = "2.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "aad24f41392790e6ac67f4f4cd871da61f7d758e07b5622431e491e897d9c8a7"
+checksum = "a33bd3e260892199c3ccfc487c88b2da2265080acb316cd920da72fdfd7c599f"
dependencies = [
"async-channel 2.3.1",
"async-executor",
@@ -1952,20 +1972,26 @@ dependencies = [
"async-net",
"async-process",
"blocking",
- "futures-lite 2.3.0",
+ "futures-lite 2.5.0",
]
[[package]]
name = "socket2"
-version = "0.5.7"
+version = "0.5.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ce305eb0b4296696835b71df73eb912e0f1ffd2556a501fcede6e0c50349191c"
+checksum = "c970269d99b64e60ec3bd6ad27270092a5394c4e309314b18ae3fe575695fbe8"
dependencies = [
"libc",
"windows-sys 0.52.0",
]
[[package]]
+name = "stable_deref_trait"
+version = "1.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a8f112729512f8e442d81f95a8a7ddf2b7c6b8a1a6f509a95864142b30cab2d3"
+
+[[package]]
name = "structopt"
version = "0.3.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2002,9 +2028,9 @@ dependencies = [
[[package]]
name = "syn"
-version = "2.0.76"
+version = "2.0.90"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "578e081a14e0cefc3279b0472138c513f37b41a08d5a3cca9b6e4e8ceb6cd525"
+checksum = "919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31"
dependencies = [
"proc-macro2",
"quote",
@@ -2012,24 +2038,24 @@ dependencies = [
]
[[package]]
-name = "tauri-winrt-notification"
-version = "0.2.1"
+name = "synstructure"
+version = "0.13.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f89f5fb70d6f62381f5d9b2ba9008196150b40b75f3068eb24faeddf1c686871"
+checksum = "c8af7666ab7b6390ab78131fb5b0fce11d6b7a6951602017c35fa82800708971"
dependencies = [
- "quick-xml",
- "windows",
- "windows-version",
+ "proc-macro2",
+ "quote",
+ "syn 2.0.90",
]
[[package]]
name = "tempfile"
-version = "3.12.0"
+version = "3.14.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04cbcdd0c794ebb0d4cf35e88edd2f7d2c4c3e9a5a6dab322839b321c6a87a64"
+checksum = "28cce251fcbc87fac86a866eeb0d6c2d536fc16d06f184bb61aeae11aa4cee0c"
dependencies = [
"cfg-if",
- "fastrand 2.1.1",
+ "fastrand 2.3.0",
"once_cell",
"rustix",
"windows-sys 0.59.0",
@@ -2064,29 +2090,29 @@ dependencies = [
[[package]]
name = "thiserror"
-version = "1.0.63"
+version = "1.0.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0342370b38b6a11b6cc11d6a805569958d54cfa061a29969c3b5ce2ea405724"
+checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52"
dependencies = [
"thiserror-impl",
]
[[package]]
name = "thiserror-impl"
-version = "1.0.63"
+version = "1.0.69"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a4558b58466b9ad7ca0f102865eccc95938dca1a74a856f2b57b6629050da261"
+checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.76",
+ "syn 2.0.90",
]
[[package]]
name = "time"
-version = "0.3.36"
+version = "0.3.37"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5dfd88e563464686c916c7e46e623e520ddc6d79fa6641390f2e3fa86e83e885"
+checksum = "35e7868883861bd0e56d9ac6efcaaca0d6d5d82a2a7ec8209ff492c07cf37b21"
dependencies = [
"deranged",
"itoa",
@@ -2105,30 +2131,25 @@ checksum = "ef927ca75afb808a4d64dd374f00
[[package]]
name = "time-macros"
-version = "0.2.18"
+version = "0.2.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3f252a68540fde3a3877aeea552b832b40ab9a69e318efd078774a01ddee1ccf"
+checksum = "2834e6017e3e5e4b9834939793b282bc03b37a3336245fa820e35e233e2a85de"
dependencies = [
"num-conv",
"time-core",
]
[[package]]
-name = "tinyvec"
-version = "1.8.0"
+name = "tinystr"
+version = "0.7.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938"
+checksum = "9117f5d4db391c1cf6927e7bea3db74b9a1c1add8f7eda9ffd5364f40f57b82f"
dependencies = [
- "tinyvec_macros",
+ "displaydoc",
+ "zerovec",
]
[[package]]
-name = "tinyvec_macros"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
-
-[[package]]
name = "toml"
version = "0.8.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2152,9 +2173,9 @@ dependencies = [
[[package]]
name = "toml_edit"
-version = "0.22.20"
+version = "0.22.22"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "583c44c02ad26b0c3f3066fe629275e50627026c51ac2e595cca4c230ce1ce1d"
+checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5"
dependencies = [
"indexmap",
"serde",
@@ -2165,9 +2186,9 @@ dependencies = [
[[package]]
name = "tracing"
-version = "0.1.40"
+version = "0.1.41"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c3523ab5a71916ccf420eebdf5521fcef02141234bbc0b8a49f2fdc4544364ef"
+checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0"
dependencies = [
"log",
"pin-project-lite",
@@ -2177,20 +2198,20 @@ dependencies = [
[[package]]
name = "tracing-attributes"
-version = "0.1.27"
+version = "0.1.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7"
+checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.76",
+ "syn 2.0.90",
]
[[package]]
name = "tracing-core"
-version = "0.1.32"
+version = "0.1.33"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c06d3da6113f116aaee68e4d601191614c9053067f9ab7f6edbcb161237daa54"
+checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c"
dependencies = [
"once_cell",
]
@@ -2206,43 +2227,28 @@ dependencies = [
]
[[package]]
-name = "unicode-bidi"
-version = "0.3.15"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08f95100a766bf4f8f28f90d77e0a5461bbdb219042e7679bebe79004fed8d75"
-
-[[package]]
name = "unicode-ident"
-version = "1.0.12"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b"
-
-[[package]]
-name = "unicode-normalization"
-version = "0.1.23"
+version = "1.0.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a56d1686db2308d901306f92a263857ef59ea39678a5458e7cb17f01415101f5"
-dependencies = [
- "tinyvec",
-]
+checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83"
[[package]]
name = "unicode-segmentation"
-version = "1.11.0"
+version = "1.12.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202"
+checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493"
[[package]]
name = "unicode-width"
-version = "0.1.13"
+version = "0.1.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0336d538f7abc86d282a4189614dfaa90810dfc2c6f6427eaf88e16311dd225d"
+checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af"
[[package]]
name = "url"
-version = "2.5.2"
+version = "2.5.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "22784dbdf76fdde8af1aeda5622b546b422b6fc585325248a2bf9f5e41e94d6c"
+checksum = "32f8b686cadd1473f4bd0117a5d28d36b1ade384ea9b5069a1c40aefed7fda60"
dependencies = [
"form_urlencoded",
"idna",
@@ -2251,10 +2257,22 @@ dependencies = [
]
[[package]]
+name = "utf16_iter"
+version = "1.0.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "c8232dd3cdaed5356e0f716d285e4b40b932ac434100fe9b7e0e8e935b9e6246"
+
+[[package]]
+name = "utf8_iter"
+version = "1.0.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b6c140620e7ffbb22c2dee59cafe6084a59b5ffc27a8859a5f0d494b5d52b6be"
+
+[[package]]
name = "uuid"
-version = "1.10.0"
+version = "1.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314"
+checksum = "f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a"
dependencies = [
"getrandom",
"serde",
@@ -2306,9 +2324,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce292
[[package]]
name = "wasm-bindgen"
-version = "0.2.93"
+version = "0.2.99"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a82edfc16a6c469f5f44dc7b571814045d60404b55a0ee849f9bcfa2e63dd9b5"
+checksum = "a474f6281d1d70c17ae7aa6a613c87fce69a127e2624002df63dcb39d6cf6396"
dependencies = [
"cfg-if",
"once_cell",
@@ -2317,24 +2335,23 @@ dependencies = [
[[package]]
name = "wasm-bindgen-backend"
-version = "0.2.93"
+version = "0.2.99"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9de396da306523044d3302746f1208fa71d7532227f15e347e2d93e4145dd77b"
+checksum = "5f89bb38646b4f81674e8f5c3fb81b562be1fd936d84320f3264486418519c79"
dependencies = [
"bumpalo",
"log",
- "once_cell",
"proc-macro2",
"quote",
- "syn 2.0.76",
+ "syn 2.0.90",
"wasm-bindgen-shared",
]
[[package]]
name = "wasm-bindgen-macro"
-version = "0.2.93"
+version = "0.2.99"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "585c4c91a46b072c92e908d99cb1dcdf95c5218eeb6f3bf1efa991ee7a68cccf"
+checksum = "2cc6181fd9a7492eef6fef1f33961e3695e4579b9872a6f7c83aee556666d4fe"
dependencies = [
"quote",
"wasm-bindgen-macro-support",
@@ -2342,38 +2359,22 @@ dependencies = [
[[package]]
name = "wasm-bindgen-macro-support"
-version = "0.2.93"
+version = "0.2.99"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "afc340c74d9005395cf9dd098506f7f44e38f2b4a21c6aaacf9a105ea5e1e836"
+checksum = "30d7a95b763d3c45903ed6c81f156801839e5ee968bb07e534c44df0fcd330c2"
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.76",
+ "syn 2.0.90",
"wasm-bindgen-backend",
"wasm-bindgen-shared",
]
[[package]]
name = "wasm-bindgen-shared"
-version = "0.2.93"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c62a0a307cb4a311d3a07867860911ca130c3494e8c2719593806c08bc5d0484"
-
-[[package]]
-name = "winapi"
-version = "0.3.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
-dependencies = [
- "winapi-i686-pc-windows-gnu",
- "winapi-x86_64-pc-windows-gnu",
-]
-
-[[package]]
-name = "winapi-i686-pc-windows-gnu"
-version = "0.4.0"
+version = "0.2.99"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
+checksum = "943aab3fdaaa029a6e0271b35ea10b72b943135afe9bffca82384098ad0e06a6"
[[package]]
name = "winapi-util"
@@ -2385,22 +2386,6 @@ dependencies = [
]
[[package]]
-name = "winapi-x86_64-pc-windows-gnu"
-version = "0.4.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
-
-[[package]]
-name = "windows"
-version = "0.56.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1de69df01bdf1ead2f4ac895dc77c9351aefff65b2f3db429a343f9cbf05e132"
-dependencies = [
- "windows-core 0.56.0",
- "windows-targets 0.52.6",
-]
-
-[[package]]
name = "windows-core"
version = "0.52.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2410,49 +2395,6 @@ dependencies = [
]
[[package]]
-name = "windows-core"
-version = "0.56.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4698e52ed2d08f8658ab0c39512a7c00ee5fe2688c65f8c0a4f06750d729f2a6"
-dependencies = [
- "windows-implement",
- "windows-interface",
- "windows-result",
- "windows-targets 0.52.6",
-]
-
-[[package]]
-name = "windows-implement"
-version = "0.56.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6fc35f58ecd95a9b71c4f2329b911016e6bec66b3f2e6a4aad86bd2e99e2f9b"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.76",
-]
-
-[[package]]
-name = "windows-interface"
-version = "0.56.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "08990546bf4edef8f431fa6326e032865f27138718c587dc21bc0265bbcb57cc"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn 2.0.76",
-]
-
-[[package]]
-name = "windows-result"
-version = "0.1.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8"
-dependencies = [
- "windows-targets 0.52.6",
-]
-
-[[package]]
name = "windows-sys"
version = "0.48.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2511,15 +2453,6 @@ dependencies = [
]
[[package]]
-name = "windows-version"
-version = "0.1.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6998aa457c9ba8ff2fb9f13e9d2a930dabcea28f1d0ab94d687d8b3654844515"
-dependencies = [
- "windows-targets 0.52.6",
-]
-
-[[package]]
name = "windows_aarch64_gnullvm"
version = "0.48.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2611,20 +2544,56 @@ checksum = "589f6da84c646204747d1270a2a5
[[package]]
name = "winnow"
-version = "0.6.18"
+version = "0.6.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "68a9bda4691f099d435ad181000724da8e5899daa10713c2d432552b9ccd3a6f"
+checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b"
dependencies = [
"memchr",
]
[[package]]
+name = "write16"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "d1890f4022759daae28ed4fe62859b1236caebfc61ede2f63ed4e695f3f6d936"
+
+[[package]]
+name = "writeable"
+version = "0.5.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1e9df38ee2d2c3c5948ea468a8406ff0db0b29ae1ffde1bcf20ef305bcc95c51"
+
+[[package]]
name = "xdg"
version = "2.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "213b7324336b53d2414b2db8537e56544d981803139155afa84f76eeebb7a546"
[[package]]
+name = "yoke"
+version = "0.7.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "120e6aef9aa629e3d4f52dc8cc43a015c7724194c97dfaf45180d2daf2b77f40"
+dependencies = [
+ "serde",
+ "stable_deref_trait",
+ "yoke-derive",
+ "zerofrom",
+]
+
+[[package]]
+name = "yoke-derive"
+version = "0.7.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "2380878cad4ac9aac1e2435f3eb4020e8374b5f13c296cb75b4620ff8e229154"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.90",
+ "synstructure",
+]
+
+[[package]]
name = "zerocopy"
version = "0.7.35"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -2641,5 +2610,48 @@ checksum = "fa4f8080344d4671fb4e831a13ad
dependencies = [
"proc-macro2",
"quote",
- "syn 2.0.76",
+ "syn 2.0.90",
+]
+
+[[package]]
+name = "zerofrom"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "cff3ee08c995dee1859d998dea82f7374f2826091dd9cd47def953cae446cd2e"
+dependencies = [
+ "zerofrom-derive",
+]
+
+[[package]]
+name = "zerofrom-derive"
+version = "0.1.5"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "595eed982f7d355beb85837f651fa22e90b3c044842dc7f2c2842c086f295808"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.90",
+ "synstructure",
+]
+
+[[package]]
+name = "zerovec"
+version = "0.10.4"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "aa2b893d79df23bfb12d5461018d408ea19dfafe76c2c7ef6d4eba614f8ff079"
+dependencies = [
+ "yoke",
+ "zerofrom",
+ "zerovec-derive",
+]
+
+[[package]]
+name = "zerovec-derive"
+version = "0.10.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "6eafa6dfb17584ea3e2bd6e76e0cc15ad7af12b09abdd1ca55961bed9b1063c6"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "syn 2.0.90",
]
--- a/meli/Cargo.toml
+++ b/meli/Cargo.toml
@@ -32,7 +32,8 @@ futures = { version = "0.3.30", default-
indexmap = { version = "^2.3", default-features = false, features = ["serde", "std"] }
itoa = { version = "1.0.11", default-features = false }
libc = { version = "0.2.125", default-features = false, features = ["extra_traits"] }
-libz-sys = { version = "1.1", features = ["static"], optional = true }
+libz-sys = { version = "1.1" }
+#libz-sys = { version = "1.1", features = ["static"], optional = true }
linkify = { version = "^0.10", default-features = false }
melib = { path = "../melib", version = "0.8.10", features = [] }
nix = { version = "0.29", default-features = false, features = ["signal", "poll", "term", "ioctl", "process"] }
@@ -50,23 +51,14 @@ toml = { version = "0.8", default-featur
xdg = { version = "2.1.0" }
[features]
-default = ["sqlite3", "notmuch", "smtp", "dbus-notifications", "gpgme", "cli-docs", "jmap", "static"]
+default = ["sqlite3", "notmuch", "smtp", "gpgme", "jmap"]
notmuch = ["melib/notmuch"]
jmap = ["melib/jmap"]
sqlite3 = ["melib/sqlite3"]
smtp = ["melib/smtp"]
smtp-trace = ["smtp", "melib/smtp-trace"]
-dbus-notifications = ["dep:notify-rust"]
-cli-docs = ["dep:flate2"]
# svgscreenshot = ["dep:svg_crate"]
gpgme = ["melib/gpgme"]
-# Static / vendoring features.
-tls-static = ["melib/tls-static"]
-http-static = ["melib/http-static"]
-sqlite3-static = ["melib/sqlite3-static"]
-dbus-static = ["dep:notify-rust", "notify-rust?/d_vendored"]
-libz-static = ["dep:libz-sys", "libz-sys?/static"]
-static = ["tls-static", "http-static", "sqlite3-static", "dbus-static", "libz-static"]
# Print tracing logs as meli runs in stderr
# enable for debug tracing logs: build with --features=debug-tracing and export MELI_DEBUG_STDERR
@@ -86,6 +78,3 @@ predicates = { version = "3" }
regex = { version = "1" }
rusty-fork = { version = "0.3.0" }
tempfile = { version = "3.3" }
-
-[target.'cfg(target_os="linux")'.dependencies]
-notify-rust = { version = "^4", default-features = false, features = ["dbus"], optional = true }
--- a/meli/build.rs
+++ b/meli/build.rs
@@ -35,61 +35,4 @@ fn main() {
("src/conf/tags.rs", "TagsSettings"),
("src/conf/pgp.rs", "PGPSettings"),
]);
- #[cfg(feature = "cli-docs")]
- {
- use flate2::{Compression, GzBuilder};
- const MANDOC_OPTS: &[&str] = &["-T", "utf8", "-I", "os=Generated by mandoc(1)"];
- use std::{env, io::prelude::*, path::Path};
-
- let out_dir = env::var("OUT_DIR").unwrap();
- let mut out_dir_path = Path::new(&out_dir).to_path_buf();
-
- let mut cl = |filepath: &str, output: &str, source: bool| {
- out_dir_path.push(output);
- let output = if source {
- std::fs::read_to_string(filepath).unwrap().into_bytes()
- } else {
- let output = Command::new("mandoc")
- .args(MANDOC_OPTS)
- .arg(filepath)
- .output()
- .or_else(|_| Command::new("man").arg("-l").arg(filepath).output())
- .expect(
- "could not execute `mandoc` or `man`. If the binaries are not available \
- in the PATH, disable `cli-docs` feature to be able to continue \
- compilation.",
- );
- output.stdout
- };
-
- let file = File::create(&out_dir_path).unwrap_or_else(|err| {
- panic!("Could not create file {}: {}", out_dir_path.display(), err)
- });
- let mut gz = GzBuilder::new()
- .comment(output.len().to_string().into_bytes())
- .write(file, Compression::default());
- gz.write_all(&output).unwrap();
- gz.finish().unwrap();
- out_dir_path.pop();
- };
-
- cl("docs/meli.1", "meli.txt.gz", false);
- cl("docs/meli.conf.5", "meli.conf.txt.gz", false);
- cl(
- "docs/meli.conf.examples.5",
- "meli.conf.examples.txt.gz",
- false,
- );
- cl("docs/meli-themes.5", "meli-themes.txt.gz", false);
- cl("docs/meli.7", "meli.7.txt.gz", false);
- cl("docs/meli.1", "meli.mdoc.gz", true);
- cl("docs/meli.conf.5", "meli.conf.mdoc.gz", true);
- cl(
- "docs/meli.conf.examples.5",
- "meli.conf.examples.mdoc.gz",
- true,
- );
- cl("docs/meli-themes.5", "meli-themes.mdoc.gz", true);
- cl("docs/meli.7", "meli.7.mdoc.gz", true);
- }
}
--- a/meli/src/args.rs
+++ b/meli/src/args.rs
@@ -24,8 +24,6 @@
use std::{ffi::OsStr, os::unix::ffi::OsStrExt};
use super::*;
-#[cfg(feature = "cli-docs")]
-use crate::manpages;
fn try_path_or_stdio(input: &OsStr) -> PathOrStdio {
if input.as_bytes() == b"-" {
@@ -89,18 +87,7 @@ pub enum SubCommand {
#[structopt(display_order = 3)]
/// Testing tools such as IMAP, SMTP shells for debugging.
Tools(ToolOpt),
- #[structopt(visible_alias="docs", aliases=&["docs", "manpage", "manpages"])]
#[structopt(display_order = 4)]
- /// print documentation page and exit (Piping to a pager is recommended.).
- Man(ManOpt),
- #[structopt(display_order = 5)]
- /// Install manual pages to the first location provided by `$MANPATH` /
- /// `manpath(1)`, unless you specify the directory as an argument.
- InstallMan {
- #[structopt(value_name = "DESTINATION_PATH", parse(from_os_str))]
- destination_path: Option<PathBuf>,
- },
- #[structopt(display_order = 6)]
/// Print compile time feature flags of this binary
CompiledWith,
/// Print log file location.
@@ -113,22 +100,6 @@ pub enum SubCommand {
}
#[derive(Debug, StructOpt)]
-pub struct ManOpt {
- /// If set, output text in stdout instead of spawning `$PAGER`.
- #[cfg(feature = "cli-docs")]
- #[cfg_attr(feature = "cli-docs", structopt(long = "no-raw", alias = "no-raw"))]
- pub no_raw: bool,
- /// If set, output compressed gzip manpage in binary form in stdout.
- #[cfg(feature = "cli-docs")]
- #[cfg_attr(feature = "cli-docs", structopt(long = "gzipped"))]
- pub gzipped: bool,
- #[cfg(feature = "cli-docs")]
- #[cfg_attr(feature = "cli-docs", structopt(default_value = "meli", possible_values=manpages::POSSIBLE_VALUES, value_name="PAGE", parse(try_from_str = manpages::parse_manpage)))]
- /// Name of manual page.
- pub page: manpages::ManPages,
-}
-
-#[derive(Debug, StructOpt)]
pub enum ToolOpt {
ImapShell {
#[structopt(value_name = "CONFIG_TOML_ACCOUNT_NAME")]
@@ -194,33 +165,6 @@ impl Opt {
print_path(&config_path);
Ok(())
}
- #[cfg(not(feature = "cli-docs"))]
- SubCommand::Man(ManOpt {}) => {
- Err(Error::new("error: this version of meli was not build with embedded documentation (cargo feature `cli-docs`). You might have it installed as manpages (eg `man meli`), otherwise check https://meli-email.org"))
- }
- #[cfg(feature = "cli-docs")]
- SubCommand::Man(ManOpt {
- page,
- no_raw,
- gzipped: true,
- }) => {
- use std::io::Write;
-
- ret_err!(std::io::stdout().write_all(if no_raw {
- page.text_gz()
- } else {
- page.mdoc_gz()
- }));
- Ok(())
- }
- #[cfg(feature = "cli-docs")]
- SubCommand::Man(ManOpt {
- page,
- no_raw,
- gzipped: false,
- }) => {
- subcommands::man(page, false).and_then(|s| subcommands::pager(s, no_raw))
- }
SubCommand::CompiledWith => {
subcommands::compiled_with()
}
@@ -245,20 +189,6 @@ impl Opt {
print_path(&temp_dir);
Ok(())
}
- #[cfg(not(feature = "cli-docs"))]
- SubCommand::InstallMan {
- destination_path: _,
- } => {
- Err(Error::new("error: this version of meli was not build with embedded documentation (cargo feature `cli-docs`). You might have it installed as manpages (eg `man meli`), otherwise check https://meli-email.org"))
- }
- #[cfg(feature = "cli-docs")]
- SubCommand::InstallMan { destination_path } => {
- match crate::manpages::ManPages::install(destination_path) {
- Ok(p) => println!("Installed at {}.", p.display()),
- Err(err) => return Some(Err(err)),
- }
- Ok(())
- }
SubCommand::PrintLogPath => {
let settings = ret_err!(crate::conf::Settings::new());
print_path(&settings._logger.log_dest());
--- a/meli/src/command/actions.rs
+++ b/meli/src/command/actions.rs
@@ -86,8 +86,6 @@ pub enum TabAction {
New(Option<Box<dyn Component>>),
ManageMailboxes,
ManageJobs,
- #[cfg(feature = "cli-docs")]
- Man(crate::manpages::ManPages),
}
#[derive(Debug, Eq, PartialEq)]
--- a/meli/src/command/parser.rs
+++ b/meli/src/command/parser.rs
@@ -146,7 +146,7 @@ pub fn view(input: &[u8]) -> IResult<&[u
}
pub fn new_tab(input: &[u8]) -> IResult<&[u8], Result<Action, CommandError>> {
- alt((manage_mailboxes, manage_jobs, compose_action, view_manpage))(input)
+ alt((manage_mailboxes, manage_jobs, compose_action))(input)
}
pub fn parse_command(input: &[u8]) -> Result<Action, CommandError> {
@@ -1080,40 +1080,6 @@ pub fn manage_jobs(input: &[u8]) -> IRes
Ok((input, Ok(Tab(ManageJobs))))
}
-pub fn view_manpage(input: &[u8]) -> IResult<&[u8], Result<Action, CommandError>> {
- let mut check = arg_init! { min_arg:1, max_arg: 1, view_manpage };
- let (input, _) = tag("man")(input.trim())?;
- arg_chk!(start check, input);
- let (input, _) = is_a(" ")(input)?;
- arg_chk!(inc check, input);
- #[allow(unused_variables)]
- let (input, manpage) = map_res(not_line_ending, std::str::from_utf8)(input.trim())?;
- let (input, _) = eof(input)?;
- arg_chk!(finish check, input);
- #[cfg(feature = "cli-docs")]
- {
- match crate::manpages::parse_manpage(manpage) {
- Ok(m) => Ok((input, Ok(Tab(Man(m))))),
- Err(err) => Ok((
- input,
- Err(CommandError::BadValue {
- inner: err.to_string().into(),
- suggestions: Some(crate::manpages::POSSIBLE_VALUES),
- }),
- )),
- }
- }
- #[cfg(not(feature = "cli-docs"))]
- {
- Ok((
- input,
- Err(CommandError::Other {
- inner: "this meli binary has not been compiled with the cli-docs feature".into(),
- }),
- ))
- }
-}
-
pub fn quit(input: &[u8]) -> IResult<&[u8], Result<Action, CommandError>> {
let mut check = arg_init! { min_arg:0, max_arg: 0, quit};
let (input, _) = tag("quit")(input.trim())?;
--- a/meli/src/command.rs
+++ b/meli/src/command.rs
@@ -516,18 +516,6 @@ Alternatives(&[to_stream!(One(Literal("a
tokens: &[One(Literal("manage-mailboxes"))],
parser: parser::manage_mailboxes
},
- { tags: ["man"],
- desc: "read documentation",
- tokens: {
- #[cfg(feature = "cli-docs")]
- {
- &[One(Literal("man")), One(AlternativeStrings(crate::manpages::POSSIBLE_VALUES))]
- }
- #[cfg(not(feature = "cli-docs"))]
- { &[] }
- },
- parser: parser::view_manpage
- },
{ tags: ["manage-jobs"],
desc: "view and manage jobs",
tokens: &[One(Literal("manage-jobs"))],
--- a/meli/src/lib.rs
+++ b/meli/src/lib.rs
@@ -107,8 +107,6 @@ pub use melib::{
};
pub mod args;
-#[cfg(feature = "cli-docs")]
-pub mod manpages;
pub mod signal_handlers;
pub mod subcommands;
--- a/meli/src/main.rs
+++ b/meli/src/main.rs
@@ -91,12 +91,7 @@ fn run_app(mut opt: Opt) -> Result<()> {
let status_bar = Box::new(StatusBar::new(&state.context, window));
state.register_component(status_bar);
- #[cfg(all(target_os = "linux", feature = "dbus-notifications"))]
- {
- let dbus_notifications =
- Box::new(notifications::DbusNotifications::new(&state.context));
- state.register_component(dbus_notifications);
- }
+ #[cfg(all(target_os = "linux"))]
state.register_component(Box::new(notifications::NotificationCommand::new()));
}
let enter_command_mode: Key = state
--- a/meli/src/notifications.rs
+++ b/meli/src/notifications.rs
@@ -22,158 +22,11 @@
//! Notification handling components
use std::process::{Command, Stdio};
-#[cfg(all(target_os = "linux", feature = "dbus-notifications"))]
-pub use dbus::*;
+#[cfg(all(target_os = "linux"))]
use melib::{utils::datetime, UnixTimestamp};
use super::*;
-#[cfg(all(target_os = "linux", feature = "dbus-notifications"))]
-mod dbus {
- use super::*;
- use crate::types::RateLimit;
-
- /// Passes notifications to the OS using Dbus
- #[derive(Debug)]
- pub struct DbusNotifications {
- rate_limit: RateLimit,
- id: ComponentId,
- }
-
- impl std::fmt::Display for DbusNotifications {
- fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result {
- write!(f, "")
- }
- }
-
- impl DbusNotifications {
- pub fn new(context: &Context) -> Self {
- Self {
- rate_limit: RateLimit::new(
- 1000,
- 1000,
- context.main_loop_handler.job_executor.clone(),
- ),
- id: ComponentId::default(),
- }
- }
- }
-
- impl Component for DbusNotifications {
- fn draw(&mut self, _grid: &mut CellBuffer, _area: Area, _context: &mut Context) {}
-
- fn process_event(&mut self, event: &mut UIEvent, context: &mut Context) -> bool {
- if !context.settings.notifications.enable {
- return false;
- }
-
- if let UIEvent::Notification {
- ref title,
- source: _,
- ref body,
- ref kind,
- } = event
- {
- if !self.rate_limit.tick() {
- return false;
- }
-
- let settings = &context.settings.notifications;
- let mut notification = notify_rust::Notification::new();
- notification
- .appname("meli")
- .summary(title.as_ref().map(<_>::as_ref).unwrap_or("meli"))
- .body(&escape_str(body));
- match *kind {
- Some(NotificationType::NewMail) => {
- notification.hint(notify_rust::Hint::Category("email".to_owned()));
- notification.icon("mail-message-new");
- notification.sound_name("message-new-email");
- }
- Some(NotificationType::SentMail) => {
- notification.hint(notify_rust::Hint::Category("email".to_owned()));
- notification.icon("mail-send");
- notification.sound_name("message-sent-email");
- }
- Some(NotificationType::Saved) => {
- notification.icon("document-save");
- }
- Some(NotificationType::Info) => {
- notification.icon("dialog-information");
- }
- Some(NotificationType::Error(melib::ErrorKind::Authentication)) => {
- notification.icon("dialog-password");
- }
- Some(NotificationType::Error(melib::ErrorKind::Bug)) => {
- notification.icon("face-embarrassed");
- }
- Some(NotificationType::Error(melib::ErrorKind::None))
- | Some(NotificationType::Error(melib::ErrorKind::External)) => {
- notification.icon("dialog-error");
- }
- Some(NotificationType::Error(melib::ErrorKind::Network(_))) => {
- notification.icon("network-error");
- }
- Some(NotificationType::Error(melib::ErrorKind::TimedOut)) => {
- notification.icon("network-offline");
- }
- _ => {}
- }
- if settings.play_sound.is_true() {
- if let Some(ref sound_path) = settings.sound_file {
- notification.hint(notify_rust::Hint::SoundFile(sound_path.to_owned()));
- }
- } else {
- notification.hint(notify_rust::Hint::SuppressSound(true));
- }
-
- if let Err(err) = notification.show() {
- log::error!("Could not show dbus notification: {err}");
- }
- }
- false
- }
-
- fn set_dirty(&mut self, _value: bool) {}
-
- fn is_dirty(&self) -> bool {
- false
- }
-
- fn id(&self) -> ComponentId {
- self.id
- }
- }
-
- fn escape_str(s: &str) -> String {
- let mut ret: String = String::with_capacity(s.len());
- for c in s.chars() {
- match c {
- '&' => ret.push_str("&amp;"),
- '<' => ret.push_str("&lt;"),
- '>' => ret.push_str("&gt;"),
- '\'' => ret.push_str("&apos;"),
- '"' => ret.push_str("&quot;"),
- _ => {
- let i = c as u32;
- if (0x1..=0x8).contains(&i)
- || (0xb..=0xc).contains(&i)
- || (0xe..=0x1f).contains(&i)
- || (0x7f..=0x84).contains(&i)
- || (0x86..=0x9f).contains(&i)
- {
- use std::fmt::Write;
- let _ = write!(ret, "&#{:x}%{:x};", i, i);
- } else {
- ret.push(c);
- }
- }
- }
- }
- ret
- }
-}
-
/// Passes notifications to a user defined shell command
#[derive(Debug, Default)]
pub struct NotificationCommand {
--- a/meli/src/state.rs
+++ b/meli/src/state.rs
@@ -900,27 +900,6 @@ impl State {
)))
.unwrap();
}
- #[cfg(feature = "cli-docs")]
- Tab(Man(manpage)) => match manpage
- .read(false)
- .map(|text| crate::manpages::ManPages::remove_markup(&text).unwrap_or(text))
- {
- Ok(m) => self.rcv_event(UIEvent::Action(Tab(New(Some(Box::new(
- Pager::from_string(
- m,
- &self.context,
- None,
- None,
- crate::conf::value(&self.context, "theme_default"),
- ),
- )))))),
- Err(err) => self.context.replies.push_back(UIEvent::Notification {
- title: None,
- body: "Encountered an error while retrieving manual page.".into(),
- source: Some(err),
- kind: Some(NotificationType::Error(ErrorKind::Bug)),
- }),
- },
v => {
self.rcv_event(UIEvent::Action(v));
}
--- a/meli/src/subcommands.rs
+++ b/meli/src/subcommands.rs
@@ -76,36 +76,6 @@ pub fn edit_config() -> Result<()> {
Ok(())
}
-#[cfg(feature = "cli-docs")]
-pub fn man(page: manpages::ManPages, source: bool) -> Result<String> {
- page.read(source)
-}
-
-#[cfg(feature = "cli-docs")]
-pub fn pager(v: String, no_raw: bool) -> Result<()> {
- if no_raw || !terminal::is_tty() {
- println!("{v}");
- return Ok(());
- }
-
- let mut handle = Command::new("sh")
- .arg("-c")
- .arg(std::env::var("PAGER").unwrap_or_else(|_| "more".to_string()))
- .stdin(Stdio::piped())
- .stdout(Stdio::inherit())
- .stderr(Stdio::inherit())
- .spawn()?;
- handle.stdin.take().unwrap().write_all(v.as_bytes())?;
- handle.wait()?;
-
- Ok(())
-}
-
-#[cfg(not(feature = "cli-docs"))]
-pub fn man(_: args::ManOpt) -> Result<()> {
- Err(Error::new("error: this version of meli was not build with embedded documentation (cargo feature `cli-docs`). You might have it installed as manpages (eg `man meli`), otherwise check https://meli-email.org"))
-}
-
pub fn compiled_with() -> Result<()> {
#[cfg(feature = "notmuch")]
println!("notmuch");
@@ -115,10 +85,6 @@ pub fn compiled_with() -> Result<()> {
println!("sqlite3");
#[cfg(feature = "smtp")]
println!("smtp");
- #[cfg(feature = "dbus-notifications")]
- println!("dbus-notifications");
- #[cfg(feature = "cli-docs")]
- println!("cli-docs");
#[cfg(feature = "gpgme")]
println!("gpgme");
Ok(())
--- a/meli/tests/test_cli_subcommands.rs
+++ b/meli/tests/test_cli_subcommands.rs
@@ -70,8 +70,6 @@ fn test_cli_subcommands() {
.stdout(predicates::str::contains("create-config"))
.stdout(predicates::str::contains("test-config"))
.stdout(predicates::str::contains("tools"))
- .stdout(predicates::str::contains("man"))
- .stdout(predicates::str::contains("install-man"))
.stdout(predicates::str::contains("compiled-with"))
.stdout(predicates::str::contains("edit-config"))
.stdout(predicates::str::contains("help"))
@@ -96,27 +94,6 @@ fn test_cli_subcommands() {
output.code(0).stdout(predicates::str::is_empty());
}
- fn test_subcommand_install_man(dir: &Path) {
- let mut cmd = Command::cargo_bin("meli").unwrap();
- let output = cmd.arg("install-man").arg(dir).output().unwrap().assert();
- output.code(0).stdout(predicates::str::is_empty().not());
- let mut path = dir.to_path_buf();
- for (man, dir) in [
- ("meli.1", "man1"),
- ("meli.conf.5", "man5"),
- ("meli.conf.examples.5", "man5"),
- ("meli-themes.5", "man5"),
- ("meli.7", "man7"),
- ] {
- path.push(dir);
- assert!(path.is_dir());
- path.push(man);
- assert!(path.is_file());
- path.pop();
- path.pop();
- }
- }
-
fn test_subcommand_config_stdio() {
{
let mut cmd = Command::cargo_bin("meli").unwrap();
@@ -148,79 +125,14 @@ server_password_command = "false"
}
}
- fn test_subcommand_man() {
- for (man, title) in [
- ("meli.1", "MELI(1)"),
- ("meli.conf.5", "MELI.CONF(5)"),
- ("meli.conf.examples.5", "MELI.CONF.EXAMPLES(5)"),
- ("meli-themes.5", "MELI-THEMES(5)"),
- ("meli.7", "MELI(7)"),
- ] {
- let true_true: &[&str] = &["man", "--no-raw", "--gzipped", man];
- let true_false: &[&str] = &["man", "--no-raw", man];
- let false_false: &[&str] = &["man", man];
- let false_true: &[&str] = &["man", "--gzipped", man];
- for gzipped in [true, false] {
- for no_raw in [true, false] {
- let mut cmd = Command::cargo_bin("meli").unwrap();
- let args = match (no_raw, gzipped) {
- (true, true) => true_true,
- (true, false) => true_false,
- (false, false) => false_false,
- (false, true) => false_true,
- };
- let output = cmd.args(args).output().unwrap().assert();
- output.code(0).stdout(predicate::function(|x: &[u8]| {
- use std::io::Read;
-
- use flate2::bufread::GzDecoder;
-
- let mut gz = GzDecoder::new(x);
- let content = if gzipped {
- let size = gz.header().unwrap().comment().unwrap();
-
- let mut v = String::with_capacity(
- str::parse::<usize>(
- std::str::from_utf8(size)
- .expect("was not compressed with size comment header"),
- )
- .expect("was not compressed with size comment header"),
- );
- gz.read_to_string(&mut v)
- .expect("expected gzipped output but could not decode it.");
- v
- } else {
- assert_eq!(gz.header(), None);
- let mut v = String::with_capacity(0);
- gz.read_to_string(&mut v).unwrap_err();
- String::from_utf8(x.to_vec()).expect("invalid utf-8 content")
- };
- if !no_raw && gzipped {
- assert!(content.contains(man));
- } else {
- assert!(content.contains('\u{8}'));
- assert!(content.contains(title));
- }
-
- true
- }));
- }
- }
- }
- }
-
version();
help();
test_subcommand_succeeds("help");
test_subcommand_succeeds("compiled-with");
- test_subcommand_succeeds("man");
- test_subcommand_man();
test_subcommand_config_stdio();
let tmp_dir = TempDir::new().unwrap();
- test_subcommand_install_man(tmp_dir.path());
-
fn config_not_exists(conf: &Path) {
let mut cmd = Command::cargo_bin("meli").unwrap();
let output = cmd.arg("-c").arg(conf).output().unwrap().assert();