From c23a457e72abe608715ac76f076f47dc42af07a5 Mon Sep 17 00:00:00 2001 From: Daniel Baumann Date: Thu, 30 May 2024 20:31:44 +0200 Subject: Merging upstream version 1.74.1+dfsg1. Signed-off-by: Daniel Baumann --- vendor/clap/.cargo-checksum.json | 2 +- vendor/clap/Cargo.lock | 325 ++++++--------------- vendor/clap/Cargo.toml | 25 +- .../examples/tutorial_builder/03_04_subcommands.md | 3 +- .../examples/tutorial_derive/03_04_subcommands.md | 6 +- vendor/clap/src/_derive/_tutorial.rs | 250 ---------------- vendor/clap/src/_derive/_tutorial/chapter_0.rs | 25 ++ vendor/clap/src/_derive/_tutorial/chapter_1.rs | 29 ++ vendor/clap/src/_derive/_tutorial/chapter_2.rs | 103 +++++++ vendor/clap/src/_derive/_tutorial/chapter_3.rs | 78 +++++ vendor/clap/src/_derive/_tutorial/chapter_4.rs | 15 + vendor/clap/src/_derive/_tutorial/chapter_5.rs | 14 + vendor/clap/src/_derive/_tutorial/mod.rs | 36 +++ vendor/clap/src/_features.rs | 1 - vendor/clap/src/_tutorial.rs | 242 --------------- vendor/clap/src/_tutorial/chapter_0.rs | 24 ++ vendor/clap/src/_tutorial/chapter_1.rs | 31 ++ vendor/clap/src/_tutorial/chapter_2.rs | 87 ++++++ vendor/clap/src/_tutorial/chapter_3.rs | 84 ++++++ vendor/clap/src/_tutorial/chapter_4.rs | 15 + vendor/clap/src/_tutorial/chapter_5.rs | 12 + vendor/clap/src/_tutorial/mod.rs | 36 +++ vendor/clap/src/bin/stdio-fixture.rs | 2 +- vendor/clap/src/lib.rs | 13 +- 24 files changed, 699 insertions(+), 759 deletions(-) delete mode 100644 vendor/clap/src/_derive/_tutorial.rs create mode 100644 vendor/clap/src/_derive/_tutorial/chapter_0.rs create mode 100644 vendor/clap/src/_derive/_tutorial/chapter_1.rs create mode 100644 vendor/clap/src/_derive/_tutorial/chapter_2.rs create mode 100644 vendor/clap/src/_derive/_tutorial/chapter_3.rs create mode 100644 vendor/clap/src/_derive/_tutorial/chapter_4.rs create mode 100644 vendor/clap/src/_derive/_tutorial/chapter_5.rs create mode 100644 vendor/clap/src/_derive/_tutorial/mod.rs delete mode 100644 vendor/clap/src/_tutorial.rs create mode 100644 vendor/clap/src/_tutorial/chapter_0.rs create mode 100644 vendor/clap/src/_tutorial/chapter_1.rs create mode 100644 vendor/clap/src/_tutorial/chapter_2.rs create mode 100644 vendor/clap/src/_tutorial/chapter_3.rs create mode 100644 vendor/clap/src/_tutorial/chapter_4.rs create mode 100644 vendor/clap/src/_tutorial/chapter_5.rs create mode 100644 vendor/clap/src/_tutorial/mod.rs (limited to 'vendor/clap') diff --git a/vendor/clap/.cargo-checksum.json b/vendor/clap/.cargo-checksum.json index f457a7041..8b7a95a92 100644 --- a/vendor/clap/.cargo-checksum.json +++ b/vendor/clap/.cargo-checksum.json @@ -1 +1 @@ -{"files":{"Cargo.lock":"3556bd3b23af3b01a75ca3e355e7b074629226cfb7cca734eee1378eaf99ab34","Cargo.toml":"ec5fde651af021ef9cc14bb726e5b60efa7716f3e3be03ad33b049643f5a3024","LICENSE-APACHE":"c6596eb7be8581c18be736c846fb9173b69eccf6ef94c5135893ec56bd92ba08","LICENSE-MIT":"6efb0476a1cc085077ed49357026d8c173bf33017278ef440f222fb9cbcb66e6","README.md":"bcb96a3aedd4da85e24e201a4922e435928b0c0a2f97fd5843d0793a54e6a09f","examples/README.md":"c5f45032ee7acda0c5f98db456cbf4f9b0362d62dc81218fcf03bcdfbd19af05","examples/cargo-example-derive.md":"66d7455f08a038872f42d9d45f9b47ebbdbf9366fafa16b749ece8ba5bdcfcce","examples/cargo-example-derive.rs":"748ba54fb553e797996014e706320b62fad645acca50565a4c6fcd40e8aa1128","examples/cargo-example.md":"60a1d0f253142de5003a9474b28a5a8324a9860fc646af6309d84594d97356bd","examples/cargo-example.rs":"2c2eda50605a5e48c2ba78083e0f545e1df2411b9efaf994c95c9a0357ecbfb1","examples/demo.md":"6c00568794ff99007ab0f08bf7e06fe521cb1f2f0fab30c219f16c6f54bf638d","examples/demo.rs":"08cdd247b47a5202de9b7df7c1f3e7e30da975e56256d930d9db0f6c36741933","examples/derive_ref/augment_args.rs":"274bbe3c91d72609289274a22330067dd0ab42eb9bc3c44c94ed6da149ed56eb","examples/derive_ref/augment_subcommands.rs":"f202fd8a836552c53bb4b33a652b577f254726334f8a72f5fac0526937ab15ef","examples/derive_ref/flatten_hand_args.rs":"d3783fdea6297ffef23939df913ece655670b617f39addfab5147dc217e70fb1","examples/derive_ref/hand_subcommand.rs":"be49b475f86862295eb4d0a00086d5874896f9a66f28cca8fcdf6548943beba7","examples/derive_ref/interop_tests.md":"aaf307e313c3926b14f1265199ab18665bb3dea723729a7e6cbf3b237fa73941","examples/escaped-positional-derive.md":"fb4b4351ceb43ef0c25048e8603dab6fdf4391b84e9b3ad9593602fa89abc572","examples/escaped-positional-derive.rs":"4fe5f9dfbd15d3efcff7ff9b214d00c189ac0592e30b297b154df789e49dbfa3","examples/escaped-positional.md":"b44e23e5706eb815e7875825be815a370f2ba38e41d7998ea762d0ef1fb2ba56","examples/escaped-positional.rs":"e1e784bb90805ef3412f002d9660c979ebbd2d59eb609ceb7f8926c0ad8e7c31","examples/find.md":"acb72e150f9feeb5d7828163f0e36ff5004ae667f6ddbb06d2838a75037177ee","examples/find.rs":"0a9824ae817345e6989ad51b7d514101ee0e842da380e5bad4019ddd2cccedd0","examples/git-derive.md":"d214127af66033e0de4f9da869eb7e6ca073e7c7d7fdf8b6792cba75d39d68e9","examples/git-derive.rs":"4b0a28ef89e2c1578a9f134325495d303663d3cfcacb900ef6efcd38ef5fca44","examples/git.md":"449a75c1e0c7b2dd948b856c81a868f6b8f0c300667b17ec5dd638c6739d2175","examples/git.rs":"8b935b4f516802a9f64654719485fbe8cfc96263e3acd23a74235c3dbdf651ab","examples/multicall-busybox.md":"b8e8a89312e2088b6dd1fac5b5b92266fda9b82c40a650dae2d41b5fcc253594","examples/multicall-busybox.rs":"0be842810003f69de33c9e65258f74a5d1ec742fb0ebc8a49fdebfecc861c408","examples/multicall-hostname.md":"1dedcdcc9927c08cebee11fa01fda7a730f5ddf5227c4902e1eb5ff847a80346","examples/multicall-hostname.rs":"cc58a924dd2e57281f36e30481a1cbc8186952adbf149f9e1e13f9c673614fd9","examples/pacman.md":"a050be1727605a4202faf69db7f991bf974bba51ce0fbd41413de68e6a4af5aa","examples/pacman.rs":"e2183dd3c60f7c3949be6f3d21c85bf8a6b2a14913b675649a770be21c764eda","examples/repl.rs":"972ed0b06962f9daf20b7cee5dd6dc873fc31747e84bce646c0e057678c653f3","examples/tutorial_builder/01_quick.md":"d2a242a6ba832cdb0a2b6f55d428d62e7048f6b7d8d8f4a75f7923da85628ca8","examples/tutorial_builder/01_quick.rs":"7921943f7b697cf9413a87d0ebf32d6db4a93b2674cb66d9ca66530626088d1f","examples/tutorial_builder/02_app_settings.md":"4e7097deb0eb8e926978ef383b0da4bda33966d4e760ac0d258cd4127a054fba","examples/tutorial_builder/02_app_settings.rs":"c050d19fa8c0ecefde73746200fb513da0dd78d904011a1c0a75835fd9c172b3","examples/tutorial_builder/02_apps.md":"3cbc7010e0214d047d98104dadb76ee02ec3c5bba868758e35aebb2fdfd0fa22","examples/tutorial_builder/02_apps.rs":"e654126b44161d5b20ce2e576a6022f027060d003e07ae74c7bbdeddd6fcb880","examples/tutorial_builder/02_crate.md":"995dc62680b9d7c1983c673bf5775c07ae96175db186b5313c0d614308569ec0","examples/tutorial_builder/02_crate.rs":"b0bdc601133bf9e566231dd6be439d0ce82b6911ca53ae4b5c1b5da62eb2acd8","examples/tutorial_builder/03_01_flag_bool.md":"326d8267ce6fcc62e95fdb19f77bdc959067e41af48c7d6e465c0eafe2db741c","examples/tutorial_builder/03_01_flag_bool.rs":"d49b30b527faa6a383b334e572d546fab5c4b298a5549842073ab42a33a05c94","examples/tutorial_builder/03_01_flag_count.md":"c34ff091d239f5861a868bda051322774340be9a63dea32cbfabe8c0cc4dfd94","examples/tutorial_builder/03_01_flag_count.rs":"a003825bc045d4d89265344cfb00082da379150e72fc5d16b33ee93ec9ec0927","examples/tutorial_builder/03_02_option.md":"f436d35a7f2aece1a30f0258f44ae09166fb4faae3b6623beb6a824d2ed234fd","examples/tutorial_builder/03_02_option.rs":"13e58e3f922ef79bb4f3cec63f84dc906bb20ea8bbd33e5ca3cb8cfce847095a","examples/tutorial_builder/03_02_option_mult.md":"c83e0f52f97f38154be30ac34d7d60b9271fd8a0dcab629929ee785d3baa07a2","examples/tutorial_builder/03_02_option_mult.rs":"bd3e522d6ff4a1a9f5849924650acf8ea8afc1f4c3ba633e45926a479f54b7c7","examples/tutorial_builder/03_03_positional.md":"dc2e13cf897e2e2d2b397a1ab739bfd290ec04f437128030eb7f6f609b910be7","examples/tutorial_builder/03_03_positional.rs":"582ffa5b056363a74d2ba966d212fbd6b00f42fe42f0e71ae95009fe75746349","examples/tutorial_builder/03_03_positional_mult.md":"f1d03ca58d9ee75ec9a4cc980006a666e2c529ab6f7deaf6bd88b3fbaf09fc07","examples/tutorial_builder/03_03_positional_mult.rs":"271a9ee04038244fdf378c6a603af9d4cb6a401d82f9e28928c2e7ad971aff10","examples/tutorial_builder/03_04_subcommands.md":"51f725938c4e0a7970185d8fe40c903d477e7c62c2e430c1316a442a8b8a237a","examples/tutorial_builder/03_04_subcommands.rs":"a309a332004edbed6dc14b64b1ba6cc0cd42871f3c5b8da7daab772764839c68","examples/tutorial_builder/03_05_default_values.md":"c30c72c85190aaddc06a7c0ed1cf87356eb81f03284b0e9c5f47d4f233d06a00","examples/tutorial_builder/03_05_default_values.rs":"96c8bd0004cf0dc0338851ccf4ae3309ec49e61cc90f41bcf912207eac95ea18","examples/tutorial_builder/04_01_enum.md":"c89cef996c17aa909031233b283349b23427c065b634d43ee82b974f4f28d1c6","examples/tutorial_builder/04_01_enum.rs":"04795a5d702f166e6283e1d4cc7dbaabdbe85e3e941b0cbf7ae1b205de72596b","examples/tutorial_builder/04_01_possible.md":"e16ec1ee5e7a67ab040afd4c87c3ebf84e5ab229491b73f3da337160a0dd14bb","examples/tutorial_builder/04_01_possible.rs":"3d781b26d257061b55a957744c2dbd99c1d2346c151230fb18fe5f576d19585c","examples/tutorial_builder/04_02_parse.md":"d02e8e79e96c2def7a2576a5acc06ba539061a221960ce89eeca1a51e52ef317","examples/tutorial_builder/04_02_parse.rs":"fb9f82791717775b7112bc829e950db29277c5b21367d73e322a87f326678fd4","examples/tutorial_builder/04_02_validate.md":"3f9f29b3629f0d20d8ff149ec721ee67a4baad39c12e2e379d472865c6cf682f","examples/tutorial_builder/04_02_validate.rs":"a5c03e60d4e475d23c38b253bcea29a4673f9494f60359a243f09b84c34e5a2a","examples/tutorial_builder/04_03_relations.md":"cfc6a4ee6d6912566773c9c86b92466725e8eb90c5c765d7cb603f2ffd0d911a","examples/tutorial_builder/04_03_relations.rs":"f367c93ddc7db37ec002a59e12d93ad58bdcf8b4b832c45adb4f6b197db31f0f","examples/tutorial_builder/04_04_custom.md":"11581660afa0679cda9355965cf55e0a282da9184f8d2eec97a415f48878002e","examples/tutorial_builder/04_04_custom.rs":"1da17cebc5a6a2887ba8f39070a47408c7ca6f16256a071f10d10a151b5e1f40","examples/tutorial_builder/05_01_assert.rs":"c42469ab8eeaaaab6dcec816459a934fb1380d208b14055d15e3e877b375bb20","examples/tutorial_derive/01_quick.md":"345bbe0689766fd83929826bffc32c9067c8e97c42fb7390db2620931bd27834","examples/tutorial_derive/01_quick.rs":"e00b44cd37ec6c618c94886438a18b3fc4dd507bdda483d177d7e50657d00c83","examples/tutorial_derive/02_app_settings.md":"7b3ef753653be837d6c7d92c805a8238dd61fce2fc46d58b860c3771dbfec113","examples/tutorial_derive/02_app_settings.rs":"23679bfe015a35a31e48c50a46d031a424fdb3ced7d35a787a35763addd932b9","examples/tutorial_derive/02_apps.md":"166b48034c788304ce9d3f48f91dd7b1b7e18a6d66f689114ba618d79b60cc24","examples/tutorial_derive/02_apps.rs":"9dc8a352dacd46e46ed325f1c64054cda6793b295317baf212691acb683d8eb3","examples/tutorial_derive/02_crate.md":"c15606793151791bddf5763f660a913f799303e8de4c1d28334449d0d184681d","examples/tutorial_derive/02_crate.rs":"8096171c44d7582d23f3f9732c017fb09bfa697bf0fe8c9736f27f27e060e4e1","examples/tutorial_derive/03_01_flag_bool.md":"7ffa235eb4bc61aaa15d63d4301250e2a6635520c02a55aa6294afe6798f39a0","examples/tutorial_derive/03_01_flag_bool.rs":"2a71de11b6362609bd3e59e81ec8c50de0f45d76e5e14507ab243b35e576574d","examples/tutorial_derive/03_01_flag_count.md":"02e6dc26d00cc82109350ca7910e4962007b91fe82fde1c8b86ae49dc4428a76","examples/tutorial_derive/03_01_flag_count.rs":"09715f20ef0c138e9d330b412c0fc3776601dfaaf0399abbc4e853cf0dc68142","examples/tutorial_derive/03_02_option.md":"3ff91da5ee7bb987bf3e4e66ab1148973664ca9b50b9dd97d40b76f623a0f607","examples/tutorial_derive/03_02_option.rs":"4b6a052257bb74818a22d55f9251060ae82b8a79d109b8ef1c1db786e46035e6","examples/tutorial_derive/03_02_option_mult.md":"7a98b02fc3ddf9506134d6bb04d7967b234dac694c2a4e65398e69d53b0e9240","examples/tutorial_derive/03_02_option_mult.rs":"e4683aa309a1d4e301a93fb57338e33f7f64c117390e3013bdbfe5387f7f12ea","examples/tutorial_derive/03_03_positional.md":"52a5c10dccc3774a29e1fe6f7ff87d44eaee67d723404ddcbec24f32b7b0f048","examples/tutorial_derive/03_03_positional.rs":"ed20f87f79e707f0d37428f5b0bb1e3eef92c91bb8b5a240bfb96700fc9333e3","examples/tutorial_derive/03_03_positional_mult.md":"00e3fc665835a4df1190a5ecb7c854b1259ab2324966d69ac40770cde8e2dd21","examples/tutorial_derive/03_03_positional_mult.rs":"a24ab54fbd7569f41b89693ee82c583efd2278af811f7d16326063877700853c","examples/tutorial_derive/03_04_subcommands.md":"cba5801949524b8127c05364abadfd0f261b9e55c7e881337aebc76767173670","examples/tutorial_derive/03_04_subcommands.rs":"dc1676288d344d3e1c84e1cf966efd3710fd8b960d241b2983d9c0c5768d51bc","examples/tutorial_derive/03_04_subcommands_alt.rs":"6f72b64d40a6bfdd0efea7091369ed4bc211c6bece930a661c8b57db5d869611","examples/tutorial_derive/03_05_default_values.md":"b09e17bf0322311801881f53d9b86e5179163d4b05263988a79fd7d2b5c1eb79","examples/tutorial_derive/03_05_default_values.rs":"525fc5b62634c1a264896bc14349d62268870a30148f559635272b7578b15196","examples/tutorial_derive/04_01_enum.md":"fa1deb854c06f6ca921b53e9fd98eaf8ff0a641095a592552537ed74197ef801","examples/tutorial_derive/04_01_enum.rs":"20ae81993a8d8af4cebb2a6c424d2df0bda8cb9d252e7151927462857539d89c","examples/tutorial_derive/04_02_parse.md":"a87492c5d6fb9817345f67389142282394c525fbeade3a2750b84d949cba1c7e","examples/tutorial_derive/04_02_parse.rs":"25fbe9a2621cda28a108aadb22d48d09eec8b5f5e58abc22e4628ec13ddfb2c2","examples/tutorial_derive/04_02_validate.md":"8f83fdf4ccb89550c0df20eef49358cb222ca1a7404c18e3eafed6413c0e1313","examples/tutorial_derive/04_02_validate.rs":"14dceb712b19ee28ea2c5acb53f19eaa507a9c7f85aa1bdf2b88f711ff983d5a","examples/tutorial_derive/04_03_relations.md":"15172a1e5b056ee30b6ab1fbe848c71d8499b06aa74ce30219275989034c76ac","examples/tutorial_derive/04_03_relations.rs":"c6391c46ddc5ca73423f1d290b590eff8a5280ffa6a98b198cda8d256b9d2c3f","examples/tutorial_derive/04_04_custom.md":"f96f4ced9cce7e04e5150c2906cac315bce04a5319cab080917dd976cb815bdc","examples/tutorial_derive/04_04_custom.rs":"fa5082c4e895bb73eb8ed0bcf2c1e0ca84e76240392aa1d618bec5aca36a8166","examples/tutorial_derive/05_01_assert.rs":"04927db39bdecc354f88ecbe6366b565e0f1a01c8de7c78e8db717b1e847596f","examples/typed-derive.md":"6eacd8a18cf5c77f974247e00d2f60f58b6520915c9956cb7f432be2da1757d9","examples/typed-derive.rs":"ce8b7ca425bc0b3cfe6017d119cd7a54617081392cdea4830ecff1b4e5c5c8cb","src/_cookbook/cargo_example.rs":"fe7594a5233e9106a159aa1f5d5f0cde0d844356f630d55c78b8ef322327d4e5","src/_cookbook/cargo_example_derive.rs":"badf3e931ef5d5b7f5addc4912aca057ba83ee6302c43d7eeecd1661673fd407","src/_cookbook/escaped_positional.rs":"2789d8fea126355805b29e76b52c6cea4982565014087a46e0d48e4ddfbed7ab","src/_cookbook/escaped_positional_derive.rs":"802d0b672f4ed48152235d4a26a64c97fa921b361177bdd3a1a33cbac96f665d","src/_cookbook/find.rs":"6152ad5df466adc6de56bddb0f01930b4e4db1997fa972b055217cc7d6748a0a","src/_cookbook/git.rs":"372977252a22fc776e3acaa4629e964114ccd6a49b8ef334d2b6646f12e8b5ee","src/_cookbook/git_derive.rs":"4ab7c0197efda06607ca60c2a85ea743aed3494f5fe9e408d935ea0500a345fc","src/_cookbook/mod.rs":"a8f69fa55207d276471298acc7e22f2f08558dcaa826efbfe4ca8cf66ada2034","src/_cookbook/multicall_busybox.rs":"56176b4fa15e7a39c433706971d4e68aaf26ddc2a5790078b6dbe722ee13efee","src/_cookbook/multicall_hostname.rs":"907f8decf81ea4d4cbf81639ea4cd2f925eda64d4831454a7656369b65522780","src/_cookbook/pacman.rs":"863125b2d3d7931a9e4541c8ab1242b8bfcb421d8b5c604ea681efd805f68da7","src/_cookbook/repl.rs":"1393209b2cc5c203296d57c5a065b764b4318be7855e48baf16de851e250cf90","src/_cookbook/typed_derive.rs":"3d28e78cd0b068b4fcb32a7fea6244de176f2fe75dfcb59e99c33b66a7ae4864","src/_derive/_tutorial.rs":"2f2d3d359a3038f1f12d77a5de4f3df55684f636d38a94e89cf2d599ea358332","src/_derive/mod.rs":"f75a06f1499f1aff0613902649ad1b738a74cc6ff8765a112e70f8f60696be2c","src/_faq.rs":"52f274439b3608a6fea5b2d0096ee36869603afc505767fb44e7f7823162f5e0","src/_features.rs":"67d02180a23559d94d2d69079e3046845ab5bccff456e9fe020235c31d4e2c0c","src/_tutorial.rs":"1c3f0377f2a64bf97dfaa9886deac5270308cfbc8e1275b063247d26e9eeb874","src/bin/stdio-fixture.rs":"883ca169606c23808fd97259c415e9b1abe4b52248ce1fb7d29c815b316d3592","src/lib.rs":"6cf9e3fb7dd4cc59d8d26c1aeae810330d2c78c03bb53f4c10bbe39b5910807f"},"package":"5fd304a20bff958a57f04c4e96a2e7594cc4490a0e809cbd48bb6437edaa452d"} \ No newline at end of file +{"files":{"Cargo.lock":"684709c1a736c3af005dc93b5f851de8394f7b55d8c673837bc42d73993d5681","Cargo.toml":"4ad53d2295d5afb453ac1cb5f2db7f51f5cade7dea32b648d62f77b5d7f6d8f9","LICENSE-APACHE":"c6596eb7be8581c18be736c846fb9173b69eccf6ef94c5135893ec56bd92ba08","LICENSE-MIT":"6efb0476a1cc085077ed49357026d8c173bf33017278ef440f222fb9cbcb66e6","README.md":"bcb96a3aedd4da85e24e201a4922e435928b0c0a2f97fd5843d0793a54e6a09f","examples/README.md":"c5f45032ee7acda0c5f98db456cbf4f9b0362d62dc81218fcf03bcdfbd19af05","examples/cargo-example-derive.md":"66d7455f08a038872f42d9d45f9b47ebbdbf9366fafa16b749ece8ba5bdcfcce","examples/cargo-example-derive.rs":"748ba54fb553e797996014e706320b62fad645acca50565a4c6fcd40e8aa1128","examples/cargo-example.md":"60a1d0f253142de5003a9474b28a5a8324a9860fc646af6309d84594d97356bd","examples/cargo-example.rs":"2c2eda50605a5e48c2ba78083e0f545e1df2411b9efaf994c95c9a0357ecbfb1","examples/demo.md":"6c00568794ff99007ab0f08bf7e06fe521cb1f2f0fab30c219f16c6f54bf638d","examples/demo.rs":"08cdd247b47a5202de9b7df7c1f3e7e30da975e56256d930d9db0f6c36741933","examples/derive_ref/augment_args.rs":"274bbe3c91d72609289274a22330067dd0ab42eb9bc3c44c94ed6da149ed56eb","examples/derive_ref/augment_subcommands.rs":"f202fd8a836552c53bb4b33a652b577f254726334f8a72f5fac0526937ab15ef","examples/derive_ref/flatten_hand_args.rs":"d3783fdea6297ffef23939df913ece655670b617f39addfab5147dc217e70fb1","examples/derive_ref/hand_subcommand.rs":"be49b475f86862295eb4d0a00086d5874896f9a66f28cca8fcdf6548943beba7","examples/derive_ref/interop_tests.md":"aaf307e313c3926b14f1265199ab18665bb3dea723729a7e6cbf3b237fa73941","examples/escaped-positional-derive.md":"fb4b4351ceb43ef0c25048e8603dab6fdf4391b84e9b3ad9593602fa89abc572","examples/escaped-positional-derive.rs":"4fe5f9dfbd15d3efcff7ff9b214d00c189ac0592e30b297b154df789e49dbfa3","examples/escaped-positional.md":"b44e23e5706eb815e7875825be815a370f2ba38e41d7998ea762d0ef1fb2ba56","examples/escaped-positional.rs":"e1e784bb90805ef3412f002d9660c979ebbd2d59eb609ceb7f8926c0ad8e7c31","examples/find.md":"acb72e150f9feeb5d7828163f0e36ff5004ae667f6ddbb06d2838a75037177ee","examples/find.rs":"0a9824ae817345e6989ad51b7d514101ee0e842da380e5bad4019ddd2cccedd0","examples/git-derive.md":"d214127af66033e0de4f9da869eb7e6ca073e7c7d7fdf8b6792cba75d39d68e9","examples/git-derive.rs":"4b0a28ef89e2c1578a9f134325495d303663d3cfcacb900ef6efcd38ef5fca44","examples/git.md":"449a75c1e0c7b2dd948b856c81a868f6b8f0c300667b17ec5dd638c6739d2175","examples/git.rs":"8b935b4f516802a9f64654719485fbe8cfc96263e3acd23a74235c3dbdf651ab","examples/multicall-busybox.md":"b8e8a89312e2088b6dd1fac5b5b92266fda9b82c40a650dae2d41b5fcc253594","examples/multicall-busybox.rs":"0be842810003f69de33c9e65258f74a5d1ec742fb0ebc8a49fdebfecc861c408","examples/multicall-hostname.md":"1dedcdcc9927c08cebee11fa01fda7a730f5ddf5227c4902e1eb5ff847a80346","examples/multicall-hostname.rs":"cc58a924dd2e57281f36e30481a1cbc8186952adbf149f9e1e13f9c673614fd9","examples/pacman.md":"a050be1727605a4202faf69db7f991bf974bba51ce0fbd41413de68e6a4af5aa","examples/pacman.rs":"e2183dd3c60f7c3949be6f3d21c85bf8a6b2a14913b675649a770be21c764eda","examples/repl.rs":"972ed0b06962f9daf20b7cee5dd6dc873fc31747e84bce646c0e057678c653f3","examples/tutorial_builder/01_quick.md":"d2a242a6ba832cdb0a2b6f55d428d62e7048f6b7d8d8f4a75f7923da85628ca8","examples/tutorial_builder/01_quick.rs":"7921943f7b697cf9413a87d0ebf32d6db4a93b2674cb66d9ca66530626088d1f","examples/tutorial_builder/02_app_settings.md":"4e7097deb0eb8e926978ef383b0da4bda33966d4e760ac0d258cd4127a054fba","examples/tutorial_builder/02_app_settings.rs":"c050d19fa8c0ecefde73746200fb513da0dd78d904011a1c0a75835fd9c172b3","examples/tutorial_builder/02_apps.md":"3cbc7010e0214d047d98104dadb76ee02ec3c5bba868758e35aebb2fdfd0fa22","examples/tutorial_builder/02_apps.rs":"e654126b44161d5b20ce2e576a6022f027060d003e07ae74c7bbdeddd6fcb880","examples/tutorial_builder/02_crate.md":"995dc62680b9d7c1983c673bf5775c07ae96175db186b5313c0d614308569ec0","examples/tutorial_builder/02_crate.rs":"b0bdc601133bf9e566231dd6be439d0ce82b6911ca53ae4b5c1b5da62eb2acd8","examples/tutorial_builder/03_01_flag_bool.md":"326d8267ce6fcc62e95fdb19f77bdc959067e41af48c7d6e465c0eafe2db741c","examples/tutorial_builder/03_01_flag_bool.rs":"d49b30b527faa6a383b334e572d546fab5c4b298a5549842073ab42a33a05c94","examples/tutorial_builder/03_01_flag_count.md":"c34ff091d239f5861a868bda051322774340be9a63dea32cbfabe8c0cc4dfd94","examples/tutorial_builder/03_01_flag_count.rs":"a003825bc045d4d89265344cfb00082da379150e72fc5d16b33ee93ec9ec0927","examples/tutorial_builder/03_02_option.md":"f436d35a7f2aece1a30f0258f44ae09166fb4faae3b6623beb6a824d2ed234fd","examples/tutorial_builder/03_02_option.rs":"13e58e3f922ef79bb4f3cec63f84dc906bb20ea8bbd33e5ca3cb8cfce847095a","examples/tutorial_builder/03_02_option_mult.md":"c83e0f52f97f38154be30ac34d7d60b9271fd8a0dcab629929ee785d3baa07a2","examples/tutorial_builder/03_02_option_mult.rs":"bd3e522d6ff4a1a9f5849924650acf8ea8afc1f4c3ba633e45926a479f54b7c7","examples/tutorial_builder/03_03_positional.md":"dc2e13cf897e2e2d2b397a1ab739bfd290ec04f437128030eb7f6f609b910be7","examples/tutorial_builder/03_03_positional.rs":"582ffa5b056363a74d2ba966d212fbd6b00f42fe42f0e71ae95009fe75746349","examples/tutorial_builder/03_03_positional_mult.md":"f1d03ca58d9ee75ec9a4cc980006a666e2c529ab6f7deaf6bd88b3fbaf09fc07","examples/tutorial_builder/03_03_positional_mult.rs":"271a9ee04038244fdf378c6a603af9d4cb6a401d82f9e28928c2e7ad971aff10","examples/tutorial_builder/03_04_subcommands.md":"64f5899e1bfb8c5f166642db89ba1de1a7f2dc88b3ea0025b3ce5543f12a605f","examples/tutorial_builder/03_04_subcommands.rs":"a309a332004edbed6dc14b64b1ba6cc0cd42871f3c5b8da7daab772764839c68","examples/tutorial_builder/03_05_default_values.md":"c30c72c85190aaddc06a7c0ed1cf87356eb81f03284b0e9c5f47d4f233d06a00","examples/tutorial_builder/03_05_default_values.rs":"96c8bd0004cf0dc0338851ccf4ae3309ec49e61cc90f41bcf912207eac95ea18","examples/tutorial_builder/04_01_enum.md":"c89cef996c17aa909031233b283349b23427c065b634d43ee82b974f4f28d1c6","examples/tutorial_builder/04_01_enum.rs":"04795a5d702f166e6283e1d4cc7dbaabdbe85e3e941b0cbf7ae1b205de72596b","examples/tutorial_builder/04_01_possible.md":"e16ec1ee5e7a67ab040afd4c87c3ebf84e5ab229491b73f3da337160a0dd14bb","examples/tutorial_builder/04_01_possible.rs":"3d781b26d257061b55a957744c2dbd99c1d2346c151230fb18fe5f576d19585c","examples/tutorial_builder/04_02_parse.md":"d02e8e79e96c2def7a2576a5acc06ba539061a221960ce89eeca1a51e52ef317","examples/tutorial_builder/04_02_parse.rs":"fb9f82791717775b7112bc829e950db29277c5b21367d73e322a87f326678fd4","examples/tutorial_builder/04_02_validate.md":"3f9f29b3629f0d20d8ff149ec721ee67a4baad39c12e2e379d472865c6cf682f","examples/tutorial_builder/04_02_validate.rs":"a5c03e60d4e475d23c38b253bcea29a4673f9494f60359a243f09b84c34e5a2a","examples/tutorial_builder/04_03_relations.md":"cfc6a4ee6d6912566773c9c86b92466725e8eb90c5c765d7cb603f2ffd0d911a","examples/tutorial_builder/04_03_relations.rs":"f367c93ddc7db37ec002a59e12d93ad58bdcf8b4b832c45adb4f6b197db31f0f","examples/tutorial_builder/04_04_custom.md":"11581660afa0679cda9355965cf55e0a282da9184f8d2eec97a415f48878002e","examples/tutorial_builder/04_04_custom.rs":"1da17cebc5a6a2887ba8f39070a47408c7ca6f16256a071f10d10a151b5e1f40","examples/tutorial_builder/05_01_assert.rs":"c42469ab8eeaaaab6dcec816459a934fb1380d208b14055d15e3e877b375bb20","examples/tutorial_derive/01_quick.md":"345bbe0689766fd83929826bffc32c9067c8e97c42fb7390db2620931bd27834","examples/tutorial_derive/01_quick.rs":"e00b44cd37ec6c618c94886438a18b3fc4dd507bdda483d177d7e50657d00c83","examples/tutorial_derive/02_app_settings.md":"7b3ef753653be837d6c7d92c805a8238dd61fce2fc46d58b860c3771dbfec113","examples/tutorial_derive/02_app_settings.rs":"23679bfe015a35a31e48c50a46d031a424fdb3ced7d35a787a35763addd932b9","examples/tutorial_derive/02_apps.md":"166b48034c788304ce9d3f48f91dd7b1b7e18a6d66f689114ba618d79b60cc24","examples/tutorial_derive/02_apps.rs":"9dc8a352dacd46e46ed325f1c64054cda6793b295317baf212691acb683d8eb3","examples/tutorial_derive/02_crate.md":"c15606793151791bddf5763f660a913f799303e8de4c1d28334449d0d184681d","examples/tutorial_derive/02_crate.rs":"8096171c44d7582d23f3f9732c017fb09bfa697bf0fe8c9736f27f27e060e4e1","examples/tutorial_derive/03_01_flag_bool.md":"7ffa235eb4bc61aaa15d63d4301250e2a6635520c02a55aa6294afe6798f39a0","examples/tutorial_derive/03_01_flag_bool.rs":"2a71de11b6362609bd3e59e81ec8c50de0f45d76e5e14507ab243b35e576574d","examples/tutorial_derive/03_01_flag_count.md":"02e6dc26d00cc82109350ca7910e4962007b91fe82fde1c8b86ae49dc4428a76","examples/tutorial_derive/03_01_flag_count.rs":"09715f20ef0c138e9d330b412c0fc3776601dfaaf0399abbc4e853cf0dc68142","examples/tutorial_derive/03_02_option.md":"3ff91da5ee7bb987bf3e4e66ab1148973664ca9b50b9dd97d40b76f623a0f607","examples/tutorial_derive/03_02_option.rs":"4b6a052257bb74818a22d55f9251060ae82b8a79d109b8ef1c1db786e46035e6","examples/tutorial_derive/03_02_option_mult.md":"7a98b02fc3ddf9506134d6bb04d7967b234dac694c2a4e65398e69d53b0e9240","examples/tutorial_derive/03_02_option_mult.rs":"e4683aa309a1d4e301a93fb57338e33f7f64c117390e3013bdbfe5387f7f12ea","examples/tutorial_derive/03_03_positional.md":"52a5c10dccc3774a29e1fe6f7ff87d44eaee67d723404ddcbec24f32b7b0f048","examples/tutorial_derive/03_03_positional.rs":"ed20f87f79e707f0d37428f5b0bb1e3eef92c91bb8b5a240bfb96700fc9333e3","examples/tutorial_derive/03_03_positional_mult.md":"00e3fc665835a4df1190a5ecb7c854b1259ab2324966d69ac40770cde8e2dd21","examples/tutorial_derive/03_03_positional_mult.rs":"a24ab54fbd7569f41b89693ee82c583efd2278af811f7d16326063877700853c","examples/tutorial_derive/03_04_subcommands.md":"361ef1b34f84919831248a8ea141474a89efb1bc46b977ade51f61cc3dfc85a1","examples/tutorial_derive/03_04_subcommands.rs":"dc1676288d344d3e1c84e1cf966efd3710fd8b960d241b2983d9c0c5768d51bc","examples/tutorial_derive/03_04_subcommands_alt.rs":"6f72b64d40a6bfdd0efea7091369ed4bc211c6bece930a661c8b57db5d869611","examples/tutorial_derive/03_05_default_values.md":"b09e17bf0322311801881f53d9b86e5179163d4b05263988a79fd7d2b5c1eb79","examples/tutorial_derive/03_05_default_values.rs":"525fc5b62634c1a264896bc14349d62268870a30148f559635272b7578b15196","examples/tutorial_derive/04_01_enum.md":"fa1deb854c06f6ca921b53e9fd98eaf8ff0a641095a592552537ed74197ef801","examples/tutorial_derive/04_01_enum.rs":"20ae81993a8d8af4cebb2a6c424d2df0bda8cb9d252e7151927462857539d89c","examples/tutorial_derive/04_02_parse.md":"a87492c5d6fb9817345f67389142282394c525fbeade3a2750b84d949cba1c7e","examples/tutorial_derive/04_02_parse.rs":"25fbe9a2621cda28a108aadb22d48d09eec8b5f5e58abc22e4628ec13ddfb2c2","examples/tutorial_derive/04_02_validate.md":"8f83fdf4ccb89550c0df20eef49358cb222ca1a7404c18e3eafed6413c0e1313","examples/tutorial_derive/04_02_validate.rs":"14dceb712b19ee28ea2c5acb53f19eaa507a9c7f85aa1bdf2b88f711ff983d5a","examples/tutorial_derive/04_03_relations.md":"15172a1e5b056ee30b6ab1fbe848c71d8499b06aa74ce30219275989034c76ac","examples/tutorial_derive/04_03_relations.rs":"c6391c46ddc5ca73423f1d290b590eff8a5280ffa6a98b198cda8d256b9d2c3f","examples/tutorial_derive/04_04_custom.md":"f96f4ced9cce7e04e5150c2906cac315bce04a5319cab080917dd976cb815bdc","examples/tutorial_derive/04_04_custom.rs":"fa5082c4e895bb73eb8ed0bcf2c1e0ca84e76240392aa1d618bec5aca36a8166","examples/tutorial_derive/05_01_assert.rs":"04927db39bdecc354f88ecbe6366b565e0f1a01c8de7c78e8db717b1e847596f","examples/typed-derive.md":"6eacd8a18cf5c77f974247e00d2f60f58b6520915c9956cb7f432be2da1757d9","examples/typed-derive.rs":"ce8b7ca425bc0b3cfe6017d119cd7a54617081392cdea4830ecff1b4e5c5c8cb","src/_cookbook/cargo_example.rs":"fe7594a5233e9106a159aa1f5d5f0cde0d844356f630d55c78b8ef322327d4e5","src/_cookbook/cargo_example_derive.rs":"badf3e931ef5d5b7f5addc4912aca057ba83ee6302c43d7eeecd1661673fd407","src/_cookbook/escaped_positional.rs":"2789d8fea126355805b29e76b52c6cea4982565014087a46e0d48e4ddfbed7ab","src/_cookbook/escaped_positional_derive.rs":"802d0b672f4ed48152235d4a26a64c97fa921b361177bdd3a1a33cbac96f665d","src/_cookbook/find.rs":"6152ad5df466adc6de56bddb0f01930b4e4db1997fa972b055217cc7d6748a0a","src/_cookbook/git.rs":"372977252a22fc776e3acaa4629e964114ccd6a49b8ef334d2b6646f12e8b5ee","src/_cookbook/git_derive.rs":"4ab7c0197efda06607ca60c2a85ea743aed3494f5fe9e408d935ea0500a345fc","src/_cookbook/mod.rs":"a8f69fa55207d276471298acc7e22f2f08558dcaa826efbfe4ca8cf66ada2034","src/_cookbook/multicall_busybox.rs":"56176b4fa15e7a39c433706971d4e68aaf26ddc2a5790078b6dbe722ee13efee","src/_cookbook/multicall_hostname.rs":"907f8decf81ea4d4cbf81639ea4cd2f925eda64d4831454a7656369b65522780","src/_cookbook/pacman.rs":"863125b2d3d7931a9e4541c8ab1242b8bfcb421d8b5c604ea681efd805f68da7","src/_cookbook/repl.rs":"1393209b2cc5c203296d57c5a065b764b4318be7855e48baf16de851e250cf90","src/_cookbook/typed_derive.rs":"3d28e78cd0b068b4fcb32a7fea6244de176f2fe75dfcb59e99c33b66a7ae4864","src/_derive/_tutorial/chapter_0.rs":"830267bbb1b54cba4dbdec887877e9a2444dfa525896810c1a982bbb1c3c3056","src/_derive/_tutorial/chapter_1.rs":"4644a756f76bdf37b40296f3e80be0a2c33867c710e9d87e799d16ba1772c10e","src/_derive/_tutorial/chapter_2.rs":"e11c39bdb68e5d5c7791b3c1a30fddd7a24c6ddb18c94f4dc8b67ef2e96113a4","src/_derive/_tutorial/chapter_3.rs":"e2e1e95a8824a73e719651e485e95b72be7ee8730fd6f8744beef77875ceb594","src/_derive/_tutorial/chapter_4.rs":"427ccc31481d0884de70d4bed8ce98d8c602cdb1028cd97196e69ba3fbb0de90","src/_derive/_tutorial/chapter_5.rs":"7d723bfe574f9c38418b17883b7fbaa10f4babcf78d6443f7075a4ad923b5bd5","src/_derive/_tutorial/mod.rs":"9253795ea95033c1271b340fcb05ff0da52cc76b820e8a0c9083e63ca3ef7194","src/_derive/mod.rs":"f75a06f1499f1aff0613902649ad1b738a74cc6ff8765a112e70f8f60696be2c","src/_faq.rs":"52f274439b3608a6fea5b2d0096ee36869603afc505767fb44e7f7823162f5e0","src/_features.rs":"1ad6c43256efcd1fa9b42f837e79f252412d6691332b5317081e31a29a717a76","src/_tutorial/chapter_0.rs":"14ec920659bcda23dd4f392a987a6961bb7c04d2c01655dc2bc9c818f0e32f7f","src/_tutorial/chapter_1.rs":"719d6e4316d3496046077bf1cea91ee2c4444f100f6837d60031e1c624876202","src/_tutorial/chapter_2.rs":"0eb36348ab64c6560d4d0eb562f9f0fb02b94ccd58837efd3e64bb3092aee717","src/_tutorial/chapter_3.rs":"6f336c84909e809283309706239ba56a03ee23d13aa95e9b4eeb4d314ed50f87","src/_tutorial/chapter_4.rs":"beae5be9b371fb9139421ce668a27304c64beb78e5ab6e4b3c624d849f364850","src/_tutorial/chapter_5.rs":"e85e08d4d9daf0f7f23a6b3b1f4fc612d3b910d370836883f262ec11d8634d23","src/_tutorial/mod.rs":"cb73f13e7c8b006185a8323580f0495e1580047c426dd6d515afeb40d69bfaef","src/bin/stdio-fixture.rs":"87d1028fb4a3c8fb887586ea962a7b791f09216d1c944f4906df7a3e3b5e3e02","src/lib.rs":"083ce57674d79a5494bddac3554a4f8e608c8ce4624d10b398a78b1502250663"},"package":"d04704f56c2cde07f43e8e2c154b43f216dc5c92fc98ada720177362f953b956"} \ No newline at end of file diff --git a/vendor/clap/Cargo.lock b/vendor/clap/Cargo.lock index 383d18e4a..98f743cec 100644 --- a/vendor/clap/Cargo.lock +++ b/vendor/clap/Cargo.lock @@ -19,30 +19,29 @@ checksum = "f26201604c87b1e01bd3d98f8d5d9a8fcbb815e8cedb41ffccbeb4bf593a35fe" [[package]] name = "anstream" -version = "0.3.0" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9e579a7752471abc2a8268df8b20005e3eadd975f585398f17efcfd8d4927371" +checksum = "bff2cf94a3dbe2d57cbd56485e1bd7436455058034d6c2d47be51d4e5e4bc6ab" dependencies = [ "anstyle", "anstyle-parse", "anstyle-query", "anstyle-wincon", "colorchoice", - "is-terminal", "utf8parse", ] [[package]] name = "anstyle" -version = "1.0.0" +version = "1.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41ed9a86bf92ae6580e0a31281f65a1b1d867c0cc68d5346e2ae128dddfa6a7d" +checksum = "15c4c2c83f81532e5845a733998b6971faca23490340a418e9b72a3ec9de12ea" [[package]] name = "anstyle-parse" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e765fd216e48e067936442276d1d57399e37bce53c264d6fefbe298080cb57ee" +checksum = "938874ff5980b03a87c5524b3ae5b59cf99b1d6bc836848df7bc5ada9643c333" dependencies = [ "utf8parse", ] @@ -53,17 +52,17 @@ version = "1.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b" dependencies = [ - "windows-sys 0.48.0", + "windows-sys", ] [[package]] name = "anstyle-wincon" -version = "1.0.0" +version = "3.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bcd8291a340dd8ac70e18878bc4501dd7b4ff970cfa21c207d36ece51ea88fd" +checksum = "0238ca56c96dfa37bdf7c373c8886dd591322500aceeeccdb2216fe06dc2f796" dependencies = [ "anstyle", - "windows-sys 0.48.0", + "windows-sys", ] [[package]] @@ -98,21 +97,18 @@ dependencies = [ [[package]] name = "bitflags" -version = "1.3.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" - -[[package]] -name = "bitflags" -version = "2.3.3" +version = "2.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "630be753d4e58660abd17930c71b647fe46c27ea6b63cc59e1e3851406972e42" +checksum = "b4682ae6287fcf752ecaabbfcc7b6f9b72aa33933dc23a554d853aea8eea8635" [[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 = "cfg-if" @@ -122,12 +118,11 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd" [[package]] name = "clap" -version = "4.3.19" +version = "4.4.6" dependencies = [ "clap_builder", "clap_derive", "humantime", - "once_cell", "rustversion", "shlex", "snapbox", @@ -139,15 +134,14 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.3.19" +version = "4.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "01c6a3f08f1fe5662a35cfe393aec09c4df95f60ee93b7556505260f75eee9e1" +checksum = "0e231faeaca65ebd1ea3c737966bf858971cd38c3849107aa3ea7de90a804e45" dependencies = [ "anstream", "anstyle", "backtrace", "clap_lex", - "once_cell", "strsim", "terminal_size", "unicase", @@ -156,9 +150,9 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.3.12" +version = "4.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54a9bb5758fc5dfe728d1019941681eccaf0cf8a4189b692a0ee2f2ecf90a050" +checksum = "0862016ff20d69b84ef8247369fabf5c008a7417002411897d40ee1f4532b873" dependencies = [ "heck", "proc-macro2", @@ -229,24 +223,13 @@ checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797" [[package]] name = "errno" -version = "0.2.8" +version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f639046355ee4f37944e44f60642c6f3a7efa3cf6b78c78a0d989a8ce6c396a1" +checksum = "6b30f669a7961ef1631673d2766cc92f52d64f7ef354d4fe0ddfd30ed52f0f4f" dependencies = [ "errno-dragonfly", "libc", - "winapi", -] - -[[package]] -name = "errno" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4bcfec3a70f97c962c307b2d2c56e358cf1d00b558d74262b5f929ee8cc7e73a" -dependencies = [ - "errno-dragonfly", - "libc", - "windows-sys 0.48.0", + "windows-sys", ] [[package]] @@ -291,9 +274,9 @@ checksum = "8a9ee70c43aaf417c914396645a0fa852624801b24ebb7ae78fe8272889ac888" [[package]] name = "heck" -version = "0.4.0" +version = "0.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2540771e65fc8cb83cd6e8a237f70c319bd5c29f78ed1084ba5d50eeac86f7f9" +checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" [[package]] name = "hermit-abi" @@ -304,12 +287,6 @@ dependencies = [ "libc", ] -[[package]] -name = "hermit-abi" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286" - [[package]] name = "humantime" version = "2.1.0" @@ -336,27 +313,6 @@ dependencies = [ "hashbrown", ] -[[package]] -name = "io-lifetimes" -version = "1.0.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46112a93252b123d31a119a8d1a1ac19deac4fac6e0e8b0df58f0d4e5870e63c" -dependencies = [ - "libc", - "windows-sys 0.42.0", -] - -[[package]] -name = "is-terminal" -version = "0.4.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "24fddda5af7e54bf7da53067d6e802dbcc381d0a8eef629df528e3ebf68755cb" -dependencies = [ - "hermit-abi 0.3.1", - "rustix 0.38.1", - "windows-sys 0.48.0", -] - [[package]] name = "itoa" version = "1.0.9" @@ -371,15 +327,9 @@ checksum = "b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3" [[package]] name = "linux-raw-sys" -version = "0.1.3" +version = "0.4.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f9f08d8963a6c613f4b1a78f4f4a4dbfadf8e6545b2d72861731e4858b8b47f" - -[[package]] -name = "linux-raw-sys" -version = "0.4.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "09fc20d2ca12cb9f044c93e3bd6d32d523e6e2ec3db4f7b2939cd99026ecd3f0" +checksum = "57bcfdad1b858c2db7c38303a6d2ad4dfaf5eb53dfeb0910128b2c26d6158503" [[package]] name = "log" @@ -426,7 +376,7 @@ version = "1.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f6058e64324c71e02bc2b150e4f3bc8286db6c83092132ffa3f6b1eab0f9def5" dependencies = [ - "hermit-abi 0.1.19", + "hermit-abi", "libc", ] @@ -441,9 +391,9 @@ dependencies = [ [[package]] name = "once_cell" -version = "1.17.1" +version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3" +checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" [[package]] name = "os_pipe" @@ -452,23 +402,23 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0ae859aa07428ca9a929b936690f8b12dc5f11dd8c6992a18ca93919f28bc177" dependencies = [ "libc", - "windows-sys 0.48.0", + "windows-sys", ] [[package]] name = "proc-macro2" -version = "1.0.58" +version = "1.0.66" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa1fb82fc0c281dd9671101b66b771ebbe1eaf967b96ac8740dcba4b70005ca8" +checksum = "18fb31db3f9bddb2ea821cde30a9f70117e3f119938b5ee630b7403aa6e2ead9" dependencies = [ "unicode-ident", ] [[package]] name = "quote" -version = "1.0.26" +version = "1.0.32" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4424af4bf778aae2051a77b60283332f386554255d722233d09fbfc7e30da2fc" +checksum = "50f3b39ccfb720540debaa0164757101c08ecb8d326b15358ce76a62c7e85965" dependencies = [ "proc-macro2", ] @@ -503,36 +453,22 @@ checksum = "7ef03e0a2b150c7a90d01faf6254c9c48a41e95fb2a8c2ac1c6f0d2b9aefc342" [[package]] name = "rustix" -version = "0.36.4" +version = "0.38.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb93e85278e08bb5788653183213d3a60fc242b10cb9be96586f5a73dcb67c23" +checksum = "19ed4fa021d81c8392ce04db050a3da9a60299050b7ae1cf482d862b54a7218f" dependencies = [ - "bitflags 1.3.2", - "errno 0.2.8", - "io-lifetimes", + "bitflags", + "errno", "libc", - "linux-raw-sys 0.1.3", - "windows-sys 0.42.0", -] - -[[package]] -name = "rustix" -version = "0.38.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fbc6396159432b5c8490d4e301d8c705f61860b8b6c863bf79942ce5401968f3" -dependencies = [ - "bitflags 2.3.3", - "errno 0.3.1", - "libc", - "linux-raw-sys 0.4.3", - "windows-sys 0.48.0", + "linux-raw-sys", + "windows-sys", ] [[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" @@ -548,18 +484,18 @@ checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd" [[package]] name = "serde" -version = "1.0.158" +version = "1.0.180" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "771d4d9c4163ee138805e12c710dd365e4f44be8be0503cb1bb9eb989425d9c9" +checksum = "0ea67f183f058fe88a4e3ec6e2788e003840893b91bac4559cabedd00863b3ed" dependencies = [ "serde_derive", ] [[package]] name = "serde_derive" -version = "1.0.158" +version = "1.0.180" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e801c1712f48475582b7696ac71e0ca34ebb30e09338425384269d9717c62cad" +checksum = "24e744d7782b686ab3b73267ef05697159cc0e5abbed3f47f9933165e5219036" dependencies = [ "proc-macro2", "quote", @@ -568,9 +504,9 @@ dependencies = [ [[package]] name = "serde_json" -version = "1.0.87" +version = "1.0.104" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6ce777b7b150d76b9cf60d28b55f5847135a003f7d7350c6be7a773508ce7d45" +checksum = "076066c5f1078eac5b722a31827a8832fe108bed65dfa75e233c89f8206e976c" dependencies = [ "itoa", "ryu", @@ -600,9 +536,9 @@ checksum = "62ac7f900db32bf3fd12e0117dd3dc4da74bc52ebaac97f39668446d89694803" [[package]] name = "snapbox" -version = "0.4.11" +version = "0.4.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f6bccd62078347f89a914e3004d94582e13824d4e3d8a816317862884c423835" +checksum = "7b439536a42c43be148b610c7f7f968fb79a457254910a9cb20900da73cd3271" dependencies = [ "anstream", "anstyle", @@ -613,14 +549,14 @@ dependencies = [ "similar", "snapbox-macros", "wait-timeout", - "windows-sys 0.45.0", + "windows-sys", ] [[package]] name = "snapbox-macros" -version = "0.3.4" +version = "0.3.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "eaaf09df9f0eeae82be96290918520214530e738a7fe5a351b0f24cf77c0ca31" +checksum = "ed1559baff8a696add3322b9be3e940d433e7bb4e38d79017205fd37ff28b28e" dependencies = [ "anstream", ] @@ -639,9 +575,9 @@ checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" [[package]] name = "syn" -version = "2.0.16" +version = "2.0.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a6f671d4b5ffdb8eadec19c0ae67fe2639df8684bd7bc4b83d986b8db549cf01" +checksum = "04361975b3f5e348b2189d8dc55bc942f278b2d482a6a0365de5bdd62d351567" dependencies = [ "proc-macro2", "quote", @@ -659,12 +595,12 @@ dependencies = [ [[package]] name = "terminal_size" -version = "0.2.3" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cb20089a8ba2b69debd491f8d2d023761cbf196e999218c591fa1e7e15a21907" +checksum = "21bebf2b7c9e0a515f6e0f8c51dc0f8e4696391e6f1ff30379559f8365fb0df7" dependencies = [ - "rustix 0.36.4", - "windows-sys 0.42.0", + "rustix", + "windows-sys", ] [[package]] @@ -691,9 +627,9 @@ dependencies = [ [[package]] name = "trybuild" -version = "1.0.80" +version = "1.0.83" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "501dbdbb99861e4ab6b60eb6a7493956a9defb644fd034bc4a5ef27c693c8a3a" +checksum = "6df60d81823ed9c520ee897489573da4b1d79ffbe006b8134f46de1a1aa03555" dependencies = [ "basic-toml", "glob", @@ -706,9 +642,9 @@ dependencies = [ [[package]] name = "trycmd" -version = "0.14.16" +version = "0.14.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2925e71868a12b173c1eb166018c2d2f9dfaedfcaec747bdb6ea2246785d258e" +checksum = "a5bff680f217f2c7cc246aa5313ef9c1802449b1b8f859d28765355fda1c421f" dependencies = [ "glob", "humantime", @@ -834,152 +770,71 @@ version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f" -[[package]] -name = "windows-sys" -version = "0.42.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7" -dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", -] - -[[package]] -name = "windows-sys" -version = "0.45.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0" -dependencies = [ - "windows-targets 0.42.2", -] - [[package]] name = "windows-sys" version = "0.48.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9" dependencies = [ - "windows-targets 0.48.0", + "windows-targets", ] [[package]] name = "windows-targets" -version = "0.42.2" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071" +checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c" dependencies = [ - "windows_aarch64_gnullvm 0.42.2", - "windows_aarch64_msvc 0.42.2", - "windows_i686_gnu 0.42.2", - "windows_i686_msvc 0.42.2", - "windows_x86_64_gnu 0.42.2", - "windows_x86_64_gnullvm 0.42.2", - "windows_x86_64_msvc 0.42.2", -] - -[[package]] -name = "windows-targets" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7b1eb6f0cd7c80c79759c929114ef071b87354ce476d9d94271031c0497adfd5" -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", + "windows_aarch64_msvc", + "windows_i686_gnu", + "windows_i686_msvc", + "windows_x86_64_gnu", + "windows_x86_64_gnullvm", + "windows_x86_64_msvc", ] [[package]] name = "windows_aarch64_gnullvm" -version = "0.42.2" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8" - -[[package]] -name = "windows_aarch64_gnullvm" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc" +checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_msvc" -version = "0.42.2" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43" - -[[package]] -name = "windows_aarch64_msvc" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3" +checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_i686_gnu" -version = "0.42.2" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f" - -[[package]] -name = "windows_i686_gnu" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241" +checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060" - -[[package]] -name = "windows_i686_msvc" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00" - -[[package]] -name = "windows_x86_64_gnu" -version = "0.42.2" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36" +checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[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" -version = "0.42.2" +version = "0.48.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3" - -[[package]] -name = "windows_x86_64_gnullvm" -version = "0.48.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953" - -[[package]] -name = "windows_x86_64_msvc" -version = "0.42.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0" +checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[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 = "winnow" diff --git a/vendor/clap/Cargo.toml b/vendor/clap/Cargo.toml index ef15a3e3f..980d42a79 100644 --- a/vendor/clap/Cargo.toml +++ b/vendor/clap/Cargo.toml @@ -11,9 +11,9 @@ [package] edition = "2021" -rust-version = "1.64.0" +rust-version = "1.70.0" name = "clap" -version = "4.3.19" +version = "4.4.6" include = [ "build.rs", "src/**/*", @@ -367,37 +367,33 @@ path = "examples/derive_ref/flatten_hand_args.rs" required-features = ["derive"] [dependencies.clap_builder] -version = "=4.3.19" +version = "=4.4.6" default-features = false [dependencies.clap_derive] -version = "=4.3.12" -optional = true - -[dependencies.once_cell] -version = "1.12.0" +version = "=4.4.2" optional = true [dev-dependencies.humantime] version = "2.1.0" [dev-dependencies.rustversion] -version = "1.0.12" +version = "1.0.14" [dev-dependencies.shlex] version = "1.1.0" [dev-dependencies.snapbox] -version = "0.4.11" +version = "0.4.13" [dev-dependencies.static_assertions] version = "1.1.0" [dev-dependencies.trybuild] -version = "1.0.80" +version = "1.0.83" [dev-dependencies.trycmd] -version = "0.14.16" +version = "0.14.18" features = [ "color-auto", "diff", @@ -427,10 +423,7 @@ deprecated = [ "clap_builder/deprecated", "clap_derive?/deprecated", ] -derive = [ - "dep:clap_derive", - "dep:once_cell", -] +derive = ["dep:clap_derive"] env = ["clap_builder/env"] error-context = ["clap_builder/error-context"] help = ["clap_builder/help"] diff --git a/vendor/clap/examples/tutorial_builder/03_04_subcommands.md b/vendor/clap/examples/tutorial_builder/03_04_subcommands.md index 7c73add71..a32b77685 100644 --- a/vendor/clap/examples/tutorial_builder/03_04_subcommands.md +++ b/vendor/clap/examples/tutorial_builder/03_04_subcommands.md @@ -47,7 +47,8 @@ Options: ``` -Because we set [`Command::propagate_version`][crate::Command::propagate_version]: +Since we specified [`Command::propagate_version`][crate::Command::propagate_version], the `--version` flag +is available in all subcommands: ```console $ 03_04_subcommands --version clap [..] diff --git a/vendor/clap/examples/tutorial_derive/03_04_subcommands.md b/vendor/clap/examples/tutorial_derive/03_04_subcommands.md index 1fbac8fa3..4d57dfeee 100644 --- a/vendor/clap/examples/tutorial_derive/03_04_subcommands.md +++ b/vendor/clap/examples/tutorial_derive/03_04_subcommands.md @@ -29,7 +29,8 @@ $ 03_04_subcommands_derive add bob ``` -Because we used `command: Commands` instead of `command: Option`: +When specifying commands with `command: Commands`, they are required. +Alternatively, you could do `command: Option` to make it optional. ```console $ 03_04_subcommands_derive ? failed @@ -47,7 +48,8 @@ Options: ``` -Because we added `#[command(propagate_version = true)]`: +Since we specified [`#[command(propagate_version = true)]`][crate::Command::propagate_version], +the `--version` flag is available in all subcommands: ```console $ 03_04_subcommands_derive --version clap [..] diff --git a/vendor/clap/src/_derive/_tutorial.rs b/vendor/clap/src/_derive/_tutorial.rs deleted file mode 100644 index 2a9145fa2..000000000 --- a/vendor/clap/src/_derive/_tutorial.rs +++ /dev/null @@ -1,250 +0,0 @@ -// Contributing -// -// New example code: -// - Please update the corresponding section in the derive tutorial -// - Building: They must be added to `Cargo.toml` with the appropriate `required-features`. -// - Testing: Ensure there is a markdown file with [trycmd](https://docs.rs/trycmd) syntax -// -// See also the general CONTRIBUTING - -//! # Documentation: Derive Tutorial -//! -//! 1. [Quick Start](#quick-start) -//! 2. [Configuring the Parser](#configuring-the-parser) -//! 3. [Adding Arguments](#adding-arguments) -//! 1. [Positionals](#positionals) -//! 2. [Options](#options) -//! 3. [Flags](#flags) -//! 4. [Subcommands](#subcommands) -//! 5. [Defaults](#defaults) -//! 4. Validation -//! 1. [Enumerated values](#enumerated-values) -//! 2. [Validated values](#validated-values) -//! 3. [Argument Relations](#argument-relations) -//! 4. [Custom Validation](#custom-validation) -//! 5. [Testing](#testing) -//! 6. [Next Steps](#next-steps) -//! -//! See also -//! - [FAQ: When should I use the builder vs derive APIs?][crate::_faq#when-should-i-use-the-builder-vs-derive-apis] -//! - The [cookbook][crate::_cookbook] for more application-focused examples -//! -//! ## Quick Start -//! -//! You can create an application declaratively with a `struct` and some -//! attributes. -//! -//! First, ensure `clap` is available with the [`derive` feature flag][crate::_features]: -//! ```console -//! $ cargo add clap --features derive -//! ``` -//! -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/01_quick.rs")] -//! ``` -//! -#![doc = include_str!("../../examples/tutorial_derive/01_quick.md")] -//! -//! ## Configuring the Parser -//! -//! You use derive [`Parser`][crate::Parser] to start building a parser. -//! -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/02_apps.rs")] -//! ``` -//! -#![doc = include_str!("../../examples/tutorial_derive/02_apps.md")] -//! -//! You can use [`#[command(author, version, about)]` attribute defaults][super#command-attributes] to fill these fields in from your `Cargo.toml` file. -//! -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/02_crate.rs")] -//! ``` -#![doc = include_str!("../../examples/tutorial_derive/02_crate.md")] -//! -//! You can use attributes to change the application level behavior of clap. Any [`Command`][crate::Command] builder function can be used as an attribute, like [`Command::next_line_help`]. -//! -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/02_app_settings.rs")] -//! ``` -#![doc = include_str!("../../examples/tutorial_derive/02_app_settings.md")] -//! -//! ## Adding Arguments -//! -//! ### Positionals -//! -//! You can have users specify values by their position on the command-line: -//! -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/03_03_positional.rs")] -//! ``` -#![doc = include_str!("../../examples/tutorial_derive/03_03_positional.md")] -//! -//! Note that the [default `ArgAction` is `Set`][super#arg-types]. To -//! accept multiple values, override the [action][Arg::action] with [`Append`][crate::ArgAction::Append] via `Vec`: -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/03_03_positional_mult.rs")] -//! ``` -#![doc = include_str!("../../examples/tutorial_derive/03_03_positional_mult.md")] -//! -//! ### Options -//! -//! You can name your arguments with a flag: -//! - Order doesn't matter -//! - They can be optional -//! - Intent is clearer -//! -//! The [`#[arg(short = 'n')]`][Arg::short] and [`#[arg(long = "name")]`][Arg::long] attributes that define -//! the flags are [`Arg`][crate::Args] methods that are derived from the field name when no value -//! is specified ([`#[arg(short)]` and `#[arg(long)]`][super#arg-attributes]). -//! -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/03_02_option.rs")] -//! ``` -#![doc = include_str!("../../examples/tutorial_derive/03_02_option.md")] -//! -//! Note that the [default `ArgAction` is `Set`][super#arg-types]. To -//! accept multiple occurrences, override the [action][Arg::action] with [`Append`][crate::ArgAction::Append] via `Vec`: -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/03_02_option_mult.rs")] -//! ``` -#![doc = include_str!("../../examples/tutorial_derive/03_02_option_mult.md")] -//! -//! ### Flags -//! -//! Flags can also be switches that can be on/off: -//! -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/03_01_flag_bool.rs")] -//! ``` -#![doc = include_str!("../../examples/tutorial_derive/03_01_flag_bool.md")] -//! -//! Note that the [default `ArgAction` for a `bool` field is -//! `SetTrue`][super#arg-types]. To accept multiple flags, override the [action][Arg::action] with -//! [`Count`][crate::ArgAction::Count]: -//! -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/03_01_flag_count.rs")] -//! ``` -#![doc = include_str!("../../examples/tutorial_derive/03_01_flag_count.md")] -//! -//! ### Subcommands -//! -//! Subcommands are derived with `#[derive(Subcommand)]` and be added via [`#[command(subcommand)]` attribute][super#command-attributes]. Each -//! instance of a [Subcommand][crate::Subcommand] can have its own version, author(s), Args, and even its own -//! subcommands. -//! -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/03_04_subcommands.rs")] -//! ``` -//! We used a struct-variant to define the `add` subcommand. -//! Alternatively, you can use a struct for your subcommand's arguments: -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/03_04_subcommands_alt.rs")] -//! ``` -//! -#![doc = include_str!("../../examples/tutorial_derive/03_04_subcommands.md")] -//! -//! ### Defaults -//! -//! We've previously showed that arguments can be [`required`][crate::Arg::required] or optional. -//! When optional, you work with a `Option` and can `unwrap_or`. Alternatively, you can -//! set [`#[arg(default_value_t)]`][super#arg-attributes]. -//! -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/03_05_default_values.rs")] -//! ``` -#![doc = include_str!("../../examples/tutorial_derive/03_05_default_values.md")] -//! -//! ## Validation -//! -//! An appropriate default parser/validator will be selected for the field's type. See -//! [`value_parser!`][crate::value_parser!] for more details. -//! -//! ### Enumerated values -//! -//! For example, if you have arguments of specific values you want to test for, you can derive -//! [`ValueEnum`][super#valueenum-attributes] -//! (any [`PossibleValue`] builder function can be used as variant attributes). -//! -//! This allows you specify the valid values for that argument. If the user does not use one of -//! those specific values, they will receive a graceful exit with error message informing them -//! of the mistake, and what the possible valid values are -//! -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/04_01_enum.rs")] -//! ``` -#![doc = include_str!("../../examples/tutorial_derive/04_01_enum.md")] -//! -//! ### Validated values -//! -//! More generally, you can validate and parse into any data type with [`Arg::value_parser`]. -//! -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/04_02_parse.rs")] -//! ``` -#![doc = include_str!("../../examples/tutorial_derive/04_02_parse.md")] -//! -//! A [custom parser][TypedValueParser] can be used to improve the error messages or provide additional validation: -//! -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/04_02_validate.rs")] -//! ``` -#![doc = include_str!("../../examples/tutorial_derive/04_02_validate.md")] -//! -//! See [`Arg::value_parser`][crate::Arg::value_parser] for more details. -//! -//! ### Argument Relations -//! -//! You can declare dependencies or conflicts between [`Arg`][crate::Arg]s or even -//! [`ArgGroup`][crate::ArgGroup]s. -//! -//! [`ArgGroup`][crate::ArgGroup]s make it easier to declare relations instead of having to list -//! each individually, or when you want a rule to apply "any but not all" arguments. -//! -//! Perhaps the most common use of [`ArgGroup`][crate::ArgGroup]s is to require one and *only* one -//! argument to be present out of a given set. Imagine that you had multiple arguments, and you -//! want one of them to be required, but making all of them required isn't feasible because perhaps -//! they conflict with each other. -//! -//! [`ArgGroup`][crate::ArgGroup]s are automatically created for a `struct` with its -//! [`ArgGroup::id`][crate::ArgGroup::id] being the struct's name. -//! -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/04_03_relations.rs")] -//! ``` -#![doc = include_str!("../../examples/tutorial_derive/04_03_relations.md")] -//! -//! ### Custom Validation -//! -//! As a last resort, you can create custom errors with the basics of clap's formatting. -//! -//! ```rust -#![doc = include_str!("../../examples/tutorial_derive/04_04_custom.rs")] -//! ``` -#![doc = include_str!("../../examples/tutorial_derive/04_04_custom.md")] -//! -//! ## Testing -//! -//! clap reports most development errors as `debug_assert!`s. Rather than checking every -//! subcommand, you should have a test that calls -//! [`Command::debug_assert`][crate::Command::debug_assert]: -//! ```rust,no_run -#![doc = include_str!("../../examples/tutorial_derive/05_01_assert.rs")] -//! ``` -//! -//! ## Next Steps -//! -//! - [Cookbook][crate::_cookbook] for application-focused examples -//! - Explore more features in the [Derive reference][super] -//! - See also [`Command`], [`Arg`], [`ArgGroup`], and [`PossibleValue`] builder functions which -//! can be used as attributes -//! -//! For support, see [Discussions](https://github.com/clap-rs/clap/discussions) - -#![allow(unused_imports)] -use crate::builder::Arg; -use crate::builder::ArgGroup; -use crate::builder::Command; -use crate::builder::PossibleValue; -use crate::builder::TypedValueParser; diff --git a/vendor/clap/src/_derive/_tutorial/chapter_0.rs b/vendor/clap/src/_derive/_tutorial/chapter_0.rs new file mode 100644 index 000000000..d6806949c --- /dev/null +++ b/vendor/clap/src/_derive/_tutorial/chapter_0.rs @@ -0,0 +1,25 @@ +//! ## Quick Start +//! +//! You can create an application declaratively with a `struct` and some +//! attributes. +//! +//! First, ensure `clap` is available with the [`derive` feature flag][crate::_features]: +//! ```console +//! $ cargo add clap --features derive +//! ``` +//! +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/01_quick.rs")] +//! ``` +//! +#![doc = include_str!("../../../examples/tutorial_derive/01_quick.md")] +//! +//! See also +//! - [FAQ: When should I use the builder vs derive APIs?][crate::_faq#when-should-i-use-the-builder-vs-derive-apis] +//! - The [cookbook][crate::_cookbook] for more application-focused examples + +#![allow(unused_imports)] +use crate::builder::*; + +pub use super::chapter_1 as next; +pub use crate::_tutorial as table_of_contents; diff --git a/vendor/clap/src/_derive/_tutorial/chapter_1.rs b/vendor/clap/src/_derive/_tutorial/chapter_1.rs new file mode 100644 index 000000000..b58ae6e0c --- /dev/null +++ b/vendor/clap/src/_derive/_tutorial/chapter_1.rs @@ -0,0 +1,29 @@ +//! ## Configuring the Parser +//! +//! You use derive [`Parser`][crate::Parser] to start building a parser. +//! +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/02_apps.rs")] +//! ``` +//! +#![doc = include_str!("../../../examples/tutorial_derive/02_apps.md")] +//! +//! You can use [`#[command(author, version, about)]` attribute defaults][super#command-attributes] on the struct to fill these fields in from your `Cargo.toml` file. +//! +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/02_crate.rs")] +//! ``` +#![doc = include_str!("../../../examples/tutorial_derive/02_crate.md")] +//! +//! You can use `#[command]` attributes on the struct to change the application level behavior of clap. Any [`Command`][crate::Command] builder function can be used as an attribute, like [`Command::next_line_help`]. +//! +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/02_app_settings.rs")] +//! ``` +#![doc = include_str!("../../../examples/tutorial_derive/02_app_settings.md")] +#![allow(unused_imports)] +use crate::builder::*; + +pub use super::chapter_0 as previous; +pub use super::chapter_2 as next; +pub use crate::_tutorial as table_of_contents; diff --git a/vendor/clap/src/_derive/_tutorial/chapter_2.rs b/vendor/clap/src/_derive/_tutorial/chapter_2.rs new file mode 100644 index 000000000..95d02f851 --- /dev/null +++ b/vendor/clap/src/_derive/_tutorial/chapter_2.rs @@ -0,0 +1,103 @@ +//! ## Adding Arguments +//! +//! 1. [Positionals](#positionals) +//! 2. [Options](#options) +//! 3. [Flags](#flags) +//! 4. [Subcommands](#subcommands) +//! 5. [Defaults](#defaults) +//! +//! Arguments are inferred from the fields of your struct. +//! +//! ### Positionals +//! +//! You can have users specify values by their position on the command-line: +//! +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/03_03_positional.rs")] +//! ``` +#![doc = include_str!("../../../examples/tutorial_derive/03_03_positional.md")] +//! +//! Note that the [default `ArgAction` is `Set`][super#arg-types]. To +//! accept multiple values, override the [action][Arg::action] with [`Append`][crate::ArgAction::Append] via `Vec`: +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/03_03_positional_mult.rs")] +//! ``` +#![doc = include_str!("../../../examples/tutorial_derive/03_03_positional_mult.md")] +//! +//! ### Options +//! +//! You can name your arguments with a flag: +//! - Order doesn't matter +//! - They can be optional +//! - Intent is clearer +//! +//! To specify the flags for an argument, you can use [`#[arg(short = 'n')]`][Arg::short] and/or +//! [`#[arg(long = "name")]`][Arg::long] attributes on a field. When no value is given (e.g. +//! `#[arg(short)]`), the flag is inferred from the field's name. +//! +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/03_02_option.rs")] +//! ``` +#![doc = include_str!("../../../examples/tutorial_derive/03_02_option.md")] +//! +//! Note that the [default `ArgAction` is `Set`][super#arg-types]. To +//! accept multiple occurrences, override the [action][Arg::action] with [`Append`][crate::ArgAction::Append] via `Vec`: +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/03_02_option_mult.rs")] +//! ``` +#![doc = include_str!("../../../examples/tutorial_derive/03_02_option_mult.md")] +//! +//! ### Flags +//! +//! Flags can also be switches that can be on/off: +//! +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/03_01_flag_bool.rs")] +//! ``` +#![doc = include_str!("../../../examples/tutorial_derive/03_01_flag_bool.md")] +//! +//! Note that the [default `ArgAction` for a `bool` field is +//! `SetTrue`][super#arg-types]. To accept multiple flags, override the [action][Arg::action] with +//! [`Count`][crate::ArgAction::Count]: +//! +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/03_01_flag_count.rs")] +//! ``` +#![doc = include_str!("../../../examples/tutorial_derive/03_01_flag_count.md")] +//! +//! This also shows that any[`Arg`][crate::Args] method may be used as an attribute. +//! +//! ### Subcommands +//! +//! Subcommands are derived with `#[derive(Subcommand)]` and be added via +//! [`#[command(subcommand)]` attribute][super#command-attributes] on the field using that type. +//! Each instance of a [Subcommand][crate::Subcommand] can have its own version, author(s), Args, +//! and even its own subcommands. +//! +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/03_04_subcommands.rs")] +//! ``` +//! We used a struct-variant to define the `add` subcommand. +//! Alternatively, you can use a struct for your subcommand's arguments: +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/03_04_subcommands_alt.rs")] +//! ``` +//! +#![doc = include_str!("../../../examples/tutorial_derive/03_04_subcommands.md")] +//! +//! ### Defaults +//! +//! We've previously showed that arguments can be [`required`][crate::Arg::required] or optional. +//! When optional, you work with a `Option` and can `unwrap_or`. Alternatively, you can +//! set [`#[arg(default_value_t)]`][super#arg-attributes]. +//! +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/03_05_default_values.rs")] +//! ``` +#![doc = include_str!("../../../examples/tutorial_derive/03_05_default_values.md")] +#![allow(unused_imports)] +use crate::builder::*; + +pub use super::chapter_1 as previous; +pub use super::chapter_3 as next; +pub use crate::_tutorial as table_of_contents; diff --git a/vendor/clap/src/_derive/_tutorial/chapter_3.rs b/vendor/clap/src/_derive/_tutorial/chapter_3.rs new file mode 100644 index 000000000..16004fcdc --- /dev/null +++ b/vendor/clap/src/_derive/_tutorial/chapter_3.rs @@ -0,0 +1,78 @@ +//! ## Validation +//! +//! 1. [Enumerated values](#enumerated-values) +//! 2. [Validated values](#validated-values) +//! 3. [Argument Relations](#argument-relations) +//! 4. [Custom Validation](#custom-validation) +//! +//! An appropriate default parser/validator will be selected for the field's type. See +//! [`value_parser!`][crate::value_parser!] for more details. +//! +//! ### Enumerated values +//! +//! For example, if you have arguments of specific values you want to test for, you can derive +//! [`ValueEnum`][super#valueenum-attributes] +//! (any [`PossibleValue`] builder function can be used as a `#[value]` attribute on enum variants). +//! +//! This allows you specify the valid values for that argument. If the user does not use one of +//! those specific values, they will receive a graceful exit with error message informing them +//! of the mistake, and what the possible valid values are +//! +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/04_01_enum.rs")] +//! ``` +#![doc = include_str!("../../../examples/tutorial_derive/04_01_enum.md")] +//! +//! ### Validated values +//! +//! More generally, you can validate and parse into any data type with [`Arg::value_parser`]. +//! +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/04_02_parse.rs")] +//! ``` +#![doc = include_str!("../../../examples/tutorial_derive/04_02_parse.md")] +//! +//! A [custom parser][TypedValueParser] can be used to improve the error messages or provide additional validation: +//! +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/04_02_validate.rs")] +//! ``` +#![doc = include_str!("../../../examples/tutorial_derive/04_02_validate.md")] +//! +//! See [`Arg::value_parser`][crate::Arg::value_parser] for more details. +//! +//! ### Argument Relations +//! +//! You can declare dependencies or conflicts between [`Arg`][crate::Arg]s or even +//! [`ArgGroup`][crate::ArgGroup]s. +//! +//! [`ArgGroup`][crate::ArgGroup]s make it easier to declare relations instead of having to list +//! each individually, or when you want a rule to apply "any but not all" arguments. +//! +//! Perhaps the most common use of [`ArgGroup`][crate::ArgGroup]s is to require one and *only* one +//! argument to be present out of a given set. Imagine that you had multiple arguments, and you +//! want one of them to be required, but making all of them required isn't feasible because perhaps +//! they conflict with each other. +//! +//! [`ArgGroup`][crate::ArgGroup]s are automatically created for a `struct` with its +//! [`ArgGroup::id`][crate::ArgGroup::id] being the struct's name. +//! +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/04_03_relations.rs")] +//! ``` +#![doc = include_str!("../../../examples/tutorial_derive/04_03_relations.md")] +//! +//! ### Custom Validation +//! +//! As a last resort, you can create custom errors with the basics of clap's formatting. +//! +//! ```rust +#![doc = include_str!("../../../examples/tutorial_derive/04_04_custom.rs")] +//! ``` +#![doc = include_str!("../../../examples/tutorial_derive/04_04_custom.md")] +#![allow(unused_imports)] +use crate::builder::*; + +pub use super::chapter_2 as previous; +pub use super::chapter_4 as next; +pub use crate::_tutorial as table_of_contents; diff --git a/vendor/clap/src/_derive/_tutorial/chapter_4.rs b/vendor/clap/src/_derive/_tutorial/chapter_4.rs new file mode 100644 index 000000000..86c5368e9 --- /dev/null +++ b/vendor/clap/src/_derive/_tutorial/chapter_4.rs @@ -0,0 +1,15 @@ +//! ## Testing +//! +//! clap reports most development errors as `debug_assert!`s. Rather than checking every +//! subcommand, you should have a test that calls +//! [`Command::debug_assert`][crate::Command::debug_assert]: +//! ```rust,no_run +#![doc = include_str!("../../../examples/tutorial_derive/05_01_assert.rs")] +//! ``` + +#![allow(unused_imports)] +use crate::builder::*; + +pub use super::chapter_3 as previous; +pub use super::chapter_5 as next; +pub use crate::_tutorial as table_of_contents; diff --git a/vendor/clap/src/_derive/_tutorial/chapter_5.rs b/vendor/clap/src/_derive/_tutorial/chapter_5.rs new file mode 100644 index 000000000..c58639287 --- /dev/null +++ b/vendor/clap/src/_derive/_tutorial/chapter_5.rs @@ -0,0 +1,14 @@ +//! ## Next Steps +//! +//! - [Cookbook][crate::_cookbook] for application-focused examples +//! - Explore more features in the [Derive reference][super] +//! - See also [`Command`], [`Arg`], [`ArgGroup`], and [`PossibleValue`] builder functions which +//! can be used as attributes +//! +//! For support, see [Discussions](https://github.com/clap-rs/clap/discussions) + +#![allow(unused_imports)] +use crate::builder::*; + +pub use super::chapter_4 as previous; +pub use crate::_tutorial as table_of_contents; diff --git a/vendor/clap/src/_derive/_tutorial/mod.rs b/vendor/clap/src/_derive/_tutorial/mod.rs new file mode 100644 index 000000000..f48a64e8b --- /dev/null +++ b/vendor/clap/src/_derive/_tutorial/mod.rs @@ -0,0 +1,36 @@ +// Contributing +// +// New example code: +// - Please update the corresponding section in the derive tutorial +// - Building: They must be added to `Cargo.toml` with the appropriate `required-features`. +// - Testing: Ensure there is a markdown file with [trycmd](https://docs.rs/trycmd) syntax +// +// See also the general CONTRIBUTING + +//! # Documentation: Derive Tutorial +//! +//! 1. [Quick Start][chapter_0] +//! 2. [Configuring the Parser][chapter_1] +//! 3. [Adding Arguments][chapter_2] +//! 1. [Positionals][chapter_2#positionals] +//! 2. [Options][chapter_2#options] +//! 3. [Flags][chapter_2#flags] +//! 4. [Subcommands][chapter_2#subcommands] +//! 5. [Defaults][chapter_2#defaults] +//! 4. [Validation][chapter_3] +//! 1. [Enumerated values][chapter_3#enumerated-values] +//! 2. [Validated values][chapter_3#validated-values] +//! 3. [Argument Relations][chapter_3#argument-relations] +//! 4. [Custom Validation][chapter_3#custom-validation] +//! 5. [Testing][chapter_4] +//! 6. [Next Steps][chapter_5] + +#![allow(unused_imports)] +use crate::builder::*; + +pub mod chapter_0; +pub mod chapter_1; +pub mod chapter_2; +pub mod chapter_3; +pub mod chapter_4; +pub mod chapter_5; diff --git a/vendor/clap/src/_features.rs b/vendor/clap/src/_features.rs index 2be4a608f..b47ee259c 100644 --- a/vendor/clap/src/_features.rs +++ b/vendor/clap/src/_features.rs @@ -26,4 +26,3 @@ //! **Warning:** These may contain breaking changes between minor releases. //! //! * **unstable-v5**: Preview features which will be stable on the v5.0 release -//! * **unstable-styles**: Custom theming support for clap diff --git a/vendor/clap/src/_tutorial.rs b/vendor/clap/src/_tutorial.rs deleted file mode 100644 index 58e527cbc..000000000 --- a/vendor/clap/src/_tutorial.rs +++ /dev/null @@ -1,242 +0,0 @@ -// Contributing -// -// New example code: -// - Please update the corresponding section in the derive tutorial -// - Building: They must be added to `Cargo.toml` with the appropriate `required-features`. -// - Testing: Ensure there is a markdown file with [trycmd](https://docs.rs/trycmd) syntax -// -// See also the general CONTRIBUTING - -//! # Documentation: Builder Tutorial -//! -//! 1. [Quick Start](#quick-start) -//! 2. [Configuring the Parser](#configuring-the-parser) -//! 3. [Adding Arguments](#adding-arguments) -//! 1. [Positionals](#positionals) -//! 2. [Options](#options) -//! 3. [Flags](#flags) -//! 4. [Subcommands](#subcommands) -//! 5. [Defaults](#defaults) -//! 4. Validation -//! 1. [Enumerated values](#enumerated-values) -//! 2. [Validated values](#validated-values) -//! 3. [Argument Relations](#argument-relations) -//! 4. [Custom Validation](#custom-validation) -//! 5. [Testing](#testing) -//! 6. [Next Steps](#next-steps) -//! -//! See also -//! - [FAQ: When should I use the builder vs derive APIs?][crate::_faq#when-should-i-use-the-builder-vs-derive-apis] -//! - The [cookbook][crate::_cookbook] for more application-focused examples -//! -//! ## Quick Start -//! -//! You can create an application with several arguments using usage strings. -//! -//! First, ensure `clap` is available: -//! ```console -//! $ cargo add clap -//! ``` -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/01_quick.rs")] -//! ``` -//! -#![doc = include_str!("../examples/tutorial_builder/01_quick.md")] -//! -//! ## Configuring the Parser -//! -//! You use [`Command`][crate::Command] to start building a parser. -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/02_apps.rs")] -//! ``` -//! -#![doc = include_str!("../examples/tutorial_builder/02_apps.md")] -//! -//! You can use [`command!()`][crate::command!] to fill these fields in from your `Cargo.toml` -//! file. **This requires the [`cargo` feature flag][crate::_features].** -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/02_crate.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/02_crate.md")] -//! -//! You can use [`Command`][crate::Command] methods to change the application level behavior of -//! clap, like [`Command::next_line_help`]. -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/02_app_settings.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/02_app_settings.md")] -//! -//! ## Adding Arguments -//! -//! ### Positionals -//! -//! You can have users specify values by their position on the command-line: -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/03_03_positional.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/03_03_positional.md")] -//! -//! Note that the default [`ArgAction`][crate::ArgAction] is [`Set`][crate::ArgAction::Set]. To -//! accept multiple values, override the [action][Arg::action] with [`Append`][crate::ArgAction::Append]: -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/03_03_positional_mult.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/03_03_positional_mult.md")] -//! -//! ### Options -//! -//! You can name your arguments with a flag: -//! - Order doesn't matter -//! - They can be optional -//! - Intent is clearer -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/03_02_option.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/03_02_option.md")] -//! -//! Note that the default [`ArgAction`][crate::ArgAction] is [`Set`][crate::ArgAction::Set]. To -//! accept multiple occurrences, override the [action][Arg::action] with [`Append`][crate::ArgAction::Append]: -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/03_02_option_mult.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/03_02_option_mult.md")] -//! -//! ### Flags -//! -//! Flags can also be switches that can be on/off: -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/03_01_flag_bool.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/03_01_flag_bool.md")] -//! -//! To accept multiple flags, use [`Count`][crate::ArgAction::Count]: -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/03_01_flag_count.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/03_01_flag_count.md")] -//! -//! ### Subcommands -//! -//! Subcommands are defined as [`Command`][crate::Command]s that get added via -//! [`Command::subcommand`][crate::Command::subcommand]. Each instance of a Subcommand can have its -//! own version, author(s), Args, and even its own subcommands. -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/03_04_subcommands.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/03_04_subcommands.md")] -//! -//! ### Defaults -//! -//! We've previously showed that arguments can be [`required`][crate::Arg::required] or optional. -//! When optional, you work with a `Option` and can `unwrap_or`. Alternatively, you can set -//! [`Arg::default_value`][crate::Arg::default_value]. -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/03_05_default_values.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/03_05_default_values.md")] -//! -//! ## Validation -//! -//! By default, arguments are assumed to be `String`s and only UTF-8 validation is performed. -//! -//! ### Enumerated values -//! -//! If you have arguments of specific values you want to test for, you can use the -//! [`PossibleValuesParser`][crate::builder::PossibleValuesParser] or [`Arg::value_parser(["val1", -//! ...])`][crate::Arg::value_parser] for short. -//! -//! This allows you specify the valid values for that argument. If the user does not use one of -//! those specific values, they will receive a graceful exit with error message informing them -//! of the mistake, and what the possible valid values are -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/04_01_possible.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/04_01_possible.md")] -//! -//! When enabling the [`derive` feature][crate::_features], you can use -//! [`ValueEnum`][crate::ValueEnum] to take care of the boiler plate for you, giving the same -//! results. -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/04_01_enum.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/04_01_enum.md")] -//! -//! ### Validated values -//! -//! More generally, you can validate and parse into any data type with [`Arg::value_parser`]. -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/04_02_parse.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/04_02_parse.md")] -//! -//! A [custom parser][TypedValueParser] can be used to improve the error messages or provide additional validation: -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/04_02_validate.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/04_02_validate.md")] -//! -//! See [`Arg::value_parser`][crate::Arg::value_parser] for more details. -//! -//! ### Argument Relations -//! -//! You can declare dependencies or conflicts between [`Arg`][crate::Arg]s or even -//! [`ArgGroup`][crate::ArgGroup]s. -//! -//! [`ArgGroup`][crate::ArgGroup]s make it easier to declare relations instead of having to list -//! each individually, or when you want a rule to apply "any but not all" arguments. -//! -//! Perhaps the most common use of [`ArgGroup`][crate::ArgGroup]s is to require one and *only* one -//! argument to be present out of a given set. Imagine that you had multiple arguments, and you -//! want one of them to be required, but making all of them required isn't feasible because perhaps -//! they conflict with each other. -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/04_03_relations.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/04_03_relations.md")] -//! -//! ### Custom Validation -//! -//! As a last resort, you can create custom errors with the basics of clap's formatting. -//! -//! ```rust -#![doc = include_str!("../examples/tutorial_builder/04_04_custom.rs")] -//! ``` -#![doc = include_str!("../examples/tutorial_builder/04_04_custom.md")] -//! -//! ## Testing -//! -//! clap reports most development errors as `debug_assert!`s. Rather than checking every -//! subcommand, you should have a test that calls -//! [`Command::debug_assert`][crate::Command::debug_assert]: -//! ```rust,no_run -#![doc = include_str!("../examples/tutorial_builder/05_01_assert.rs")] -//! ``` -//! -//! ## Next Steps -//! -//! - [Cookbook][crate::_cookbook] for application-focused examples -//! - Explore more features in the [API reference][super] -//! -//! For support, see [Discussions](https://github.com/clap-rs/clap/discussions) - -#![allow(unused_imports)] -use crate::builder::Arg; -use crate::builder::ArgGroup; -use crate::builder::Command; -use crate::builder::PossibleValue; -use crate::builder::TypedValueParser; diff --git a/vendor/clap/src/_tutorial/chapter_0.rs b/vendor/clap/src/_tutorial/chapter_0.rs new file mode 100644 index 000000000..6999f08b7 --- /dev/null +++ b/vendor/clap/src/_tutorial/chapter_0.rs @@ -0,0 +1,24 @@ +//! ## Quick Start +//! +//! You can create an application with several arguments using usage strings. +//! +//! First, ensure `clap` is available: +//! ```console +//! $ cargo add clap +//! ``` +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/01_quick.rs")] +//! ``` +//! +#![doc = include_str!("../../examples/tutorial_builder/01_quick.md")] +//! +//! See also +//! - [FAQ: When should I use the builder vs derive APIs?][crate::_faq#when-should-i-use-the-builder-vs-derive-apis] +//! - The [cookbook][crate::_cookbook] for more application-focused examples + +#![allow(unused_imports)] +use crate::builder::*; + +pub use super::chapter_1 as next; +pub use crate::_tutorial as table_of_contents; diff --git a/vendor/clap/src/_tutorial/chapter_1.rs b/vendor/clap/src/_tutorial/chapter_1.rs new file mode 100644 index 000000000..fbafaf722 --- /dev/null +++ b/vendor/clap/src/_tutorial/chapter_1.rs @@ -0,0 +1,31 @@ +//! ## Configuring the Parser +//! +//! You use [`Command`][crate::Command] to start building a parser. +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/02_apps.rs")] +//! ``` +//! +#![doc = include_str!("../../examples/tutorial_builder/02_apps.md")] +//! +//! You can use [`command!()`][crate::command!] to fill these fields in from your `Cargo.toml` +//! file. **This requires the [`cargo` feature flag][crate::_features].** +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/02_crate.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/02_crate.md")] +//! +//! You can use [`Command`][crate::Command] methods to change the application level behavior of +//! clap, like [`Command::next_line_help`]. +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/02_app_settings.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/02_app_settings.md")] +#![allow(unused_imports)] +use crate::builder::*; + +pub use super::chapter_0 as previous; +pub use super::chapter_2 as next; +pub use crate::_tutorial as table_of_contents; diff --git a/vendor/clap/src/_tutorial/chapter_2.rs b/vendor/clap/src/_tutorial/chapter_2.rs new file mode 100644 index 000000000..607b4e4e6 --- /dev/null +++ b/vendor/clap/src/_tutorial/chapter_2.rs @@ -0,0 +1,87 @@ +//! ## Adding Arguments +//! +//! 1. [Positionals](#positionals) +//! 2. [Options](#options) +//! 3. [Flags](#flags) +//! 4. [Subcommands](#subcommands) +//! 5. [Defaults](#defaults) +//! +//! +//! ### Positionals +//! +//! You can have users specify values by their position on the command-line: +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/03_03_positional.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/03_03_positional.md")] +//! +//! Note that the default [`ArgAction`][crate::ArgAction] is [`Set`][crate::ArgAction::Set]. To +//! accept multiple values, override the [action][Arg::action] with [`Append`][crate::ArgAction::Append]: +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/03_03_positional_mult.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/03_03_positional_mult.md")] +//! +//! ### Options +//! +//! You can name your arguments with a flag: +//! - Order doesn't matter +//! - They can be optional +//! - Intent is clearer +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/03_02_option.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/03_02_option.md")] +//! +//! Note that the default [`ArgAction`][crate::ArgAction] is [`Set`][crate::ArgAction::Set]. To +//! accept multiple occurrences, override the [action][Arg::action] with [`Append`][crate::ArgAction::Append]: +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/03_02_option_mult.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/03_02_option_mult.md")] +//! +//! ### Flags +//! +//! Flags can also be switches that can be on/off: +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/03_01_flag_bool.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/03_01_flag_bool.md")] +//! +//! To accept multiple flags, use [`Count`][crate::ArgAction::Count]: +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/03_01_flag_count.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/03_01_flag_count.md")] +//! +//! ### Subcommands +//! +//! Subcommands are defined as [`Command`][crate::Command]s that get added via +//! [`Command::subcommand`][crate::Command::subcommand]. Each instance of a Subcommand can have its +//! own version, author(s), Args, and even its own subcommands. +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/03_04_subcommands.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/03_04_subcommands.md")] +//! +//! ### Defaults +//! +//! We've previously showed that arguments can be [`required`][crate::Arg::required] or optional. +//! When optional, you work with a `Option` and can `unwrap_or`. Alternatively, you can set +//! [`Arg::default_value`][crate::Arg::default_value]. +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/03_05_default_values.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/03_05_default_values.md")] +#![allow(unused_imports)] +use crate::builder::*; + +pub use super::chapter_1 as previous; +pub use super::chapter_3 as next; +pub use crate::_tutorial as table_of_contents; diff --git a/vendor/clap/src/_tutorial/chapter_3.rs b/vendor/clap/src/_tutorial/chapter_3.rs new file mode 100644 index 000000000..6dc7db2db --- /dev/null +++ b/vendor/clap/src/_tutorial/chapter_3.rs @@ -0,0 +1,84 @@ +//! ## Validation +//! +//! 1. [Enumerated values](#enumerated-values) +//! 2. [Validated values](#validated-values) +//! 3. [Argument Relations](#argument-relations) +//! 4. [Custom Validation](#custom-validation) +//! +//! An appropriate default parser/validator will be selected for the field's type. See +//! [`value_parser!`][crate::value_parser!] for more details. +//! +//! ### Enumerated values +//! +//! If you have arguments of specific values you want to test for, you can use the +//! [`PossibleValuesParser`][crate::builder::PossibleValuesParser] or [`Arg::value_parser(["val1", +//! ...])`][crate::Arg::value_parser] for short. +//! +//! This allows you specify the valid values for that argument. If the user does not use one of +//! those specific values, they will receive a graceful exit with error message informing them +//! of the mistake, and what the possible valid values are +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/04_01_possible.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/04_01_possible.md")] +//! +//! When enabling the [`derive` feature][crate::_features], you can use +//! [`ValueEnum`][crate::ValueEnum] to take care of the boiler plate for you, giving the same +//! results. +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/04_01_enum.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/04_01_enum.md")] +//! +//! ### Validated values +//! +//! More generally, you can validate and parse into any data type with [`Arg::value_parser`]. +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/04_02_parse.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/04_02_parse.md")] +//! +//! A [custom parser][TypedValueParser] can be used to improve the error messages or provide additional validation: +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/04_02_validate.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/04_02_validate.md")] +//! +//! See [`Arg::value_parser`][crate::Arg::value_parser] for more details. +//! +//! ### Argument Relations +//! +//! You can declare dependencies or conflicts between [`Arg`][crate::Arg]s or even +//! [`ArgGroup`][crate::ArgGroup]s. +//! +//! [`ArgGroup`][crate::ArgGroup]s make it easier to declare relations instead of having to list +//! each individually, or when you want a rule to apply "any but not all" arguments. +//! +//! Perhaps the most common use of [`ArgGroup`][crate::ArgGroup]s is to require one and *only* one +//! argument to be present out of a given set. Imagine that you had multiple arguments, and you +//! want one of them to be required, but making all of them required isn't feasible because perhaps +//! they conflict with each other. +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/04_03_relations.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/04_03_relations.md")] +//! +//! ### Custom Validation +//! +//! As a last resort, you can create custom errors with the basics of clap's formatting. +//! +//! ```rust +#![doc = include_str!("../../examples/tutorial_builder/04_04_custom.rs")] +//! ``` +#![doc = include_str!("../../examples/tutorial_builder/04_04_custom.md")] +#![allow(unused_imports)] +use crate::builder::*; + +pub use super::chapter_2 as previous; +pub use super::chapter_4 as next; +pub use crate::_tutorial as table_of_contents; diff --git a/vendor/clap/src/_tutorial/chapter_4.rs b/vendor/clap/src/_tutorial/chapter_4.rs new file mode 100644 index 000000000..d778fb385 --- /dev/null +++ b/vendor/clap/src/_tutorial/chapter_4.rs @@ -0,0 +1,15 @@ +//! ## Testing +//! +//! clap reports most development errors as `debug_assert!`s. Rather than checking every +//! subcommand, you should have a test that calls +//! [`Command::debug_assert`][crate::Command::debug_assert]: +//! ```rust,no_run +#![doc = include_str!("../../examples/tutorial_builder/05_01_assert.rs")] +//! ``` + +#![allow(unused_imports)] +use crate::builder::*; + +pub use super::chapter_3 as previous; +pub use super::chapter_5 as next; +pub use crate::_tutorial as table_of_contents; diff --git a/vendor/clap/src/_tutorial/chapter_5.rs b/vendor/clap/src/_tutorial/chapter_5.rs new file mode 100644 index 000000000..a34a91442 --- /dev/null +++ b/vendor/clap/src/_tutorial/chapter_5.rs @@ -0,0 +1,12 @@ +//! ## Next Steps +//! +//! - [Cookbook][crate::_cookbook] for application-focused examples +//! - Explore more features in the [API reference][super] +//! +//! For support, see [Discussions](https://github.com/clap-rs/clap/discussions) + +#![allow(unused_imports)] +use crate::builder::*; + +pub use super::chapter_4 as previous; +pub use crate::_tutorial as table_of_contents; diff --git a/vendor/clap/src/_tutorial/mod.rs b/vendor/clap/src/_tutorial/mod.rs new file mode 100644 index 000000000..16832302d --- /dev/null +++ b/vendor/clap/src/_tutorial/mod.rs @@ -0,0 +1,36 @@ +// Contributing +// +// New example code: +// - Please update the corresponding section in the derive tutorial +// - Building: They must be added to `Cargo.toml` with the appropriate `required-features`. +// - Testing: Ensure there is a markdown file with [trycmd](https://docs.rs/trycmd) syntax +// +// See also the general CONTRIBUTING + +//! # Documentation: Builder Tutorial +//! +//! 1. [Quick Start][chapter_0] +//! 2. [Configuring the Parser][chapter_1] +//! 3. [Adding Arguments][chapter_2] +//! 1. [Positionals][chapter_2#positionals] +//! 2. [Options][chapter_2#options] +//! 3. [Flags][chapter_2#flags] +//! 4. [Subcommands][chapter_2#subcommands] +//! 5. [Defaults][chapter_2#defaults] +//! 4. [Validation][chapter_3] +//! 1. [Enumerated values][chapter_3#enumerated-values] +//! 2. [Validated values][chapter_3#validated-values] +//! 3. [Argument Relations][chapter_3#argument-relations] +//! 4. [Custom Validation][chapter_3#custom-validation] +//! 5. [Testing][chapter_4] +//! 6. [Next Steps][chapter_5] + +#![allow(unused_imports)] +use crate::builder::*; + +pub mod chapter_0; +pub mod chapter_1; +pub mod chapter_2; +pub mod chapter_3; +pub mod chapter_4; +pub mod chapter_5; diff --git a/vendor/clap/src/bin/stdio-fixture.rs b/vendor/clap/src/bin/stdio-fixture.rs index 792e04056..efd6c817b 100644 --- a/vendor/clap/src/bin/stdio-fixture.rs +++ b/vendor/clap/src/bin/stdio-fixture.rs @@ -12,7 +12,7 @@ fn main() { .action(clap::ArgAction::SetTrue) .long_help("more log"), ); - #[cfg(feature = "unstable-styles")] + #[cfg(feature = "color")] { use clap::builder::styling; let styles = styling::Styles::styled() diff --git a/vendor/clap/src/lib.rs b/vendor/clap/src/lib.rs index 2c861dc5c..6d0aab09d 100644 --- a/vendor/clap/src/lib.rs +++ b/vendor/clap/src/lib.rs @@ -6,8 +6,8 @@ //! > **Command Line Argument Parser for Rust** //! //! Quick Links: -//! - Derive [tutorial][_derive::_tutorial] and [reference][_derive] -//! - Builder [tutorial][_tutorial] and [reference](index.html) +//! - Derive [tutorial][_derive::_tutorial::chapter_0] and [reference][_derive] +//! - Builder [tutorial][_tutorial::chapter_0] and [reference](index.html) //! - [Cookbook][_cookbook] //! - [FAQ][_faq] //! - [Discussions](https://github.com/clap-rs/clap/discussions) @@ -24,7 +24,7 @@ //! - Leverage feature flags to keep to one active branch //! - Being under [WG-CLI](https://github.com/rust-cli/team/) to increase the bus factor //! - We follow semver and will wait about 6-9 months between major breaking changes -//! - We will support the last two minor Rust releases (MSRV, currently 1.64.0) +//! - We will support the last two minor Rust releases (MSRV, currently 1.70.0) //! //! While these aspirations can be at odds with fast build times and low binary //! size, we will still strive to keep these reasonable for the flexibility you @@ -111,10 +111,3 @@ pub mod _faq; pub mod _features; #[cfg(feature = "unstable-doc")] pub mod _tutorial; - -#[doc(hidden)] -#[cfg(feature = "derive")] -pub mod __derive_refs { - #[doc(hidden)] - pub use once_cell; -} -- cgit v1.2.3