summaryrefslogtreecommitdiffstats
path: root/vendor/mdbook
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/mdbook')
-rw-r--r--vendor/mdbook/.cargo-checksum.json2
-rw-r--r--vendor/mdbook/CHANGELOG.md48
-rw-r--r--vendor/mdbook/Cargo.lock827
-rw-r--r--vendor/mdbook/Cargo.toml82
-rw-r--r--vendor/mdbook/src/book/book.rs8
-rw-r--r--vendor/mdbook/src/book/init.rs7
-rw-r--r--vendor/mdbook/src/book/mod.rs12
-rw-r--r--vendor/mdbook/src/cmd/build.rs2
-rw-r--r--vendor/mdbook/src/cmd/clean.rs2
-rw-r--r--vendor/mdbook/src/cmd/init.rs8
-rw-r--r--vendor/mdbook/src/cmd/serve.rs4
-rw-r--r--vendor/mdbook/src/cmd/test.rs2
-rw-r--r--vendor/mdbook/src/cmd/watch.rs34
-rw-r--r--vendor/mdbook/src/config.rs23
-rw-r--r--vendor/mdbook/src/preprocess/links.rs4
-rw-r--r--vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs334
-rw-r--r--vendor/mdbook/src/renderer/html_handlebars/helpers/navigation.rs2
-rw-r--r--vendor/mdbook/src/renderer/html_handlebars/search.rs6
-rw-r--r--vendor/mdbook/src/renderer/markdown_renderer.rs4
-rw-r--r--vendor/mdbook/src/theme/book.js18
-rw-r--r--vendor/mdbook/src/theme/index.hbs24
-rw-r--r--vendor/mdbook/src/theme/tomorrow-night.css4
-rw-r--r--vendor/mdbook/src/utils/fs.rs35
-rw-r--r--vendor/mdbook/src/utils/mod.rs1
-rw-r--r--vendor/mdbook/test_book/src/individual/heading.md6
-rw-r--r--vendor/mdbook/test_book/src/individual/image.md8
-rw-r--r--vendor/mdbook/test_book/src/individual/mixed.md2
-rw-r--r--vendor/mdbook/test_book/src/individual/strikethrough.md2
-rw-r--r--vendor/mdbook/test_book/src/languages/highlight.md2
-rw-r--r--vendor/mdbook/tests/alternative_backends.rs2
-rw-r--r--vendor/mdbook/tests/cli/init.rs24
-rw-r--r--vendor/mdbook/tests/cli/mod.rs1
-rw-r--r--vendor/mdbook/tests/dummy_book/mod.rs6
-rw-r--r--vendor/mdbook/tests/dummy_book/src/SUMMARY.md1
-rw-r--r--vendor/mdbook/tests/dummy_book/src/first/heading-attributes.md5
-rw-r--r--vendor/mdbook/tests/rendered_output.rs50
-rw-r--r--vendor/mdbook/tests/searchindex_fixture.json523
37 files changed, 1434 insertions, 691 deletions
diff --git a/vendor/mdbook/.cargo-checksum.json b/vendor/mdbook/.cargo-checksum.json
index fdec4903a..6bc3771c7 100644
--- a/vendor/mdbook/.cargo-checksum.json
+++ b/vendor/mdbook/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{"CHANGELOG.md":"2ff68be954500bc19f04164b24fb845a115d83bcadcf1d1093de3a52668d2dfd","CODE_OF_CONDUCT.md":"3c4d1c4de2e6991695f5dc495f7530ecb188dfafdb1f47a1323ce7159987accd","CONTRIBUTING.md":"647c5d761749febb3e55a4a74ff02f6c21331f1f3ca2cbbd5a0ca4d3a8a86b9c","Cargo.lock":"4bda03792ae151cb9c5bf6df3b3fb70c1b90db5ccf056201008f5fa8dc7b04ec","Cargo.toml":"3ea21769d767b4a2b7ca42f6210404d36bca7490005146c47a64d847452b1f32","LICENSE":"af175b9d96ee93c21a036152e1b905b0b95304d4ae8c2c921c7609100ba8df7e","README.md":"44e4086a85125c978b6c56be6beeb5d5b24c7394c96e281c1c589217eff4ca5f","ci/install-hub.sh":"d229a71892d2f622fecfefe3c3046efc127b25d5aa95baea2cce3391213198fb","ci/install-rust.sh":"874945a9ff0c30b87fc4edd7b4bf0753af254a9921a74f7b69352da6f81ddef7","ci/make-release.sh":"7b3b07ab35633ef54cf0ea85bc00f736c55a54e06411eaa487a5edf91b8e996b","examples/nop-preprocessor.rs":"4ce2c3d9ed3fce9518d5f5be26713f7267a624562a6e0429d383c7f493c04a48","release.toml":"25e91966f4a77515244adf5775d638590916c550f9d25bba6024d629b71840e8","src/book/book.rs":"c827464506e259f592d2a0c16b4cb3a44b4e772680e058e5b6f88da794f2d175","src/book/init.rs":"ccf5c6fa3d6f819ea123ca820bcfd7579a81a07a606b8c5d52d2d16e8e9d9fc0","src/book/mod.rs":"60ca71a4b43bdd3bfb103716b245b60f1095bc7fde8fa6a5f76a0d9ea6ec2467","src/book/summary.rs":"122c1d0696f3c13e85c367b504ee28dfaaac992e490c950b98229b83aee8471e","src/cmd/build.rs":"b9f87820637c0410afd62de11d4393f517a5cb50ec174cfae1a4213e1f92e578","src/cmd/clean.rs":"db72647e15032a3765fe68b87ea30eeb9cd62ac406fe25b7598bbe9847465377","src/cmd/command_prelude.rs":"abe84f2efbdaae4c2115ac2bff247639f7fbc20aa35104e8ef4af48d85732a5b","src/cmd/init.rs":"135febd6a46215f6f4ed58d09cf47bbfafc09b6539c614b143e039e11798f865","src/cmd/mod.rs":"8473142dae944917dea4fa0d1c2e72fa87caafe4cd5d2cae03cc3eb9b15a68a3","src/cmd/serve.rs":"0f1d7b1cd71d0cc6ca0071c379b8b1cb752335b5c833d9ac70549ee8f266b739","src/cmd/test.rs":"a443bacc29bc61cba87e3c4a11555dd9d4ce0d93759dae492d042a6b8321b145","src/cmd/watch.rs":"b27e436cb6af8e46eb253f626b1de3ec93333aed29dbe7219dadcfde916b8aaa","src/config.rs":"ea2279eb43da9c3a016ff17cc6bc3992c9194a14315eba54a2d98b1d718ce832","src/lib.rs":"d9722f46ac41d0e583022e4b878aa2a11b97c97b07b417bb62059eae35a4cd01","src/main.rs":"3d0616c1510a2f366e5551aa8192c509734123b2280ea9e62ffdf076b1af5d16","src/preprocess/cmd.rs":"215f282de3cb84a63ef6f866a57a88883f7f06165b0316dd5a53ceb14edea64b","src/preprocess/index.rs":"7291b4a3b5472366198da8ecdde87b7a9906b8aefbd6246704b056043ec81989","src/preprocess/links.rs":"c1d6e935210f18e8dd09bd4a3cb2ecf5c0e1e8f4849aec322046e739aa5c8d45","src/preprocess/mod.rs":"12e66955f28ba6194c56dd9a67cf55cc6fa9ab07387513ec1884be36b9593b12","src/renderer/html_handlebars/hbs_renderer.rs":"2ef4db9d57b501da6f0b7694c20597bdd1314016924a406a47bed36928c27395","src/renderer/html_handlebars/helpers/mod.rs":"d83520feecce350b03b7ffaa9f34d6db2fe7316a46562be694b8eef537124191","src/renderer/html_handlebars/helpers/navigation.rs":"3ef0066271742bdc088e68552291d0ae8ac97f969227f879a0c8ca38de07f903","src/renderer/html_handlebars/helpers/theme.rs":"6ae2c4b9878923ef029b17ec5be4839e1385d1e43ef31bda6b5f9c63fbb063ff","src/renderer/html_handlebars/helpers/toc.rs":"775abc774d471b4b6f24a5a56486132c1148a1b24a8c91b9266a029799ffdbb9","src/renderer/html_handlebars/mod.rs":"b6be4801cf49040edc9dad216ed12c26dce87e2dc4724ee24729e4a8b67734b0","src/renderer/html_handlebars/search.rs":"f70fbd7522d5840b8f7da0d93d8188c96011a0b848ebf0955f8121ae44957659","src/renderer/markdown_renderer.rs":"1dfd7ad076f27105bd77d09b44163b5c93fe28c793dd40301b50873d50a4ab92","src/renderer/mod.rs":"280f4dfe020d8327821dea70e1ec1747db32de9cd3f152a14b7fcd4721c4312e","src/theme/FontAwesome/css/font-awesome.min.css":"799aeb25cc0373fdee0e1b1db7ad6c2f6a0e058dfadaa3379689f583213190bd","src/theme/FontAwesome/fonts/FontAwesome.otf":"444dd4366615ffc4a16d012b2fa90137065d3ccb410fa6fd5e4ddd7b5e4ffcd5","src/theme/FontAwesome/fonts/fontawesome-webfont.eot":"7bfcab6db99d5cfbf1705ca0536ddc78585432cc5fa41bbd7ad0f009033b2979","src/theme/FontAwesome/fonts/fontawesome-webfont.svg":"ad6157926c1622ba4e1d03d478f1541368524bfc46f51e42fe0d945f7ef323e4","src/theme/FontAwesome/fonts/fontawesome-webfont.ttf":"aa58f33f239a0fb02f5c7a6c45c043d7a9ac9a093335806694ecd6d4edc0d6a8","src/theme/FontAwesome/fonts/fontawesome-webfont.woff":"ba0c59deb5450f5cb41b3f93609ee2d0d995415877ddfa223e8a8a7533474f07","src/theme/FontAwesome/fonts/fontawesome-webfont.woff2":"2adefcbc041e7d18fcf2d417879dc5a09997aa64d675b7a3c4b6ce33da13f3fe","src/theme/ayu-highlight.css":"56612340a6f36525686c259f1bf2a8a3796181e97fcdd1eda5de3f24ac472dce","src/theme/book.js":"97660f9cad6ca2dfd3007b522bb29e3debea8f2f2c75971075d34ecdd10c00d6","src/theme/clipboard.min.js":"1626706afc88d95ebe1173b553ec732c6dc82a576989315fdf5e7779af738a44","src/theme/css/chrome.css":"ff863cc485426522343b1de73b7e28094c202dcc6a89cb609a1410383b65848d","src/theme/css/general.css":"7fdca1d5ee104d4281bfd322d6ce9a8dfe46a0ece80f2c2a043a0de69f13f393","src/theme/css/print.css":"a4278dff9af38765eb9d344aa56dcc652ac79c73afc408385b62a4b611b89c14","src/theme/css/variables.css":"f3524e63d4a3a9e68431ed3e01b29d2d7a194449247cef03b2710d05ec9a376e","src/theme/favicon.png":"8114d1fc74f4b5621ad9afde7746ed9cf7e420be317a6e29023d2298d58aa15b","src/theme/favicon.svg":"de23e50b1c4dd6e052b3e21d444fcd4b13568b3840ac3c99d9be4e9263c0ef59","src/theme/fonts/OPEN-SANS-LICENSE.txt":"cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30","src/theme/fonts/SOURCE-CODE-PRO-LICENSE.txt":"d1e6d465a83ba1a3be52db6484868cf5812ae9bbf91abdad3900ba0165afcf93","src/theme/fonts/fonts.css":"2db113e6ebede8403c607db3dceb5acc53c247720d5955d22f7db56beb7139b6","src/theme/fonts/mod.rs":"9b97835fbc610c46245ac52f8d40df8f28ace0c4fe7aca0847835ee83cc21a15","src/theme/fonts/open-sans-v17-all-charsets-300.woff2":"7736aa3596c468515c3209f2f9d68cfae96d94c05689bcc11a5dce426a6ee2e8","src/theme/fonts/open-sans-v17-all-charsets-300italic.woff2":"2c7b95c08df0d228caec6d4bfed06da0f7ab6b76ea5cc3f75b5c6ae416bc571b","src/theme/fonts/open-sans-v17-all-charsets-600.woff2":"486c67592731a0b36a89dba1fd0b97aeb73f236bbf60dbf28d7c6b5723c07989","src/theme/fonts/open-sans-v17-all-charsets-600italic.woff2":"1a3e865977024f444834a75a1b33b89b93134c93007ae3d6e14f24e6c88d8dfb","src/theme/fonts/open-sans-v17-all-charsets-700.woff2":"c22fe8c70c36f1d862903b772eaed864d3a8fa849473c9caff224fdb852428e4","src/theme/fonts/open-sans-v17-all-charsets-700italic.woff2":"238ae9593944112bee8dd65f8ebc5f3d3862160a8a245fbe1ee3150bc9a2fd81","src/theme/fonts/open-sans-v17-all-charsets-800.woff2":"3d2c812adf74deb36fead3ff8469800d3c0b23eb2c858ae49310291f89490146","src/theme/fonts/open-sans-v17-all-charsets-800italic.woff2":"ba1521ec219db9bc5bfec0e3e7a897369d98b30d4e853ee4aa525322784428b8","src/theme/fonts/open-sans-v17-all-charsets-italic.woff2":"6c9463f7096c0b9d610e095ed248ac1e8a8da7e92d17e9be544f3baced7b62b2","src/theme/fonts/open-sans-v17-all-charsets-regular.woff2":"2e3b1d34ac67763ab50652da19305d4b3694c6b6e6bf35f4b98411ce4af646d2","src/theme/fonts/source-code-pro-v11-all-charsets-500.woff2":"2bdd9410b0141db3cbbf4cfc3818cc6fad279e8e63940940e06cd6af76ccbfcf","src/theme/head.hbs":"56b3ab3c6eabd4723d4794ecd0a7452aa8903c55a2106d60bceacc74d76311c3","src/theme/header.hbs":"1fd27c9ccd016060dc4d6e77f12bf58b26e7c604aebe2577a67097f95a3de70a","src/theme/highlight.css":"2371a33638d229e1c07fcdc907f027c976d1f44ff733713ea51ac69d9abdc92a","src/theme/highlight.js":"5a2b5dadd60831dd1f82220223e2ab18e627061912cc89b5c450ab2c8f26ff90","src/theme/index.hbs":"29acf623c484750a66f4b232f46cad54fe37b83d227120c55461fb227d391a09","src/theme/mod.rs":"aa6405e3052f9bf3a8be300da9ce4163caaaae8499cfcdf25e336e608d4b0b68","src/theme/playground_editor/ace.js":"2a3cd908c9619862b52f621ce2a40f76b772eb51c17308b14bd26d1809af8f87","src/theme/playground_editor/editor.js":"16ca416ca77428fe23cb8e18afbd3626a6a86723d6b6e189c47da95d9e9bdc31","src/theme/playground_editor/mod.rs":"b6b0f99f00ccb83cedfe5ce892834b46936a468611d056eae0f146e59711dc5c","src/theme/playground_editor/mode-rust.js":"2c9d5c9af5ae32612aef1ca5653e3473ed40747d36ecb4a97719ff14707d8535","src/theme/playground_editor/theme-dawn.js":"4493f9c88ed7185f7bb4195be77018d21cdc439a34bd4e5da64b566eb996fbe8","src/theme/playground_editor/theme-tomorrow_night.js":"9dbe62a913ebe3fd9667f41f69c0301bacd963081c69abb0219e4acac4710f60","src/theme/redirect.hbs":"64134b5c3ff08b1a9bdaee8e1feb53c345f703ce1eb6f99db196e57fca13792b","src/theme/searcher/elasticlunr.min.js":"ef4e11c157b1e2e89782d30bd726f2d5ff7834ea5e26ad02474325f8b1f126c9","src/theme/searcher/mark.min.js":"09e88c2cfaf23ea8a37b5681433eafea97033af632ecc948c8c1ee9944647743","src/theme/searcher/mod.rs":"36979040719b2fa39d1b78808e41cdb6e52e0ea5137c84820b437ed015278072","src/theme/searcher/searcher.js":"597b15cf5684c9293e4ecd86ceedbf88d367fe0283ec1874acd54f8b774b545b","src/theme/tomorrow-night.css":"1b14fba454be34c9b836084edf51b27ffd416a2fed973e216ac0f3e12b2b81c6","src/utils/fs.rs":"8809798fce9bf0ba243372fdcbb71431361ea5141bb971adbe26686d0a3f6007","src/utils/mod.rs":"2e182bbd7c725c416711ce6605c89cfe8d5f4d73d47a463312c86315b76ee600","src/utils/string.rs":"1e536d7a80b7912a97f55901c620f363fa2408ad2a142e3b969369a5bcf8c7c9","src/utils/toml_ext.rs":"20f88d22b19e431e15e1e9a34f0c4b4870cf38e45c766ab221d4eeaef16b2af6","test_book/book.toml":"fc9302acd6fd547988fd89192a8a9152aa8d00bfc1f75c83aadf95aa09e63ffd","test_book/src/README.md":"249f5ea54537dcbf399ce7ed1fd3bec371180258a89ea362fe05f1ca37c77a38","test_book/src/SUMMARY.md":"ec2beffb3d989c39ede3c8077ebed5c2aa3e65e4a10e29606cf8ef1bc7f87888","test_book/src/individual/README.md":"e796db1b0c812d8c9b4814406a1834ebbe60aaadee4692ba50e49aab9af46b82","test_book/src/individual/blockquote.md":"1263bd94b62e22630ad87501057e6098265d6d377baba51b04e1992c07a74450","test_book/src/individual/code.md":"6c9db5996e0d9787a7f85fdafc0cb9dcc9c19e2f2349f4fc169bb10ca5053a7e","test_book/src/individual/emphasis.md":"3c770aa9cae69106bdbab6dde5b35554f58914b82c8abb1a4f94164a0b16a2e3","test_book/src/individual/heading.md":"f137ef8d2808444c0a7f4f9756b1df11d7527273a1b84a81aca21658a12bc98d","test_book/src/individual/image.md":"8e8275cad5995224fcd26b500f433921aeb031ab2ed05cb0a2b324013f3f312d","test_book/src/individual/linebreak.md":"45e8c3171b7341210a7153d65aefd41d9d3430b346bf181bb5c72e2a59937060","test_book/src/individual/link_hr.md":"d703b9e8f39b39a6c801e4f6e13024d5651fcc4ef42552ef4d87d010168cd879","test_book/src/individual/list.md":"9b175eed63c4791d4f2b5f4619492c98b93778fc450328e5e958f81bd203620e","test_book/src/individual/mixed.md":"e1700d96d9531a2c4a0295f2f52e6621caa58a5734fed8c3e6fc0ec3c89e3509","test_book/src/individual/paragraph.md":"28fe3340a563e411304bb9cf763d6753e5ece492ead874d1e2067a41bd3717a8","test_book/src/individual/strikethrough.md":"84e380220cb7a27ecd2bc84ac196a973c4fd0e0793b59b1e44906080817207d4","test_book/src/individual/table.md":"5a59663043d5968e599b04c2838257229fcc98e1146086f75491b7be222a0041","test_book/src/individual/task.md":"ffed0203911c2737f0a4dee1ddfbb63e9a991be387cc9bb996fe4e3f6831bdb5","test_book/src/languages/README.md":"feeb3cb192f02ac7966acb480301874b6c3f354edb3e2476b4fe233acfd62168","test_book/src/languages/highlight.md":"db38b73be4ffd4148bbf4ab73419fd84310f2e2566bd7014ea8af66f64000625","test_book/src/prefix.md":"2dff7330dfafe1f1536b3f7ad4ca0d605cc53974caf74d24279708c8c42655bf","test_book/src/rust/README.md":"04fdf7da9f3619cae66ec7ebf4d30ec64d89e642d7b68c7b03c96ce88a286056","test_book/src/rust/rust_codeblock.md":"d2270c20023440879a54362667ff32efc67aed98f6a730546d52d35ef063cf48","test_book/src/suffix.md":"8478a1969c09bbbef0f06f477bc5aa21ed38f8ad5308eceb41fd845fe00b695e","tests/alternative_backends.rs":"cbff1ccc5361202870f619d438b1d84b1bb66a23a7cc91d8ce48dd29e297ac6c","tests/build_process.rs":"a958404fc41ff5c00b08b4c69d26f0862160e20c781b4bea88977d85304b6ef5","tests/cli/build.rs":"a7c99bf9fa92d57162260edc157789b712055790d206ce1f576ffc0a5ba8ce97","tests/cli/cmd.rs":"5839a288417c703d89a3bf82d3e8ab7695cc86d84e46d7a79a2f1686ed74a14f","tests/cli/mod.rs":"9c0985a84be7ba5cf6b4b076246b7e1045f6f91861d6350d18c7615820b14e3f","tests/cli/test.rs":"54213817b752d8b6fbc45e190a2aa58fedbbee7e7e21ccfa3df37e89888f4b9a","tests/cli_tests.rs":"7eb7715e4ddc2d5fab9011b938c4ab6b0eb4b0ab8f83cff7aad91352be3b3096","tests/custom_preprocessors.rs":"22a5da0ed34ab2fe85d87ceb70e06c2a5065d66c363a39ce7d45715ae974ad1c","tests/dummy_book/index_html_test/SUMMARY.md":"6cb42be52279c2e62e145c425d8833343f83e6cd8d4951e89cdb322633ff7779","tests/dummy_book/index_html_test/chapter_1.md":"cac4f4a3609ec22eb519b0e07d1d1bdc15ac3d741f29f9b97280f700b96ded66","tests/dummy_book/mod.rs":"b474756f39c442ecd973a3abe3b88834d745b38db40f6c290cdce6c12c8beb91","tests/dummy_book/src/README.md":"2f6e578b9f31ff5e1d18ae40865355d59e56a23e02798bd8166751245ef4eb9b","tests/dummy_book/src/SUMMARY.md":"fa878d52ca2af76c83c126a768b1d16cfc050ffcd316836aea1667a0f2c7fca0","tests/dummy_book/src/conclusion.md":"eca0543344979e938b43debf3d310290a628e8b7b45d3d9bec63c21e61284a4c","tests/dummy_book/src/example.rs":"3be109d6faa3c6104c8fb5e8ffdfe3eba73d0a5ed4f537685fe2cf2c36e657d0","tests/dummy_book/src/first/duplicate-headers.md":"8bac1bdff305a473004774178daf112131d994b3ef2432cc4f3af03495df2ac6","tests/dummy_book/src/first/includes.md":"747f8f1eb4d394c1fdb773acddb7ffdc641e3ad71b0d15afb0f4e2de13a729ed","tests/dummy_book/src/first/index.md":"e7d1af4cb454c0be73bf1e2f01a97541fba385cd04ac5c9a7acc99809adedee8","tests/dummy_book/src/first/markdown.md":"461753f7f5105e35bc246c752065a44ea1d238f6890bd01b7c34d0a5746f7902","tests/dummy_book/src/first/nested-test-with-anchors.rs":"6fdecb4c62201f2dae36ea7e35693238edca03dcfc42d33eaf1685bc957a6d1d","tests/dummy_book/src/first/nested-test.rs":"ca4cdf552842a957be49ffc753f7585dba3c0036a076fea68174719599d426fa","tests/dummy_book/src/first/nested.md":"485d24764340c0413939e52533ab304c07bb55bd23d0ad9e31151ff889425048","tests/dummy_book/src/first/no-headers.md":"74302855224031296e7739c3a5d881ad4a737d9f2db8f2123f74708ad399721f","tests/dummy_book/src/first/partially-included-test-with-anchors.rs":"501d96562da17cbec46444a004340e711b3fac4b3384f12d7c4844909742c8c8","tests/dummy_book/src/first/partially-included-test.rs":"1bdd1a4f8fdc41ea10868f97de0fe315b2cc592d4cf4aabd784f17dc8c0a6e90","tests/dummy_book/src/first/recursive.md":"9b574239c94c24412dbd918d7b85f557a80cec44d245663cfe1ecdd8ed16765e","tests/dummy_book/src/first/unicode.md":"04a548a642ba5cbc346670a8b38c1aeb5ad23d5a967849783171c634b682de63","tests/dummy_book/src/intro.md":"2749920beee7f563f3ace2bbef204dc66382e052c7945bf27e66912351959a90","tests/dummy_book/src/second.md":"b1344cb47f69621ed68197b81652df1f86254b71b4e3dcbdcf707a4e1fee3340","tests/dummy_book/src/second/nested.md":"b0da2ce6ce1ac5fbda92b5cf7a6a09d39abd267095a29f177e44cd4e8d333d45","tests/dummy_book/src2/README.md":"1bcffb061e737e022f132f78a2dd3193fc0951d0b104e50ddc860d9bc260f505","tests/dummy_book/src2/SUMMARY.md":"4354bec1cae7db3c48dfe869e28e8e29958daef937b33da5e729211372ccb9c9","tests/dummy_book/src2/first/README.md":"ba505ed6c1e18c85ce2ca7070021c719933ce2cf9f28de8565c188c0e4a95d87","tests/dummy_book/src2/second/README.md":"2fb4a90a1359fe3725c3d95888452afd514b0b86bdc4e2768442a71bf5b642a0","tests/dummy_book/src2/second/index.md":"5bf990bec982b9e87d8dfb230fb2dfc96318d9065f97a3d3c5cf27bd134c8bdd","tests/dummy_book/summary-formatting/SUMMARY.md":"ad48a6278c3dbe069cd9c22ae3f04b403a03e0df09b4574a29ec38f41afb83a5","tests/init.rs":"d5ff34cd0ba6a8a9922c8a5268cad6057172ad138d4be4a10fb8d2c9bd2094ac","tests/parse_existing_summary_files.rs":"f4b019e66ffc7f59efd7ec9da73bb70180e4cc23ff27904bf4dfd26491ef64a3","tests/rendered_output.rs":"21ac2a65436ff6809343a257b5d6ea277a58aa2bf944e23fdc9c3758a9563964","tests/searchindex_fixture.json":"05acb10087b2dd082121f581f17aedff59c40e692a5e572acc72a43a4c5178fd","tests/summary_md_files/example_book.md":"e1dd09043d9548612b0bb4e607a8796317272aa1fe7a2bda55db6e6f47d3fc5a","tests/summary_md_files/rust_by_example.md":"c46c8eab64780297b851be196a04d573da69553f4d9c33e24fbd5fb2867efbfd","tests/summary_md_files/rust_ffi_guide.md":"26874d9ad22cfdc2a587e7a495a4404247821d2b6e8eabe07334cacc5a4ea365","tests/summary_md_files/the_book-2nd_edition.md":"7ae64929c45aa7d67560c77e5280a540c22d1b0d2f8fd85f8392ce064c2d5f0a","tests/testing.rs":"675c639c11a020edb9083a068f302a4de085fc53db0a0491098ad16a632b4c8a","triagebot.toml":"5daca5742680c805e2429ebe2cf0c71ec07145f0274dc17589f90d01b5fa5ac7"},"package":"764dcbfc2e5f868bc1b566eb179dff1a06458fd0cff846aae2579392dd3f01a0"} \ No newline at end of file
+{"files":{"CHANGELOG.md":"290e98ad0e7d9f81c9a6e223747c7e8c6095c8583ef8df2d9b2a325306b43c11","CODE_OF_CONDUCT.md":"3c4d1c4de2e6991695f5dc495f7530ecb188dfafdb1f47a1323ce7159987accd","CONTRIBUTING.md":"647c5d761749febb3e55a4a74ff02f6c21331f1f3ca2cbbd5a0ca4d3a8a86b9c","Cargo.lock":"55c0465c8320a6734c42df8df2649e5cebcc6916a15bd0e56194d857dfb14df7","Cargo.toml":"85e99ae6c031b00fdcbfbb6ed28a9ef7cfbd6893dc94ed8f3895780f0767449a","LICENSE":"af175b9d96ee93c21a036152e1b905b0b95304d4ae8c2c921c7609100ba8df7e","README.md":"44e4086a85125c978b6c56be6beeb5d5b24c7394c96e281c1c589217eff4ca5f","ci/install-hub.sh":"d229a71892d2f622fecfefe3c3046efc127b25d5aa95baea2cce3391213198fb","ci/install-rust.sh":"874945a9ff0c30b87fc4edd7b4bf0753af254a9921a74f7b69352da6f81ddef7","ci/make-release.sh":"7b3b07ab35633ef54cf0ea85bc00f736c55a54e06411eaa487a5edf91b8e996b","examples/nop-preprocessor.rs":"4ce2c3d9ed3fce9518d5f5be26713f7267a624562a6e0429d383c7f493c04a48","release.toml":"25e91966f4a77515244adf5775d638590916c550f9d25bba6024d629b71840e8","src/book/book.rs":"0ef0352651a2bf6ab5a3182684cc5828a5640571d85cd2e123a16509f67188c5","src/book/init.rs":"d6485149a68cbf872e6dbdef12200c9d6257d5b3cd6362831d837b42a227e227","src/book/mod.rs":"bd200d40ebe990fe1b255692aadc6a536412f38599be93cc692f637629ea4c26","src/book/summary.rs":"122c1d0696f3c13e85c367b504ee28dfaaac992e490c950b98229b83aee8471e","src/cmd/build.rs":"4add86ae09b130d63d4b213c8091a2d9ecdf41c1c5258c5ac1aed737324805cb","src/cmd/clean.rs":"5829302478ead496d0a866147215c78aad5d6342d9237f18d48a372756136400","src/cmd/command_prelude.rs":"abe84f2efbdaae4c2115ac2bff247639f7fbc20aa35104e8ef4af48d85732a5b","src/cmd/init.rs":"9bd1f5c4959fafdae7915d736be15eb04a92599dfeea3bd69c6942e2b8a16272","src/cmd/mod.rs":"8473142dae944917dea4fa0d1c2e72fa87caafe4cd5d2cae03cc3eb9b15a68a3","src/cmd/serve.rs":"5a10873c74023005ea0bf9c7adccb11b0c7135adebe5e22d33f7dbba13c15d88","src/cmd/test.rs":"3cd9a2da74856ab53f3b59542d1ed50e667a9951d42078b7b366520a64698e27","src/cmd/watch.rs":"4e629881824bc6da47511d04b63a0fe59a73863008d73750f7ed02e6f86a97ee","src/config.rs":"2b64039ac40bf657dc9e957ae16820dd8b8469bfca3873503c39b437047d3bdb","src/lib.rs":"d9722f46ac41d0e583022e4b878aa2a11b97c97b07b417bb62059eae35a4cd01","src/main.rs":"3d0616c1510a2f366e5551aa8192c509734123b2280ea9e62ffdf076b1af5d16","src/preprocess/cmd.rs":"215f282de3cb84a63ef6f866a57a88883f7f06165b0316dd5a53ceb14edea64b","src/preprocess/index.rs":"7291b4a3b5472366198da8ecdde87b7a9906b8aefbd6246704b056043ec81989","src/preprocess/links.rs":"1db6fa2d3d48c48132d7f740b3aa0ec48bc73451fb6f34cc56f375e31518b3dc","src/preprocess/mod.rs":"12e66955f28ba6194c56dd9a67cf55cc6fa9ab07387513ec1884be36b9593b12","src/renderer/html_handlebars/hbs_renderer.rs":"099dce57a7e0fcef132362bfe32d31468c287d4858310944b6b52c655b2b7cbe","src/renderer/html_handlebars/helpers/mod.rs":"d83520feecce350b03b7ffaa9f34d6db2fe7316a46562be694b8eef537124191","src/renderer/html_handlebars/helpers/navigation.rs":"d2aa59bf16d9af207f34921414bae4b187008ad96c4a37c3be75362a29923fc5","src/renderer/html_handlebars/helpers/theme.rs":"6ae2c4b9878923ef029b17ec5be4839e1385d1e43ef31bda6b5f9c63fbb063ff","src/renderer/html_handlebars/helpers/toc.rs":"775abc774d471b4b6f24a5a56486132c1148a1b24a8c91b9266a029799ffdbb9","src/renderer/html_handlebars/mod.rs":"b6be4801cf49040edc9dad216ed12c26dce87e2dc4724ee24729e4a8b67734b0","src/renderer/html_handlebars/search.rs":"a7b1794954f5955947dc641ec164c4c736dc1df15da2b1969b0c9216d7dfe171","src/renderer/markdown_renderer.rs":"b458b61ea22be257fb0e499f6bd939eb54999ecf187b9a72a1b9628749fdccd5","src/renderer/mod.rs":"280f4dfe020d8327821dea70e1ec1747db32de9cd3f152a14b7fcd4721c4312e","src/theme/FontAwesome/css/font-awesome.min.css":"799aeb25cc0373fdee0e1b1db7ad6c2f6a0e058dfadaa3379689f583213190bd","src/theme/FontAwesome/fonts/FontAwesome.otf":"444dd4366615ffc4a16d012b2fa90137065d3ccb410fa6fd5e4ddd7b5e4ffcd5","src/theme/FontAwesome/fonts/fontawesome-webfont.eot":"7bfcab6db99d5cfbf1705ca0536ddc78585432cc5fa41bbd7ad0f009033b2979","src/theme/FontAwesome/fonts/fontawesome-webfont.svg":"ad6157926c1622ba4e1d03d478f1541368524bfc46f51e42fe0d945f7ef323e4","src/theme/FontAwesome/fonts/fontawesome-webfont.ttf":"aa58f33f239a0fb02f5c7a6c45c043d7a9ac9a093335806694ecd6d4edc0d6a8","src/theme/FontAwesome/fonts/fontawesome-webfont.woff":"ba0c59deb5450f5cb41b3f93609ee2d0d995415877ddfa223e8a8a7533474f07","src/theme/FontAwesome/fonts/fontawesome-webfont.woff2":"2adefcbc041e7d18fcf2d417879dc5a09997aa64d675b7a3c4b6ce33da13f3fe","src/theme/ayu-highlight.css":"56612340a6f36525686c259f1bf2a8a3796181e97fcdd1eda5de3f24ac472dce","src/theme/book.js":"346a6cf0a5532b909c1448d9dfe69c339876f9643bc40fd36083085db9dc2584","src/theme/clipboard.min.js":"1626706afc88d95ebe1173b553ec732c6dc82a576989315fdf5e7779af738a44","src/theme/css/chrome.css":"ff863cc485426522343b1de73b7e28094c202dcc6a89cb609a1410383b65848d","src/theme/css/general.css":"7fdca1d5ee104d4281bfd322d6ce9a8dfe46a0ece80f2c2a043a0de69f13f393","src/theme/css/print.css":"a4278dff9af38765eb9d344aa56dcc652ac79c73afc408385b62a4b611b89c14","src/theme/css/variables.css":"f3524e63d4a3a9e68431ed3e01b29d2d7a194449247cef03b2710d05ec9a376e","src/theme/favicon.png":"8114d1fc74f4b5621ad9afde7746ed9cf7e420be317a6e29023d2298d58aa15b","src/theme/favicon.svg":"de23e50b1c4dd6e052b3e21d444fcd4b13568b3840ac3c99d9be4e9263c0ef59","src/theme/fonts/OPEN-SANS-LICENSE.txt":"cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30","src/theme/fonts/SOURCE-CODE-PRO-LICENSE.txt":"d1e6d465a83ba1a3be52db6484868cf5812ae9bbf91abdad3900ba0165afcf93","src/theme/fonts/fonts.css":"2db113e6ebede8403c607db3dceb5acc53c247720d5955d22f7db56beb7139b6","src/theme/fonts/mod.rs":"9b97835fbc610c46245ac52f8d40df8f28ace0c4fe7aca0847835ee83cc21a15","src/theme/fonts/open-sans-v17-all-charsets-300.woff2":"7736aa3596c468515c3209f2f9d68cfae96d94c05689bcc11a5dce426a6ee2e8","src/theme/fonts/open-sans-v17-all-charsets-300italic.woff2":"2c7b95c08df0d228caec6d4bfed06da0f7ab6b76ea5cc3f75b5c6ae416bc571b","src/theme/fonts/open-sans-v17-all-charsets-600.woff2":"486c67592731a0b36a89dba1fd0b97aeb73f236bbf60dbf28d7c6b5723c07989","src/theme/fonts/open-sans-v17-all-charsets-600italic.woff2":"1a3e865977024f444834a75a1b33b89b93134c93007ae3d6e14f24e6c88d8dfb","src/theme/fonts/open-sans-v17-all-charsets-700.woff2":"c22fe8c70c36f1d862903b772eaed864d3a8fa849473c9caff224fdb852428e4","src/theme/fonts/open-sans-v17-all-charsets-700italic.woff2":"238ae9593944112bee8dd65f8ebc5f3d3862160a8a245fbe1ee3150bc9a2fd81","src/theme/fonts/open-sans-v17-all-charsets-800.woff2":"3d2c812adf74deb36fead3ff8469800d3c0b23eb2c858ae49310291f89490146","src/theme/fonts/open-sans-v17-all-charsets-800italic.woff2":"ba1521ec219db9bc5bfec0e3e7a897369d98b30d4e853ee4aa525322784428b8","src/theme/fonts/open-sans-v17-all-charsets-italic.woff2":"6c9463f7096c0b9d610e095ed248ac1e8a8da7e92d17e9be544f3baced7b62b2","src/theme/fonts/open-sans-v17-all-charsets-regular.woff2":"2e3b1d34ac67763ab50652da19305d4b3694c6b6e6bf35f4b98411ce4af646d2","src/theme/fonts/source-code-pro-v11-all-charsets-500.woff2":"2bdd9410b0141db3cbbf4cfc3818cc6fad279e8e63940940e06cd6af76ccbfcf","src/theme/head.hbs":"56b3ab3c6eabd4723d4794ecd0a7452aa8903c55a2106d60bceacc74d76311c3","src/theme/header.hbs":"1fd27c9ccd016060dc4d6e77f12bf58b26e7c604aebe2577a67097f95a3de70a","src/theme/highlight.css":"2371a33638d229e1c07fcdc907f027c976d1f44ff733713ea51ac69d9abdc92a","src/theme/highlight.js":"5a2b5dadd60831dd1f82220223e2ab18e627061912cc89b5c450ab2c8f26ff90","src/theme/index.hbs":"4664835bdc477f75162c0ea0036e5c43607e089278d947e691a9d4fe045ce7c5","src/theme/mod.rs":"aa6405e3052f9bf3a8be300da9ce4163caaaae8499cfcdf25e336e608d4b0b68","src/theme/playground_editor/ace.js":"2a3cd908c9619862b52f621ce2a40f76b772eb51c17308b14bd26d1809af8f87","src/theme/playground_editor/editor.js":"16ca416ca77428fe23cb8e18afbd3626a6a86723d6b6e189c47da95d9e9bdc31","src/theme/playground_editor/mod.rs":"b6b0f99f00ccb83cedfe5ce892834b46936a468611d056eae0f146e59711dc5c","src/theme/playground_editor/mode-rust.js":"2c9d5c9af5ae32612aef1ca5653e3473ed40747d36ecb4a97719ff14707d8535","src/theme/playground_editor/theme-dawn.js":"4493f9c88ed7185f7bb4195be77018d21cdc439a34bd4e5da64b566eb996fbe8","src/theme/playground_editor/theme-tomorrow_night.js":"9dbe62a913ebe3fd9667f41f69c0301bacd963081c69abb0219e4acac4710f60","src/theme/redirect.hbs":"64134b5c3ff08b1a9bdaee8e1feb53c345f703ce1eb6f99db196e57fca13792b","src/theme/searcher/elasticlunr.min.js":"ef4e11c157b1e2e89782d30bd726f2d5ff7834ea5e26ad02474325f8b1f126c9","src/theme/searcher/mark.min.js":"09e88c2cfaf23ea8a37b5681433eafea97033af632ecc948c8c1ee9944647743","src/theme/searcher/mod.rs":"36979040719b2fa39d1b78808e41cdb6e52e0ea5137c84820b437ed015278072","src/theme/searcher/searcher.js":"597b15cf5684c9293e4ecd86ceedbf88d367fe0283ec1874acd54f8b774b545b","src/theme/tomorrow-night.css":"b15a3b5754d0d31ed3d8d4ef0ab00881676bc9a357de4e52b92e84af80247ec3","src/utils/fs.rs":"a4c54cab6b2fc2454086b33b3936b69b012f6ebe5a42bf588aeabb8d14260964","src/utils/mod.rs":"8b76b04b41ac8feef22df1d9c8047f2edd4dc04ed0b76e7fe85b1df47e9ec85d","src/utils/string.rs":"1e536d7a80b7912a97f55901c620f363fa2408ad2a142e3b969369a5bcf8c7c9","src/utils/toml_ext.rs":"20f88d22b19e431e15e1e9a34f0c4b4870cf38e45c766ab221d4eeaef16b2af6","test_book/book.toml":"fc9302acd6fd547988fd89192a8a9152aa8d00bfc1f75c83aadf95aa09e63ffd","test_book/src/README.md":"249f5ea54537dcbf399ce7ed1fd3bec371180258a89ea362fe05f1ca37c77a38","test_book/src/SUMMARY.md":"ec2beffb3d989c39ede3c8077ebed5c2aa3e65e4a10e29606cf8ef1bc7f87888","test_book/src/individual/README.md":"e796db1b0c812d8c9b4814406a1834ebbe60aaadee4692ba50e49aab9af46b82","test_book/src/individual/blockquote.md":"1263bd94b62e22630ad87501057e6098265d6d377baba51b04e1992c07a74450","test_book/src/individual/code.md":"6c9db5996e0d9787a7f85fdafc0cb9dcc9c19e2f2349f4fc169bb10ca5053a7e","test_book/src/individual/emphasis.md":"3c770aa9cae69106bdbab6dde5b35554f58914b82c8abb1a4f94164a0b16a2e3","test_book/src/individual/heading.md":"2fa1c7e999440780dbd9389c89dca9d1fb1c122511c537561aef57327ed2cd66","test_book/src/individual/image.md":"99e41931ff88e7e668c2c85ca5e5b514fa829c4e06675ff853bf37562b7282ec","test_book/src/individual/linebreak.md":"45e8c3171b7341210a7153d65aefd41d9d3430b346bf181bb5c72e2a59937060","test_book/src/individual/link_hr.md":"d703b9e8f39b39a6c801e4f6e13024d5651fcc4ef42552ef4d87d010168cd879","test_book/src/individual/list.md":"9b175eed63c4791d4f2b5f4619492c98b93778fc450328e5e958f81bd203620e","test_book/src/individual/mixed.md":"4dce9c51b94c26b46c9d41c36740e4627cdc6bd965f934d89089623dda75f874","test_book/src/individual/paragraph.md":"28fe3340a563e411304bb9cf763d6753e5ece492ead874d1e2067a41bd3717a8","test_book/src/individual/strikethrough.md":"3b2ac678b2502190859178771e7866dda3bbdba4c4b853aab2363e1b0223bd8c","test_book/src/individual/table.md":"5a59663043d5968e599b04c2838257229fcc98e1146086f75491b7be222a0041","test_book/src/individual/task.md":"ffed0203911c2737f0a4dee1ddfbb63e9a991be387cc9bb996fe4e3f6831bdb5","test_book/src/languages/README.md":"feeb3cb192f02ac7966acb480301874b6c3f354edb3e2476b4fe233acfd62168","test_book/src/languages/highlight.md":"36b9c4a0b190bcaa91345759aadf5f2b6d5a6310e0433d0cdc7f58ecd69be91b","test_book/src/prefix.md":"2dff7330dfafe1f1536b3f7ad4ca0d605cc53974caf74d24279708c8c42655bf","test_book/src/rust/README.md":"04fdf7da9f3619cae66ec7ebf4d30ec64d89e642d7b68c7b03c96ce88a286056","test_book/src/rust/rust_codeblock.md":"d2270c20023440879a54362667ff32efc67aed98f6a730546d52d35ef063cf48","test_book/src/suffix.md":"8478a1969c09bbbef0f06f477bc5aa21ed38f8ad5308eceb41fd845fe00b695e","tests/alternative_backends.rs":"ccf4619fc7df85d467e077af16a8f1089b565d0ed9ec2d6b4b557eb85b114f5a","tests/build_process.rs":"a958404fc41ff5c00b08b4c69d26f0862160e20c781b4bea88977d85304b6ef5","tests/cli/build.rs":"a7c99bf9fa92d57162260edc157789b712055790d206ce1f576ffc0a5ba8ce97","tests/cli/cmd.rs":"5839a288417c703d89a3bf82d3e8ab7695cc86d84e46d7a79a2f1686ed74a14f","tests/cli/init.rs":"89c53415a124a75b0029e779de5d8a150a3bb44a9932049ce29531d5caf5e273","tests/cli/mod.rs":"15f2e404c83af9b39c40171293df3add505fddccfe2965cd0df888dc9628dcc0","tests/cli/test.rs":"54213817b752d8b6fbc45e190a2aa58fedbbee7e7e21ccfa3df37e89888f4b9a","tests/cli_tests.rs":"7eb7715e4ddc2d5fab9011b938c4ab6b0eb4b0ab8f83cff7aad91352be3b3096","tests/custom_preprocessors.rs":"22a5da0ed34ab2fe85d87ceb70e06c2a5065d66c363a39ce7d45715ae974ad1c","tests/dummy_book/index_html_test/SUMMARY.md":"6cb42be52279c2e62e145c425d8833343f83e6cd8d4951e89cdb322633ff7779","tests/dummy_book/index_html_test/chapter_1.md":"cac4f4a3609ec22eb519b0e07d1d1bdc15ac3d741f29f9b97280f700b96ded66","tests/dummy_book/mod.rs":"3edc7cebe098fafb40e10a1d100bf89c142506373420a76113ef4cee70b36b1d","tests/dummy_book/src/README.md":"2f6e578b9f31ff5e1d18ae40865355d59e56a23e02798bd8166751245ef4eb9b","tests/dummy_book/src/SUMMARY.md":"97a74dea2c96f5e95eff938626e20a494b94aaa999b4c55f2b50ff976609858a","tests/dummy_book/src/conclusion.md":"eca0543344979e938b43debf3d310290a628e8b7b45d3d9bec63c21e61284a4c","tests/dummy_book/src/example.rs":"3be109d6faa3c6104c8fb5e8ffdfe3eba73d0a5ed4f537685fe2cf2c36e657d0","tests/dummy_book/src/first/duplicate-headers.md":"8bac1bdff305a473004774178daf112131d994b3ef2432cc4f3af03495df2ac6","tests/dummy_book/src/first/heading-attributes.md":"2933008e7de7cae6c15a73bb09a94fc1cd1d50db5ea8c8bf8e298f1ad3ee9bae","tests/dummy_book/src/first/includes.md":"747f8f1eb4d394c1fdb773acddb7ffdc641e3ad71b0d15afb0f4e2de13a729ed","tests/dummy_book/src/first/index.md":"e7d1af4cb454c0be73bf1e2f01a97541fba385cd04ac5c9a7acc99809adedee8","tests/dummy_book/src/first/markdown.md":"461753f7f5105e35bc246c752065a44ea1d238f6890bd01b7c34d0a5746f7902","tests/dummy_book/src/first/nested-test-with-anchors.rs":"6fdecb4c62201f2dae36ea7e35693238edca03dcfc42d33eaf1685bc957a6d1d","tests/dummy_book/src/first/nested-test.rs":"ca4cdf552842a957be49ffc753f7585dba3c0036a076fea68174719599d426fa","tests/dummy_book/src/first/nested.md":"485d24764340c0413939e52533ab304c07bb55bd23d0ad9e31151ff889425048","tests/dummy_book/src/first/no-headers.md":"74302855224031296e7739c3a5d881ad4a737d9f2db8f2123f74708ad399721f","tests/dummy_book/src/first/partially-included-test-with-anchors.rs":"501d96562da17cbec46444a004340e711b3fac4b3384f12d7c4844909742c8c8","tests/dummy_book/src/first/partially-included-test.rs":"1bdd1a4f8fdc41ea10868f97de0fe315b2cc592d4cf4aabd784f17dc8c0a6e90","tests/dummy_book/src/first/recursive.md":"9b574239c94c24412dbd918d7b85f557a80cec44d245663cfe1ecdd8ed16765e","tests/dummy_book/src/first/unicode.md":"04a548a642ba5cbc346670a8b38c1aeb5ad23d5a967849783171c634b682de63","tests/dummy_book/src/intro.md":"2749920beee7f563f3ace2bbef204dc66382e052c7945bf27e66912351959a90","tests/dummy_book/src/second.md":"b1344cb47f69621ed68197b81652df1f86254b71b4e3dcbdcf707a4e1fee3340","tests/dummy_book/src/second/nested.md":"b0da2ce6ce1ac5fbda92b5cf7a6a09d39abd267095a29f177e44cd4e8d333d45","tests/dummy_book/src2/README.md":"1bcffb061e737e022f132f78a2dd3193fc0951d0b104e50ddc860d9bc260f505","tests/dummy_book/src2/SUMMARY.md":"4354bec1cae7db3c48dfe869e28e8e29958daef937b33da5e729211372ccb9c9","tests/dummy_book/src2/first/README.md":"ba505ed6c1e18c85ce2ca7070021c719933ce2cf9f28de8565c188c0e4a95d87","tests/dummy_book/src2/second/README.md":"2fb4a90a1359fe3725c3d95888452afd514b0b86bdc4e2768442a71bf5b642a0","tests/dummy_book/src2/second/index.md":"5bf990bec982b9e87d8dfb230fb2dfc96318d9065f97a3d3c5cf27bd134c8bdd","tests/dummy_book/summary-formatting/SUMMARY.md":"ad48a6278c3dbe069cd9c22ae3f04b403a03e0df09b4574a29ec38f41afb83a5","tests/init.rs":"d5ff34cd0ba6a8a9922c8a5268cad6057172ad138d4be4a10fb8d2c9bd2094ac","tests/parse_existing_summary_files.rs":"f4b019e66ffc7f59efd7ec9da73bb70180e4cc23ff27904bf4dfd26491ef64a3","tests/rendered_output.rs":"06f708ebb44149a88b1330bd4aff611287be8bffa92ae4998bd13555f4059900","tests/searchindex_fixture.json":"6af0125e8f74907208d51adb8aa2602b23dd7af947f2e4a8adf7da5aeeafb701","tests/summary_md_files/example_book.md":"e1dd09043d9548612b0bb4e607a8796317272aa1fe7a2bda55db6e6f47d3fc5a","tests/summary_md_files/rust_by_example.md":"c46c8eab64780297b851be196a04d573da69553f4d9c33e24fbd5fb2867efbfd","tests/summary_md_files/rust_ffi_guide.md":"26874d9ad22cfdc2a587e7a495a4404247821d2b6e8eabe07334cacc5a4ea365","tests/summary_md_files/the_book-2nd_edition.md":"7ae64929c45aa7d67560c77e5280a540c22d1b0d2f8fd85f8392ce064c2d5f0a","tests/testing.rs":"675c639c11a020edb9083a068f302a4de085fc53db0a0491098ad16a632b4c8a","triagebot.toml":"5daca5742680c805e2429ebe2cf0c71ec07145f0274dc17589f90d01b5fa5ac7"},"package":"7b67ee4a744f36e6280792016c17e69921b51df357181d1eb17d620fcc3609f3"} \ No newline at end of file
diff --git a/vendor/mdbook/CHANGELOG.md b/vendor/mdbook/CHANGELOG.md
index 2318f1250..b25484fdb 100644
--- a/vendor/mdbook/CHANGELOG.md
+++ b/vendor/mdbook/CHANGELOG.md
@@ -1,5 +1,53 @@
# Changelog
+## mdBook 0.4.31
+[v0.4.30...v0.4.31](https://github.com/rust-lang/mdBook/compare/v0.4.30...v0.4.31)
+
+### Fixed
+- Fixed menu border render flash during page navigation.
+ [#2101](https://github.com/rust-lang/mdBook/pull/2101)
+- Fixed flicker setting sidebar scroll position.
+ [#2104](https://github.com/rust-lang/mdBook/pull/2104)
+- Fixed compile error with proc-macro2 on latest Rust nightly.
+ [#2109](https://github.com/rust-lang/mdBook/pull/2109)
+
+## mdBook 0.4.30
+[v0.4.29...v0.4.30](https://github.com/rust-lang/mdBook/compare/v0.4.29...v0.4.30)
+
+### Added
+- Added support for heading attributes.
+ Attributes are specified in curly braces just after the heading text.
+ An HTML ID can be specified with `#` and classes with `.`.
+ For example: `## My heading {#custom-id .class1 .class2}`
+ [#2013](https://github.com/rust-lang/mdBook/pull/2013)
+- Added support for hidden code lines for languages other than Rust.
+ The `output.html.code.hidelines` table allows you to define the prefix character that will be used to hide code lines based on the language.
+ [#2093](https://github.com/rust-lang/mdBook/pull/2093)
+
+### Fixed
+- Fixed a few minor markdown rendering issues.
+ [#2092](https://github.com/rust-lang/mdBook/pull/2092)
+
+## mdBook 0.4.29
+[v0.4.28...v0.4.29](https://github.com/rust-lang/mdBook/compare/v0.4.28...v0.4.29)
+
+### Changed
+- Built-in fonts are no longer copied when `fonts/fonts.css` is overridden in the theme directory.
+ Additionally, the warning about `copy-fonts` has been removed if `fonts/fonts.css` is specified.
+ [#2080](https://github.com/rust-lang/mdBook/pull/2080)
+- `mdbook init --force` now skips all interactive prompts as intended.
+ [#2057](https://github.com/rust-lang/mdBook/pull/2057)
+- Updated dependencies
+ [#2063](https://github.com/rust-lang/mdBook/pull/2063)
+ [#2086](https://github.com/rust-lang/mdBook/pull/2086)
+ [#2082](https://github.com/rust-lang/mdBook/pull/2082)
+ [#2084](https://github.com/rust-lang/mdBook/pull/2084)
+ [#2085](https://github.com/rust-lang/mdBook/pull/2085)
+
+### Fixed
+- Switched from the `gitignore` library to `ignore`. This should bring some improvements with gitignore handling.
+ [#2076](https://github.com/rust-lang/mdBook/pull/2076)
+
## mdBook 0.4.28
[v0.4.27...v0.4.28](https://github.com/rust-lang/mdBook/compare/v0.4.27...v0.4.28)
diff --git a/vendor/mdbook/Cargo.lock b/vendor/mdbook/Cargo.lock
index 9b05b697e..ec82e2e76 100644
--- a/vendor/mdbook/Cargo.lock
+++ b/vendor/mdbook/Cargo.lock
@@ -12,6 +12,15 @@ dependencies = [
]
[[package]]
+name = "aho-corasick"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "67fc08ce920c31afb70f013dcce1bfc3a3195de6a228474e45e1f145b36f8d04"
+dependencies = [
+ "memchr",
+]
+
+[[package]]
name = "ammonia"
version = "3.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -34,20 +43,70 @@ dependencies = [
]
[[package]]
+name = "anstream"
+version = "0.3.2"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "0ca84f3628370c59db74ee214b3263d58f9aadd9b4fe7e711fd87dc452b7f163"
+dependencies = [
+ "anstyle",
+ "anstyle-parse",
+ "anstyle-query",
+ "anstyle-wincon",
+ "colorchoice",
+ "is-terminal",
+ "utf8parse",
+]
+
+[[package]]
+name = "anstyle"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "41ed9a86bf92ae6580e0a31281f65a1b1d867c0cc68d5346e2ae128dddfa6a7d"
+
+[[package]]
+name = "anstyle-parse"
+version = "0.2.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e765fd216e48e067936442276d1d57399e37bce53c264d6fefbe298080cb57ee"
+dependencies = [
+ "utf8parse",
+]
+
+[[package]]
+name = "anstyle-query"
+version = "1.0.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "5ca11d4be1bab0c8bc8734a9aa7bf4ee8316d462a08c6ac5052f888fef5b494b"
+dependencies = [
+ "windows-sys 0.48.0",
+]
+
+[[package]]
+name = "anstyle-wincon"
+version = "1.0.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "180abfa45703aebe0093f79badacc01b8fd4ea2e35118747e5811127f926e188"
+dependencies = [
+ "anstyle",
+ "windows-sys 0.48.0",
+]
+
+[[package]]
name = "anyhow"
-version = "1.0.69"
+version = "1.0.71"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "224afbd727c3d6e4b90103ece64b8d1b67fbb1973b1046c2281eed3f3803f800"
+checksum = "9c7d0618f0e0b7e8ff11427422b64564d5fb0be1940354bfe2e0529b18a9d9b8"
[[package]]
name = "assert_cmd"
-version = "2.0.8"
+version = "2.0.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9834fcc22e0874394a010230586367d4a3e9f11b560f469262678547e1d2575e"
+checksum = "86d6b683edf8d1119fe420a94f8a7e389239666aa72e65495d91c00462510151"
dependencies = [
+ "anstyle",
"bstr",
"doc-comment",
- "predicates",
+ "predicates 3.0.3",
"predicates-core",
"predicates-tree",
"wait-timeout",
@@ -66,6 +125,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9e1b586273c5702936fe7b7d6896644d8be71e6314cfe09d3167c95f712589e8"
[[package]]
+name = "base64"
+version = "0.21.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a4a4ddaa51a5bc52a6948f74c06d20aaaddb71924eab79b8c97a8c556e942d6a"
+
+[[package]]
name = "bit-set"
version = "0.5.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -88,18 +153,18 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]]
name = "block-buffer"
-version = "0.10.3"
+version = "0.10.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "69cce20737498f97b993470a6e536b8523f0af7892a4f928cceb1ac5e52ebe7e"
+checksum = "3078c7629b62d3f0439517fa394996acacc5cbc91c5a20d8c658e77abd503a71"
dependencies = [
"generic-array",
]
[[package]]
name = "bstr"
-version = "1.0.1"
+version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fca0852af221f458706eb0725c03e4ed6c46af9ac98e6a689d5e634215d594dd"
+checksum = "c3d4260bcc2e8fc9df1eac4919a720effeb63a3f0952f5bf4944adfa18897f09"
dependencies = [
"memchr",
"once_cell",
@@ -109,9 +174,9 @@ dependencies = [
[[package]]
name = "bumpalo"
-version = "3.11.1"
+version = "3.12.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "572f695136211188308f16ad2ca5c851a712c464060ae6974944458eb83880ba"
+checksum = "3c6ed94e98ecff0c12dd1b04c15ec0d7d9458ca8fe806cea6f12954efe74c63b"
[[package]]
name = "byteorder"
@@ -121,15 +186,15 @@ checksum = "14c189c53d098945499cdfa7ecc63567cf3886b3332b312a5b4585d8d3a6a610"
[[package]]
name = "bytes"
-version = "1.3.0"
+version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "dfb24e866b15a1af2a1b663f10c6b6b8f397a84aadb828f12e5b289ec23a3a3c"
+checksum = "89b2fd2a0dcf38d7971e2194b6b6eebab45ae01067456a7fd93d5547a61b70be"
[[package]]
name = "cc"
-version = "1.0.77"
+version = "1.0.79"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e9f73505338f7d905b19d18738976aae232eb46b8efc15554ffc56deb5d9ebe4"
+checksum = "50d30906286121d95be3d479533b458f87493b30a4b5f79a607db8f5d11aa91f"
[[package]]
name = "cfg-if"
@@ -139,9 +204,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
[[package]]
name = "chrono"
-version = "0.4.23"
+version = "0.4.24"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "16b0a3d9ed01224b22057780a37bb8c5dbfe1be8ba48678e7bf57ec4b385411f"
+checksum = "4e3c5919066adf22df73762e50cffcde3a758f2a848b113b586d1f86728b673b"
dependencies = [
"iana-time-zone",
"num-integer",
@@ -151,67 +216,69 @@ dependencies = [
[[package]]
name = "clap"
-version = "4.0.29"
+version = "4.2.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "34d21f9bf1b425d2968943631ec91202fe5e837264063503708b83013f8fc938"
+dependencies = [
+ "clap_builder",
+]
+
+[[package]]
+name = "clap_builder"
+version = "4.2.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4d63b9e9c07271b9957ad22c173bae2a4d9a81127680962039296abcd2f8251d"
+checksum = "914c8c79fb560f238ef6429439a30023c862f7a28e688c58f7203f12b29970bd"
dependencies = [
+ "anstream",
+ "anstyle",
"bitflags",
"clap_lex",
- "is-terminal",
"once_cell",
"strsim",
- "termcolor",
"terminal_size",
]
[[package]]
name = "clap_complete"
-version = "4.0.6"
+version = "4.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b7b3c9eae0de7bf8e3f904a5e40612b21fb2e2e566456d177809a48b892d24da"
+checksum = "1594fe2312ec4abf402076e407628f5c313e54c32ade058521df4ee34ecac8a8"
dependencies = [
"clap",
]
[[package]]
name = "clap_lex"
-version = "0.3.0"
+version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0d4198f73e42b4936b35b5bb248d81d2b595ecb170da0bac7655c54eedfa8da8"
-dependencies = [
- "os_str_bytes",
-]
+checksum = "8a2dd5a6fe8c6e3502f568a6353e5273bbb15193ad9a89e457b9970798efbea1"
[[package]]
-name = "codespan-reporting"
-version = "0.11.1"
+name = "colorchoice"
+version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e"
-dependencies = [
- "termcolor",
- "unicode-width",
-]
+checksum = "acbf1af155f9b9ef647e42cdc158db4b64a1b61f743629225fde6f3e0be2a7c7"
[[package]]
name = "core-foundation-sys"
-version = "0.8.3"
+version = "0.8.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
+checksum = "e496a50fda8aacccc86d7529e2c1e0892dbd0f898a6b5645b5561b89c3210efa"
[[package]]
name = "cpufeatures"
-version = "0.2.5"
+version = "0.2.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28d997bd5e24a5928dd43e46dc529867e207907fe0b239c3477d924f7f2ca320"
+checksum = "3e4c1eaa2012c47becbbad2ab175484c2a84d1185b566fb2cc5b8707343dfe58"
dependencies = [
"libc",
]
[[package]]
name = "crossbeam-channel"
-version = "0.5.6"
+version = "0.5.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c2dd04ddaf88237dc3b8d8f9a3c1004b506b54b3313403944054d23c0870c521"
+checksum = "a33c2bf77f2df06183c3aa30d1e96c0695a313d4f9c453cc3762a6db39f99200"
dependencies = [
"cfg-if",
"crossbeam-utils",
@@ -219,9 +286,9 @@ dependencies = [
[[package]]
name = "crossbeam-utils"
-version = "0.8.14"
+version = "0.8.15"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4fb766fa798726286dbbb842f174001dab8abc7b627a1dd86e0b7222a95d929f"
+checksum = "3c063cd8cc95f5c377ed0d4b49a4b21f632396ff690e8470c29b3359b346984b"
dependencies = [
"cfg-if",
]
@@ -243,51 +310,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6d2301688392eb071b0bf1a37be05c469d3cc4dbbd95df672fe28ab021e6a096"
dependencies = [
"quote",
- "syn",
-]
-
-[[package]]
-name = "cxx"
-version = "1.0.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bdf07d07d6531bfcdbe9b8b739b104610c6508dcc4d63b410585faf338241daf"
-dependencies = [
- "cc",
- "cxxbridge-flags",
- "cxxbridge-macro",
- "link-cplusplus",
-]
-
-[[package]]
-name = "cxx-build"
-version = "1.0.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d2eb5b96ecdc99f72657332953d4d9c50135af1bac34277801cc3937906ebd39"
-dependencies = [
- "cc",
- "codespan-reporting",
- "once_cell",
- "proc-macro2",
- "quote",
- "scratch",
- "syn",
-]
-
-[[package]]
-name = "cxxbridge-flags"
-version = "1.0.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ac040a39517fd1674e0f32177648334b0f4074625b5588a64519804ba0553b12"
-
-[[package]]
-name = "cxxbridge-macro"
-version = "1.0.83"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1362b0ddcfc4eb0a1f57b68bd77dd99f0e826958a96abd0ae9bd092e114ffed6"
-dependencies = [
- "proc-macro2",
- "quote",
- "syn",
+ "syn 1.0.105",
]
[[package]]
@@ -320,15 +343,15 @@ checksum = "fea41bba32d969b513997752735605054bc0dfa92b4c56bf1189f2e174be7a10"
[[package]]
name = "either"
-version = "1.8.0"
+version = "1.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "90e5c1c8368803113bf0c9584fc495a58b86dc8a29edbf8fe877d21d9507e797"
+checksum = "7fcaabb2fef8c910e7f4c7ce9f67a1283a1715879a7c230ca9d6d1ae31f16d91"
[[package]]
name = "elasticlunr-rs"
-version = "3.0.1"
+version = "3.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "b94d9c8df0fe6879ca12e7633fdfe467c503722cc981fc463703472d2b876448"
+checksum = "41e83863a500656dfa214fee6682de9c5b9f03de6860fec531235ed2ae9f6571"
dependencies = [
"regex",
"serde",
@@ -361,6 +384,17 @@ dependencies = [
]
[[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",
+]
+
+[[package]]
name = "errno-dragonfly"
version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -372,23 +406,23 @@ dependencies = [
[[package]]
name = "fastrand"
-version = "1.8.0"
+version = "1.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a7a407cfaa3385c4ae6b23e84623d48c2798d06e3e6a1878f7f59f17b3f86499"
+checksum = "e51093e27b0797c359783294ca4f0a911c270184cb10f85783b118614a1501be"
dependencies = [
"instant",
]
[[package]]
name = "filetime"
-version = "0.2.19"
+version = "0.2.21"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4e884668cd0c7480504233e951174ddc3b382f7c2666e3b7310b5c4e7b0c37f9"
+checksum = "5cbc844cecaee9d4443931972e1289c8ff485cb4cc2767cb03ca139ed6885153"
dependencies = [
"cfg-if",
"libc",
"redox_syscall",
- "windows-sys",
+ "windows-sys 0.48.0",
]
[[package]]
@@ -436,9 +470,9 @@ dependencies = [
[[package]]
name = "futures-channel"
-version = "0.3.25"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "52ba265a92256105f45b719605a571ffe2d1f0fea3807304b522c1d778f79eed"
+checksum = "955518d47e09b25bbebc7a18df10b81f0c766eaf4c4f1cccef2fca5f2a4fb5f2"
dependencies = [
"futures-core",
"futures-sink",
@@ -446,38 +480,38 @@ dependencies = [
[[package]]
name = "futures-core"
-version = "0.3.25"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "04909a7a7e4633ae6c4a9ab280aeb86da1236243a77b694a49eacd659a4bd3ac"
+checksum = "4bca583b7e26f571124fe5b7561d49cb2868d79116cfa0eefce955557c6fee8c"
[[package]]
name = "futures-macro"
-version = "0.3.25"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bdfb8ce053d86b91919aad980c220b1fb8401a9394410e1c289ed7e66b61835d"
+checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
dependencies = [
"proc-macro2",
"quote",
- "syn",
+ "syn 2.0.15",
]
[[package]]
name = "futures-sink"
-version = "0.3.25"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "39c15cf1a4aa79df40f1bb462fb39676d0ad9e366c2a33b590d7c66f4f81fcf9"
+checksum = "f43be4fe21a13b9781a69afa4985b0f6ee0e1afab2c6f454a8cf30e2b2237b6e"
[[package]]
name = "futures-task"
-version = "0.3.25"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2ffb393ac5d9a6eaa9d3fdf37ae2776656b706e200c8e16b1bdb227f5198e6ea"
+checksum = "76d3d132be6c0e6aa1534069c705a74a5997a356c0dc2f86a47765e5617c5b65"
[[package]]
name = "futures-util"
-version = "0.3.25"
+version = "0.3.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "197676987abd2f9cadff84926f410af1c183608d36641465df73ae8211dc65d6"
+checksum = "26b01e40b772d54cf6c6d721c1d1abd0647a0106a12ecaa1c186273392a69533"
dependencies = [
"futures-core",
"futures-macro",
@@ -490,9 +524,9 @@ dependencies = [
[[package]]
name = "generic-array"
-version = "0.14.6"
+version = "0.14.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bff49e947297f3312447abdca79f45f4738097cc82b06e72054d2223f601f1b9"
+checksum = "85649ca51fd72272d7821adaf274ad91c288277713d9c18820d8499a7ff69e9a"
dependencies = [
"typenum",
"version_check",
@@ -500,9 +534,9 @@ dependencies = [
[[package]]
name = "getrandom"
-version = "0.2.8"
+version = "0.2.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c05aeb6a22b8f62540c194aac980f2115af067bfe15a0734d7277a768d396b31"
+checksum = "c85e1d9ab2eadba7e5040d4e09cbd6d072b76a557ad64e797c2cb9d4da21d7e4"
dependencies = [
"cfg-if",
"libc",
@@ -510,25 +544,23 @@ dependencies = [
]
[[package]]
-name = "gitignore"
-version = "1.0.7"
+name = "globset"
+version = "0.4.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "78aa90e4620c1498ac434c06ba6e521b525794bbdacf085d490cc794b4a2f9a4"
+checksum = "029d74589adefde59de1a0c4f4732695c32805624aec7b68d91503d4dba79afc"
dependencies = [
- "glob",
+ "aho-corasick 0.7.20",
+ "bstr",
+ "fnv",
+ "log",
+ "regex",
]
[[package]]
-name = "glob"
-version = "0.3.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b919933a397b79c37e33b77bb2aa3dc8eb6e165ad809e58ff75bc7db2e34574"
-
-[[package]]
name = "h2"
-version = "0.3.15"
+version = "0.3.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5f9f29bc9dda355256b2916cf526ab02ce0aeaaaf2bad60d65ef3f12f11dd0f4"
+checksum = "d357c7ae988e7d2182f7d7871d0b963962420b0678b0997ce7de72001aeab782"
dependencies = [
"bytes",
"fnv",
@@ -545,9 +577,9 @@ dependencies = [
[[package]]
name = "handlebars"
-version = "4.3.6"
+version = "4.3.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "035ef95d03713f2c347a72547b7cd38cbc9af7cd51e6099fb62d586d4a6dee3a"
+checksum = "83c3372087601b532857d332f5957cbae686da52bb7810bf038c3e3c3cc2fa0d"
dependencies = [
"log",
"pest",
@@ -569,7 +601,7 @@ version = "0.3.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f3e372db8e5c0d213e0cd0b9be18be2aca3d44cf2fe30a9d46a65581cd454584"
dependencies = [
- "base64",
+ "base64 0.13.1",
"bitflags",
"bytes",
"headers-core",
@@ -590,21 +622,18 @@ dependencies = [
[[package]]
name = "hermit-abi"
-version = "0.1.19"
+version = "0.2.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "62b467343b94ba476dcb2500d242dadbb39557df889310ac77c5d99100aaac33"
+checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7"
dependencies = [
"libc",
]
[[package]]
name = "hermit-abi"
-version = "0.2.6"
+version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ee512640fe35acbfb4bb779db6f0d80704c2cacfa2e39b601ef3e3f47d1ae4c7"
-dependencies = [
- "libc",
-]
+checksum = "fed44880c466736ef9a5c5b5facefb5ed0785676d0c02d612db14e54f0d84286"
[[package]]
name = "html5ever"
@@ -617,14 +646,14 @@ dependencies = [
"markup5ever",
"proc-macro2",
"quote",
- "syn",
+ "syn 1.0.105",
]
[[package]]
name = "http"
-version = "0.2.8"
+version = "0.2.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "75f43d41e26995c17e71ee126451dd3941010b0514a81a9d11f3b341debc2399"
+checksum = "bd6effc99afb63425aff9b05836f029929e345a6148a14b7ecd5ab67af944482"
dependencies = [
"bytes",
"fnv",
@@ -662,9 +691,9 @@ checksum = "9a3a5bfb195931eeb336b2a7b4d761daec841b97f947d34394601737a7bba5e4"
[[package]]
name = "hyper"
-version = "0.14.23"
+version = "0.14.26"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "034711faac9d2166cb1baf1a2fb0b60b1f277f8492fd72176c17f3515e1abd3c"
+checksum = "ab302d72a6f11a3b910431ff93aae7e773078c769f0a3ef15fb9ec692ed147d4"
dependencies = [
"bytes",
"futures-channel",
@@ -686,26 +715,25 @@ dependencies = [
[[package]]
name = "iana-time-zone"
-version = "0.1.53"
+version = "0.1.56"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "64c122667b287044802d6ce17ee2ddf13207ed924c712de9a66a5814d5b64765"
+checksum = "0722cd7114b7de04316e7ea5456a0bbb20e4adb46fd27a3697adb812cff0f37c"
dependencies = [
"android_system_properties",
"core-foundation-sys",
"iana-time-zone-haiku",
"js-sys",
"wasm-bindgen",
- "winapi",
+ "windows",
]
[[package]]
name = "iana-time-zone-haiku"
-version = "0.1.1"
+version = "0.1.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0703ae284fc167426161c2e3f1da3ea71d94b21bedbcc9494e92b28e334e3dca"
+checksum = "f31827a206f56af32e590ba56d5d2d085f558508192593743f16b2306495269f"
dependencies = [
- "cxx",
- "cxx-build",
+ "cc",
]
[[package]]
@@ -719,10 +747,27 @@ dependencies = [
]
[[package]]
+name = "ignore"
+version = "0.4.20"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "dbe7873dab538a9a44ad79ede1faf5f30d49f9a5c883ddbab48bce81b64b7492"
+dependencies = [
+ "globset",
+ "lazy_static",
+ "log",
+ "memchr",
+ "regex",
+ "same-file",
+ "thread_local",
+ "walkdir",
+ "winapi-util",
+]
+
+[[package]]
name = "indexmap"
-version = "1.9.2"
+version = "1.9.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1885e79c1fc4b10f0e172c475f458b7f7b93061064d98c3293e98c5ba0c8b399"
+checksum = "bd070e393353796e801d209ad339e89596eb4c8d430d18ede6a1cced8fafbd99"
dependencies = [
"autocfg",
"hashbrown",
@@ -759,24 +804,25 @@ dependencies = [
[[package]]
name = "io-lifetimes"
-version = "1.0.3"
+version = "1.0.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "46112a93252b123d31a119a8d1a1ac19deac4fac6e0e8b0df58f0d4e5870e63c"
+checksum = "9c66c74d2ae7e79a5a8f7ac924adbe38ee42a859c6539ad869eb51f0b52dc220"
dependencies = [
+ "hermit-abi 0.3.1",
"libc",
- "windows-sys",
+ "windows-sys 0.48.0",
]
[[package]]
name = "is-terminal"
-version = "0.4.1"
+version = "0.4.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "927609f78c2913a6f6ac3c27a4fe87f43e2a35367c0c4b0f8265e8f49a104330"
+checksum = "adcf93614601c8129ddf72e2d5633df827ba6551541c6d8c59520a371475be1f"
dependencies = [
- "hermit-abi 0.2.6",
+ "hermit-abi 0.3.1",
"io-lifetimes",
- "rustix",
- "windows-sys",
+ "rustix 0.37.19",
+ "windows-sys 0.48.0",
]
[[package]]
@@ -790,15 +836,15 @@ dependencies = [
[[package]]
name = "itoa"
-version = "1.0.4"
+version = "1.0.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4217ad341ebadf8d8e724e264f13e593e0648f5b3e94b3896a5df283be015ecc"
+checksum = "453ad9f582a441959e5f0d088b02ce04cfe8d51a8eaf077f12ac6d3e94164ca6"
[[package]]
name = "js-sys"
-version = "0.3.60"
+version = "0.3.62"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "49409df3e3bf0856b916e2ceaca09ee28e6871cf7d9ce97a692cacfdb2a25a47"
+checksum = "68c16e1bfd491478ab155fd8b4896b86f9ede344949b641e61501e07c2b8b4d5"
dependencies = [
"wasm-bindgen",
]
@@ -824,19 +870,16 @@ dependencies = [
]
[[package]]
-name = "libc"
-version = "0.2.138"
+name = "lazy_static"
+version = "1.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "db6d7e329c562c5dfab7a46a2afabc8b987ab9a4834c9d1ca04dc54c1546cef8"
+checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646"
[[package]]
-name = "link-cplusplus"
-version = "1.0.7"
+name = "libc"
+version = "0.2.144"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9272ab7b96c9046fbc5bc56c06c117cb639fe2d509df0c421cad82d2915cf369"
-dependencies = [
- "cc",
-]
+checksum = "2b00cc1c228a6782d0f076e7b232802e0c5689d41bb5df366f2a6b6621cfdfe1"
[[package]]
name = "linux-raw-sys"
@@ -845,6 +888,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f051f77a7c8e6957c0696eac88f26b0117e54f52d3fc682ab19397a8812846a4"
[[package]]
+name = "linux-raw-sys"
+version = "0.3.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ece97ea872ece730aed82664c424eb4c8291e1ff2480247ccf7409044bc6479f"
+
+[[package]]
name = "lock_api"
version = "0.4.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -903,7 +952,7 @@ dependencies = [
[[package]]
name = "mdbook"
-version = "0.4.28"
+version = "0.4.31"
dependencies = [
"ammonia",
"anyhow",
@@ -914,15 +963,15 @@ dependencies = [
"elasticlunr-rs",
"env_logger",
"futures-util",
- "gitignore",
"handlebars",
+ "ignore",
"log",
"memchr",
"notify",
"notify-debouncer-mini",
"once_cell",
"opener",
- "predicates",
+ "predicates 2.1.5",
"pretty_assertions",
"pulldown-cmark",
"regex",
@@ -947,9 +996,9 @@ checksum = "2dffe52ecf27772e601905b7522cb4ef790d2cc203488bbd0e2fe85fcb74566d"
[[package]]
name = "mime"
-version = "0.3.16"
+version = "0.3.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2a60c7ce501c71e03a9c9c0d35b861413ae925bd979cc7a4e30d060069aaac8d"
+checksum = "6877bb514081ee2a7ff5ef9de3281f14a4dd4bceac4c09388074a6b5df8a139a"
[[package]]
name = "mime_guess"
@@ -970,7 +1019,7 @@ dependencies = [
"libc",
"log",
"wasi",
- "windows-sys",
+ "windows-sys 0.42.0",
]
[[package]]
@@ -1000,7 +1049,7 @@ dependencies = [
"libc",
"mio",
"walkdir",
- "windows-sys",
+ "windows-sys 0.42.0",
]
[[package]]
@@ -1034,19 +1083,19 @@ dependencies = [
[[package]]
name = "num_cpus"
-version = "1.14.0"
+version = "1.15.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f6058e64324c71e02bc2b150e4f3bc8286db6c83092132ffa3f6b1eab0f9def5"
+checksum = "0fac9e2da13b5eb447a6ce3d392f23a29d8694bff781bf03a16cd9ac8697593b"
dependencies = [
- "hermit-abi 0.1.19",
+ "hermit-abi 0.2.6",
"libc",
]
[[package]]
name = "once_cell"
-version = "1.17.0"
+version = "1.17.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6f61fba1741ea2b3d6a1e3178721804bb716a68a6aeba1149b5d52e3d464ea66"
+checksum = "b7e5500299e16ebb147ae15a00a942af264cf3688f47923b8fc2cd5858f23ad3"
[[package]]
name = "opener"
@@ -1059,12 +1108,6 @@ dependencies = [
]
[[package]]
-name = "os_str_bytes"
-version = "6.4.1"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee"
-
-[[package]]
name = "output_vt100"
version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1085,15 +1128,15 @@ dependencies = [
[[package]]
name = "parking_lot_core"
-version = "0.9.5"
+version = "0.9.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "7ff9f3fef3968a3ec5945535ed654cb38ff72d7495a25619e2247fb15a2ed9ba"
+checksum = "ba1ef8814b5c993410bb3adfad7a5ed269563e4a2f90c41f5d85be7fb47133bf"
dependencies = [
"cfg-if",
"libc",
"redox_syscall",
"smallvec",
- "windows-sys",
+ "windows-sys 0.42.0",
]
[[package]]
@@ -1104,9 +1147,9 @@ checksum = "478c572c3d73181ff3c2539045f6eb99e5491218eae919370993b890cdbdd98e"
[[package]]
name = "pest"
-version = "2.5.1"
+version = "2.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cc8bed3549e0f9b0a2a78bf7c0018237a2cdf085eecbbc048e52612438e4e9d0"
+checksum = "e68e84bfb01f0507134eac1e9b410a12ba379d064eab48c50ba4ce329a527b70"
dependencies = [
"thiserror",
"ucd-trie",
@@ -1114,9 +1157,9 @@ dependencies = [
[[package]]
name = "pest_derive"
-version = "2.5.1"
+version = "2.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cdc078600d06ff90d4ed238f0119d84ab5d43dbaad278b0e33a8820293b32344"
+checksum = "6b79d4c71c865a25a4322296122e3924d30bc8ee0834c8bfc8b95f7f054afbfb"
dependencies = [
"pest",
"pest_generator",
@@ -1124,26 +1167,26 @@ dependencies = [
[[package]]
name = "pest_generator"
-version = "2.5.1"
+version = "2.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "28a1af60b1c4148bb269006a750cff8e2ea36aff34d2d96cf7be0b14d1bed23c"
+checksum = "6c435bf1076437b851ebc8edc3a18442796b30f1728ffea6262d59bbe28b077e"
dependencies = [
"pest",
"pest_meta",
"proc-macro2",
"quote",
- "syn",
+ "syn 2.0.15",
]
[[package]]
name = "pest_meta"
-version = "2.5.1"
+version = "2.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fec8605d59fc2ae0c6c1aefc0c7c7a9769732017c0ce07f7a9cfffa7b4404f20"
+checksum = "745a452f8eb71e39ffd8ee32b3c5f51d03845f99786fa9b68db6ff509c505411"
dependencies = [
"once_cell",
"pest",
- "sha1",
+ "sha2",
]
[[package]]
@@ -1186,22 +1229,22 @@ dependencies = [
[[package]]
name = "pin-project"
-version = "1.0.12"
+version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ad29a609b6bcd67fee905812e544992d216af9d755757c05ed2d0e15a74c6ecc"
+checksum = "c95a7476719eab1e366eaf73d0260af3021184f18177925b07f54b30089ceead"
dependencies = [
"pin-project-internal",
]
[[package]]
name = "pin-project-internal"
-version = "1.0.12"
+version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "069bdb1e05adc7a8990dce9cc75370895fbe4e3d58b9b73bf1aee56359344a55"
+checksum = "39407670928234ebc5e6e580247dd567ad73a3578460c5990f9503df207e8f07"
dependencies = [
"proc-macro2",
"quote",
- "syn",
+ "syn 2.0.15",
]
[[package]]
@@ -1243,16 +1286,28 @@ dependencies = [
]
[[package]]
+name = "predicates"
+version = "3.0.3"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "09963355b9f467184c04017ced4a2ba2d75cbcb4e7462690d388233253d4b1a9"
+dependencies = [
+ "anstyle",
+ "difflib",
+ "itertools",
+ "predicates-core",
+]
+
+[[package]]
name = "predicates-core"
-version = "1.0.5"
+version = "1.0.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "72f883590242d3c6fc5bf50299011695fa6590c2c70eac95ee1bdb9a733ad1a2"
+checksum = "b794032607612e7abeb4db69adb4e33590fa6cf1149e95fd7cb00e634b92f174"
[[package]]
name = "predicates-tree"
-version = "1.0.7"
+version = "1.0.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "54ff541861505aabf6ea722d2131ee980b8276e10a1297b94e896dd8b621850d"
+checksum = "368ba315fb8c5052ab692e68a0eefec6ec57b23a36959c14496f0b0df2c0cecf"
dependencies = [
"predicates-core",
"termtree",
@@ -1272,18 +1327,18 @@ dependencies = [
[[package]]
name = "proc-macro2"
-version = "1.0.47"
+version = "1.0.63"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5ea3d908b0e36316caf9e9e2c4625cdde190a7e6f440d794667ed17a1855e725"
+checksum = "7b368fba921b0dce7e60f5e04ec15e565b3303972b42bcfde1d0713b881959eb"
dependencies = [
"unicode-ident",
]
[[package]]
name = "pulldown-cmark"
-version = "0.9.2"
+version = "0.9.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "2d9cc634bc78768157b5cbfe988ffcd1dcba95cd2b2f03a88316c08c6d00ed63"
+checksum = "77a1a2f1f0a7ecff9c31abbe177637be0e97a0aef46cf8738ece09327985d998"
dependencies = [
"bitflags",
"memchr",
@@ -1292,9 +1347,9 @@ dependencies = [
[[package]]
name = "quote"
-version = "1.0.21"
+version = "1.0.27"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bbe448f377a7d6961e30f5955f9b8d106c3f5e449d493ee1b125c1d43c2b5179"
+checksum = "8f4f29d145265ec1c483c7c654450edde0bfe043d3938d6972630663356d9500"
dependencies = [
"proc-macro2",
]
@@ -1340,11 +1395,11 @@ dependencies = [
[[package]]
name = "regex"
-version = "1.7.1"
+version = "1.8.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "48aaa5748ba571fb95cd2c85c09f629215d3a6ece942baa100950af03a34f733"
+checksum = "af83e617f331cc6ae2da5443c602dfa5af81e517212d9d611a5b3ba1777b5370"
dependencies = [
- "aho-corasick",
+ "aho-corasick 1.0.1",
"memchr",
"regex-syntax",
]
@@ -1357,47 +1412,52 @@ checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
[[package]]
name = "regex-syntax"
-version = "0.6.28"
+version = "0.7.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "456c603be3e8d448b072f410900c09faf164fbce2d480456f50eea6e25f9c848"
+checksum = "a5996294f19bd3aae0453a862ad728f60e6600695733dd5df01da90c54363a3c"
[[package]]
-name = "remove_dir_all"
-version = "0.5.3"
+name = "rustix"
+version = "0.36.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3acd125665422973a33ac9d3dd2df85edad0f4ae9b00dafb1a05e43a9f5ef8e7"
+checksum = "d4fdebc4b395b7fbb9ab11e462e20ed9051e7b16e42d24042c776eca0ac81b03"
dependencies = [
- "winapi",
+ "bitflags",
+ "errno 0.2.8",
+ "io-lifetimes",
+ "libc",
+ "linux-raw-sys 0.1.4",
+ "windows-sys 0.42.0",
]
[[package]]
name = "rustix"
-version = "0.36.5"
+version = "0.37.19"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "a3807b5d10909833d3e9acd1eb5fb988f79376ff10fce42937de71a449c4c588"
+checksum = "acf8729d8542766f1b2cf77eb034d52f40d375bb8b615d0b147089946e16613d"
dependencies = [
"bitflags",
- "errno",
+ "errno 0.3.1",
"io-lifetimes",
"libc",
- "linux-raw-sys",
- "windows-sys",
+ "linux-raw-sys 0.3.7",
+ "windows-sys 0.48.0",
]
[[package]]
name = "rustls-pemfile"
-version = "0.2.1"
+version = "1.0.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5eebeaeb360c87bfb72e84abdb3447159c0eaececf1bef2aecd65a8be949d1c9"
+checksum = "d194b56d58803a43635bdc398cd17e383d6f71f9182b9a192c127ca42494a59b"
dependencies = [
- "base64",
+ "base64 0.21.0",
]
[[package]]
name = "ryu"
-version = "1.0.11"
+version = "1.0.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4501abdff3ae82a1c1b477a17252eb69cee9e66eb915c1abaa4f44d873df9f09"
+checksum = "f91339c0467de62360649f8d3e185ca8de4224ff281f66000de5eb2a77a79041"
[[package]]
name = "same-file"
@@ -1421,12 +1481,6 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd"
[[package]]
-name = "scratch"
-version = "1.0.2"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "9c8132065adcfd6e02db789d9285a0deb2f3fcb04002865ab67d5fb103533898"
-
-[[package]]
name = "select"
version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1439,35 +1493,35 @@ dependencies = [
[[package]]
name = "semver"
-version = "1.0.16"
+version = "1.0.17"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "58bc9567378fc7690d6b2addae4e60ac2eeea07becb2c64b9f218b53865cba2a"
+checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed"
[[package]]
name = "serde"
-version = "1.0.152"
+version = "1.0.163"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bb7d1f0d3021d347a83e556fc4683dea2ea09d87bccdf88ff5c12545d89d5efb"
+checksum = "2113ab51b87a539ae008b5c6c02dc020ffa39afd2d83cffcb3f4eb2722cebec2"
dependencies = [
"serde_derive",
]
[[package]]
name = "serde_derive"
-version = "1.0.152"
+version = "1.0.163"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "af487d118eecd09402d70a5d72551860e788df87b464af30e5ea6a38c75c541e"
+checksum = "8c805777e3930c8883389c602315a24224bcc738b63905ef87cd1420353ea93e"
dependencies = [
"proc-macro2",
"quote",
- "syn",
+ "syn 2.0.15",
]
[[package]]
name = "serde_json"
-version = "1.0.93"
+version = "1.0.96"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cad406b69c91885b5107daf2c29572f6c8cdb3c66826821e286c533490c0bc76"
+checksum = "057d394a50403bcac12672b2b18fb387ab6d289d957dab67dd201875391e52f1"
dependencies = [
"itoa",
"ryu",
@@ -1487,10 +1541,10 @@ dependencies = [
]
[[package]]
-name = "sha-1"
-version = "0.10.1"
+name = "sha1"
+version = "0.10.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f5058ada175748e33390e40e872bd0fe59a19f265d0158daa551c5a88a76009c"
+checksum = "f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3"
dependencies = [
"cfg-if",
"cpufeatures",
@@ -1498,10 +1552,10 @@ dependencies = [
]
[[package]]
-name = "sha1"
-version = "0.10.5"
+name = "sha2"
+version = "0.10.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f04293dc80c3993519f2d7f6f511707ee7094fe0c6d3406feb330cdb3540eba3"
+checksum = "82e6b795fe2e3b1e845bafcb27aa35405c4d47cdfc92af5fc8d3002f76cebdc0"
dependencies = [
"cfg-if",
"cpufeatures",
@@ -1522,9 +1576,9 @@ checksum = "7bd3e3206899af3f8b12af284fafc038cc1dc2b41d1b89dd17297221c5d225de"
[[package]]
name = "slab"
-version = "0.4.7"
+version = "0.4.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4614a76b2a8be0058caa9dbbaf66d988527d86d003c11a94fbd335d7661edcef"
+checksum = "6528351c9bc8ab22353f9d776db39a20288e8d6c37ef8cfe3317cf875eecfc2d"
dependencies = [
"autocfg",
]
@@ -1537,9 +1591,9 @@ checksum = "a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0"
[[package]]
name = "socket2"
-version = "0.4.7"
+version = "0.4.9"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "02e2d2db9033d13a1567121ddd7a095ee144db4e1ca1b1bda3419bc0da294ebd"
+checksum = "64a4a911eed85daf18834cfaa86a79b7d266ff93ff5ba14005426219480ed662"
dependencies = [
"libc",
"winapi",
@@ -1547,9 +1601,9 @@ dependencies = [
[[package]]
name = "string_cache"
-version = "0.8.4"
+version = "0.8.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "213494b7a2b503146286049378ce02b482200519accc31872ee8be91fa820a08"
+checksum = "f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b"
dependencies = [
"new_debug_unreachable",
"once_cell",
@@ -1589,17 +1643,27 @@ dependencies = [
]
[[package]]
+name = "syn"
+version = "2.0.15"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "a34fcf3e8b60f57e6a14301a2e916d323af98b0ea63c599441eec8558660c822"
+dependencies = [
+ "proc-macro2",
+ "quote",
+ "unicode-ident",
+]
+
+[[package]]
name = "tempfile"
-version = "3.3.0"
+version = "3.4.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5cdb1ef4eaeeaddc8fbd371e5017057064af0911902ef36b39801f67cc6d79e4"
+checksum = "af18f7ae1acd354b992402e9ec5864359d693cd8a79dcbef59f76891701c1e95"
dependencies = [
"cfg-if",
"fastrand",
- "libc",
"redox_syscall",
- "remove_dir_all",
- "winapi",
+ "rustix 0.36.7",
+ "windows-sys 0.42.0",
]
[[package]]
@@ -1615,47 +1679,57 @@ dependencies = [
[[package]]
name = "termcolor"
-version = "1.1.3"
+version = "1.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bab24d30b911b2376f3a13cc2cd443142f0c81dda04c118693e35b3835757755"
+checksum = "be55cf8942feac5c765c2c993422806843c9a9a45d4d5c407ad6dd2ea95eb9b6"
dependencies = [
"winapi-util",
]
[[package]]
name = "terminal_size"
-version = "0.2.3"
+version = "0.2.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cb20089a8ba2b69debd491f8d2d023761cbf196e999218c591fa1e7e15a21907"
+checksum = "8e6bf6f19e9f8ed8d4048dc22981458ebcf406d67e94cd422e5ecd73d63b3237"
dependencies = [
- "rustix",
- "windows-sys",
+ "rustix 0.37.19",
+ "windows-sys 0.48.0",
]
[[package]]
name = "termtree"
-version = "0.4.0"
+version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "95059e91184749cb66be6dc994f67f182b6d897cb3df74a5bf66b5e709295fd8"
+checksum = "3369f5ac52d5eb6ab48c6b4ffdc8efbcad6b89c765749064ba298f2c68a16a76"
[[package]]
name = "thiserror"
-version = "1.0.37"
+version = "1.0.40"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "10deb33631e3c9018b9baf9dcbbc4f737320d2b576bac10f6aefa048fa407e3e"
+checksum = "978c9a314bd8dc99be594bc3c175faaa9794be04a5a5e153caba6915336cebac"
dependencies = [
"thiserror-impl",
]
[[package]]
name = "thiserror-impl"
-version = "1.0.37"
+version = "1.0.40"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "982d17546b47146b28f7c22e3d08465f6b8903d0ea13c1660d9d84a6e7adcdbb"
+checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
dependencies = [
"proc-macro2",
"quote",
- "syn",
+ "syn 2.0.15",
+]
+
+[[package]]
+name = "thread_local"
+version = "1.1.7"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "3fdd6f064ccff2d6567adcb3873ca630700f00b5ad3f060c25b5dcfd9a4ce152"
+dependencies = [
+ "cfg-if",
+ "once_cell",
]
[[package]]
@@ -1669,44 +1743,43 @@ dependencies = [
[[package]]
name = "tinyvec_macros"
-version = "0.1.0"
+version = "0.1.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "cda74da7e1a664f795bb1f8a87ec406fb89a02522cf6e50620d016add6dbbf5c"
+checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
[[package]]
name = "tokio"
-version = "1.25.0"
+version = "1.28.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c8e00990ebabbe4c14c08aca901caed183ecd5c09562a12c824bb53d3c3fd3af"
+checksum = "0aa32867d44e6f2ce3385e89dceb990188b8bb0fb25b0cf576647a6f98ac5105"
dependencies = [
"autocfg",
"bytes",
"libc",
- "memchr",
"mio",
"num_cpus",
"pin-project-lite",
"socket2",
"tokio-macros",
- "windows-sys",
+ "windows-sys 0.48.0",
]
[[package]]
name = "tokio-macros"
-version = "1.8.2"
+version = "2.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d266c00fde287f55d3f1c3e96c500c362a2b8c695076ec180f27918820bc6df8"
+checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
dependencies = [
"proc-macro2",
"quote",
- "syn",
+ "syn 2.0.15",
]
[[package]]
name = "tokio-stream"
-version = "0.1.11"
+version = "0.1.14"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d660770404473ccd7bc9f8b28494a811bc18542b915c0855c51e8f419d5223ce"
+checksum = "397c988d37662c7dda6d2208364a706264bf3d6138b11d436cbac0ad38832842"
dependencies = [
"futures-core",
"pin-project-lite",
@@ -1715,9 +1788,9 @@ dependencies = [
[[package]]
name = "tokio-tungstenite"
-version = "0.17.2"
+version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "f714dd15bead90401d77e04243611caec13726c2408afd5b31901dfcdcb3b181"
+checksum = "54319c93411147bced34cb5609a80e0a8e44c5999c93903a81cd866630ec0bfd"
dependencies = [
"futures-util",
"log",
@@ -1727,9 +1800,9 @@ dependencies = [
[[package]]
name = "tokio-util"
-version = "0.7.4"
+version = "0.7.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "0bb2e075f03b3d66d8d8785356224ba688d2906a371015e225beeb65ca92c740"
+checksum = "806fe8c2c87eccc8b3267cbae29ed3ab2d0bd37fca70ab622e46aaa9375ddb7d"
dependencies = [
"bytes",
"futures-core",
@@ -1741,9 +1814,9 @@ dependencies = [
[[package]]
name = "toml"
-version = "0.5.10"
+version = "0.5.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1333c76748e868a4d9d1017b5ab53171dfd095f70c712fdb4653a406547f598f"
+checksum = "f4f7f0dd8d50a853a531c426359045b1998f04219d88799810762cd4ad314234"
dependencies = [
"serde",
]
@@ -1774,33 +1847,33 @@ dependencies = [
[[package]]
name = "tracing-core"
-version = "0.1.30"
+version = "0.1.31"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "24eb03ba0eab1fd845050058ce5e616558e8f8d8fca633e6b163fe25c797213a"
+checksum = "0955b8137a1df6f1a2e9a37d8a6656291ff0297c1a97c24e0d8425fe2312f79a"
dependencies = [
"once_cell",
]
[[package]]
name = "try-lock"
-version = "0.2.3"
+version = "0.2.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642"
+checksum = "3528ecfd12c466c6f163363caf2d02a71161dd5e1cc6ae7b34207ea2d42d81ed"
[[package]]
name = "tungstenite"
-version = "0.17.3"
+version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "e27992fd6a8c29ee7eef28fc78349aa244134e10ad447ce3b9f0ac0ed0fa4ce0"
+checksum = "30ee6ab729cd4cf0fd55218530c4522ed30b7b6081752839b68fcec8d0960788"
dependencies = [
- "base64",
+ "base64 0.13.1",
"byteorder",
"bytes",
"http",
"httparse",
"log",
"rand",
- "sha-1",
+ "sha1",
"thiserror",
"url",
"utf-8",
@@ -1829,15 +1902,15 @@ dependencies = [
[[package]]
name = "unicode-bidi"
-version = "0.3.8"
+version = "0.3.13"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "099b7128301d285f79ddd55b9a83d5e6b9e97c92e0ea0daebee7263e932de992"
+checksum = "92888ba5573ff080736b3648696b70cafad7d250551175acbaa4e0385b3e1460"
[[package]]
name = "unicode-ident"
-version = "1.0.5"
+version = "1.0.8"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "6ceab39d59e4c9499d4e5a8ee0e2735b891bb7308ac83dfb4e80cad195c9f6f3"
+checksum = "e5464a87b239f13a63a501f2701565754bae92d243d4bb7eb12f6d57d2269bf4"
[[package]]
name = "unicode-normalization"
@@ -1849,12 +1922,6 @@ dependencies = [
]
[[package]]
-name = "unicode-width"
-version = "0.1.10"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "c0edd1e5b14653f783770bce4a4dabb4a5108a5370a5f5d8cfe8710c361f6c8b"
-
-[[package]]
name = "url"
version = "2.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1872,6 +1939,12 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9"
[[package]]
+name = "utf8parse"
+version = "0.2.1"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a"
+
+[[package]]
name = "version_check"
version = "0.9.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
@@ -1888,12 +1961,11 @@ dependencies = [
[[package]]
name = "walkdir"
-version = "2.3.2"
+version = "2.3.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "808cf2735cd4b6866113f648b791c6adc5714537bc222d9347bb203386ffda56"
+checksum = "36df944cda56c7d8d8b7496af378e6b16de9284591917d307c9b4d313c44e698"
dependencies = [
"same-file",
- "winapi",
"winapi-util",
]
@@ -1909,9 +1981,9 @@ dependencies = [
[[package]]
name = "warp"
-version = "0.3.3"
+version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed7b8be92646fc3d18b06147664ebc5f48d222686cb11a8755e561a735aacc6d"
+checksum = "ba431ef570df1287f7f8b07e376491ad54f84d26ac473489427231e1718e1f69"
dependencies = [
"bytes",
"futures-channel",
@@ -1945,9 +2017,9 @@ checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
[[package]]
name = "wasm-bindgen"
-version = "0.2.83"
+version = "0.2.85"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "eaf9f5aceeec8be17c128b2e93e031fb8a4d469bb9c4ae2d7dc1888b26887268"
+checksum = "5b6cb788c4e39112fbe1822277ef6fb3c55cd86b95cb3d3c4c1c9597e4ac74b4"
dependencies = [
"cfg-if",
"wasm-bindgen-macro",
@@ -1955,24 +2027,24 @@ dependencies = [
[[package]]
name = "wasm-bindgen-backend"
-version = "0.2.83"
+version = "0.2.85"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "4c8ffb332579b0557b52d268b91feab8df3615f265d5270fec2a8c95b17c1142"
+checksum = "35e522ed4105a9d626d885b35d62501b30d9666283a5c8be12c14a8bdafe7822"
dependencies = [
"bumpalo",
"log",
"once_cell",
"proc-macro2",
"quote",
- "syn",
+ "syn 2.0.15",
"wasm-bindgen-shared",
]
[[package]]
name = "wasm-bindgen-macro"
-version = "0.2.83"
+version = "0.2.85"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "052be0f94026e6cbc75cdefc9bae13fd6052cdcaf532fa6c45e7ae33a1e6c810"
+checksum = "358a79a0cb89d21db8120cbfb91392335913e4890665b1a7981d9e956903b434"
dependencies = [
"quote",
"wasm-bindgen-macro-support",
@@ -1980,22 +2052,22 @@ dependencies = [
[[package]]
name = "wasm-bindgen-macro-support"
-version = "0.2.83"
+version = "0.2.85"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "07bc0c051dc5f23e307b13285f9d75df86bfdf816c5721e573dec1f9b8aa193c"
+checksum = "4783ce29f09b9d93134d41297aded3a712b7b979e9c6f28c32cb88c973a94869"
dependencies = [
"proc-macro2",
"quote",
- "syn",
+ "syn 2.0.15",
"wasm-bindgen-backend",
"wasm-bindgen-shared",
]
[[package]]
name = "wasm-bindgen-shared"
-version = "0.2.83"
+version = "0.2.85"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "1c38c045535d93ec4f0b4defec448e4291638ee608530863b1e2ba115d4fff7f"
+checksum = "a901d592cafaa4d711bc324edfaff879ac700b19c3dfd60058d2b445be2691eb"
[[package]]
name = "winapi"
@@ -2029,18 +2101,51 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
[[package]]
+name = "windows"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "e686886bc078bc1b0b600cac0147aadb815089b6e4da64016cbd754b6342700f"
+dependencies = [
+ "windows-targets",
+]
+
+[[package]]
name = "windows-sys"
version = "0.42.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "5a3e1820f08b8513f676f7ab6c1f99ff312fb97b553d30ff4dd86f9f15728aa7"
dependencies = [
- "windows_aarch64_gnullvm",
- "windows_aarch64_msvc",
- "windows_i686_gnu",
- "windows_i686_msvc",
- "windows_x86_64_gnu",
- "windows_x86_64_gnullvm",
- "windows_x86_64_msvc",
+ "windows_aarch64_gnullvm 0.42.0",
+ "windows_aarch64_msvc 0.42.0",
+ "windows_i686_gnu 0.42.0",
+ "windows_i686_msvc 0.42.0",
+ "windows_x86_64_gnu 0.42.0",
+ "windows_x86_64_gnullvm 0.42.0",
+ "windows_x86_64_msvc 0.42.0",
+]
+
+[[package]]
+name = "windows-sys"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "677d2418bec65e3338edb076e806bc1ec15693c5d0104683f2efe857f61056a9"
+dependencies = [
+ "windows-targets",
+]
+
+[[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",
]
[[package]]
@@ -2050,42 +2155,84 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "41d2aa71f6f0cbe00ae5167d90ef3cfe66527d6f613ca78ac8024c3ccab9a19e"
[[package]]
+name = "windows_aarch64_gnullvm"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc"
+
+[[package]]
name = "windows_aarch64_msvc"
version = "0.42.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dd0f252f5a35cac83d6311b2e795981f5ee6e67eb1f9a7f64eb4500fbc4dcdb4"
[[package]]
+name = "windows_aarch64_msvc"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3"
+
+[[package]]
name = "windows_i686_gnu"
version = "0.42.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fbeae19f6716841636c28d695375df17562ca208b2b7d0dc47635a50ae6c5de7"
[[package]]
+name = "windows_i686_gnu"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241"
+
+[[package]]
name = "windows_i686_msvc"
version = "0.42.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "84c12f65daa39dd2babe6e442988fc329d6243fdce47d7d2d155b8d874862246"
[[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.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bf7b1b21b5362cbc318f686150e5bcea75ecedc74dd157d874d754a2ca44b0ed"
[[package]]
+name = "windows_x86_64_gnu"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1"
+
+[[package]]
name = "windows_x86_64_gnullvm"
version = "0.42.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "09d525d2ba30eeb3297665bd434a54297e4170c7f1a44cad4ef58095b4cd2028"
[[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.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "f40009d85759725a34da6d89a94e63d7bdc50a862acf0dbc7c8e488f1edcb6f5"
[[package]]
+name = "windows_x86_64_msvc"
+version = "0.48.0"
+source = "registry+https://github.com/rust-lang/crates.io-index"
+checksum = "1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a"
+
+[[package]]
name = "xml5ever"
version = "0.17.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
diff --git a/vendor/mdbook/Cargo.toml b/vendor/mdbook/Cargo.toml
index 35a9f78cf..87da00781 100644
--- a/vendor/mdbook/Cargo.toml
+++ b/vendor/mdbook/Cargo.toml
@@ -11,9 +11,9 @@
[package]
edition = "2021"
-rust-version = "1.60"
+rust-version = "1.65"
name = "mdbook"
-version = "0.4.28"
+version = "0.4.31"
authors = [
"Mathieu David <mathieudavid@mathieudavid.org>",
"Michael-F-Bryan <michaelfbryan@gmail.com>",
@@ -41,53 +41,53 @@ name = "nop-preprocessor"
test = true
[dependencies.ammonia]
-version = "3"
+version = "3.3.0"
optional = true
[dependencies.anyhow]
-version = "1.0.28"
+version = "1.0.71"
[dependencies.chrono]
-version = "0.4"
+version = "0.4.24"
features = ["clock"]
default-features = false
[dependencies.clap]
-version = "4.0.29"
+version = "4.2.7"
features = [
"cargo",
"wrap_help",
]
[dependencies.clap_complete]
-version = "4.0.6"
+version = "4.2.3"
[dependencies.elasticlunr-rs]
-version = "3.0.0"
+version = "3.0.2"
optional = true
[dependencies.env_logger]
version = "0.10.0"
[dependencies.futures-util]
-version = "0.3.4"
-optional = true
-
-[dependencies.gitignore]
-version = "1.0"
+version = "0.3.28"
optional = true
[dependencies.handlebars]
-version = "4.0"
+version = "4.3.7"
+
+[dependencies.ignore]
+version = "0.4.20"
+optional = true
[dependencies.log]
-version = "0.4"
+version = "0.4.17"
[dependencies.memchr]
-version = "2.0"
+version = "2.5.0"
[dependencies.notify]
-version = "5.0.0"
+version = "5.1.0"
optional = true
[dependencies.notify-debouncer-mini]
@@ -95,33 +95,33 @@ version = "0.2.1"
optional = true
[dependencies.once_cell]
-version = "1"
+version = "1.17.1"
[dependencies.opener]
-version = "0.5"
+version = "0.5.2"
[dependencies.pulldown-cmark]
-version = "0.9.1"
+version = "0.9.3"
default-features = false
[dependencies.regex]
-version = "1.5.5"
+version = "1.8.1"
[dependencies.serde]
-version = "1.0"
+version = "1.0.163"
features = ["derive"]
[dependencies.serde_json]
-version = "1.0"
+version = "1.0.96"
[dependencies.shlex]
-version = "1"
+version = "1.1.0"
[dependencies.tempfile]
-version = "3.0"
+version = "3.4.0"
[dependencies.tokio]
-version = "1"
+version = "1.28.1"
features = [
"macros",
"rt-multi-thread",
@@ -129,34 +129,34 @@ features = [
optional = true
[dependencies.toml]
-version = "0.5.1"
+version = "0.5.11"
[dependencies.topological-sort]
version = "0.2.2"
[dependencies.warp]
-version = "0.3.2"
+version = "0.3.5"
features = ["websocket"]
optional = true
default-features = false
[dev-dependencies.assert_cmd]
-version = "2.0.7"
+version = "2.0.11"
[dev-dependencies.predicates]
-version = "2"
+version = "2.1.5"
[dev-dependencies.pretty_assertions]
-version = "1.2.1"
+version = "1.3.0"
[dev-dependencies.select]
version = "0.6.0"
[dev-dependencies.semver]
-version = "1.0"
+version = "1.0.17"
[dev-dependencies.walkdir]
-version = "2.0"
+version = "2.3.3"
[features]
default = [
@@ -165,16 +165,16 @@ default = [
"search",
]
search = [
- "elasticlunr-rs",
- "ammonia",
+ "dep:elasticlunr-rs",
+ "dep:ammonia",
]
serve = [
- "futures-util",
- "tokio",
- "warp",
+ "dep:futures-util",
+ "dep:tokio",
+ "dep:warp",
]
watch = [
- "notify",
- "notify-debouncer-mini",
- "gitignore",
+ "dep:notify",
+ "dep:notify-debouncer-mini",
+ "dep:ignore",
]
diff --git a/vendor/mdbook/src/book/book.rs b/vendor/mdbook/src/book/book.rs
index b46843df5..96c70abc4 100644
--- a/vendor/mdbook/src/book/book.rs
+++ b/vendor/mdbook/src/book/book.rs
@@ -39,9 +39,7 @@ fn create_missing(src_dir: &Path, summary: &Summary) -> Result<()> {
.chain(summary.suffix_chapters.iter())
.collect();
- while !items.is_empty() {
- let next = items.pop().expect("already checked");
-
+ while let Some(next) = items.pop() {
if let SummaryItem::Link(ref link) = *next {
if let Some(ref location) = link.location {
let filename = src_dir.join(location);
@@ -277,7 +275,7 @@ fn load_chapter<P: AsRef<Path>>(
}
let stripped = location
- .strip_prefix(&src_dir)
+ .strip_prefix(src_dir)
.expect("Chapters are always inside a book");
Chapter::new(&link.name, content, stripped, parent_names.clone())
@@ -317,7 +315,7 @@ impl<'a> Iterator for BookItems<'a> {
fn next(&mut self) -> Option<Self::Item> {
let item = self.items.pop_front();
- if let Some(&BookItem::Chapter(ref ch)) = item {
+ if let Some(BookItem::Chapter(ch)) = item {
// if we wanted a breadth-first iterator we'd `extend()` here
for sub_item in ch.sub_items.iter().rev() {
self.items.push_front(sub_item);
diff --git a/vendor/mdbook/src/book/init.rs b/vendor/mdbook/src/book/init.rs
index ebcdd9349..faca1d09a 100644
--- a/vendor/mdbook/src/book/init.rs
+++ b/vendor/mdbook/src/book/init.rs
@@ -198,8 +198,7 @@ impl BookBuilder {
writeln!(f, "- [Chapter 1](./chapter_1.md)")?;
let chapter_1 = src_dir.join("chapter_1.md");
- let mut f =
- File::create(&chapter_1).with_context(|| "Unable to create chapter_1.md")?;
+ let mut f = File::create(chapter_1).with_context(|| "Unable to create chapter_1.md")?;
writeln!(f, "# Chapter 1")?;
} else {
trace!("Existing summary found, no need to create stub files.");
@@ -212,10 +211,10 @@ impl BookBuilder {
fs::create_dir_all(&self.root)?;
let src = self.root.join(&self.config.book.src);
- fs::create_dir_all(&src)?;
+ fs::create_dir_all(src)?;
let build = self.root.join(&self.config.build.build_dir);
- fs::create_dir_all(&build)?;
+ fs::create_dir_all(build)?;
Ok(())
}
diff --git a/vendor/mdbook/src/book/mod.rs b/vendor/mdbook/src/book/mod.rs
index 33fe93f7f..a5e3e78c6 100644
--- a/vendor/mdbook/src/book/mod.rs
+++ b/vendor/mdbook/src/book/mod.rs
@@ -99,7 +99,7 @@ impl MDBook {
let root = book_root.into();
let src_dir = root.join(&config.book.src);
- let book = book::load_book(&src_dir, &config.build)?;
+ let book = book::load_book(src_dir, &config.build)?;
let renderers = determine_renderers(&config);
let preprocessors = determine_preprocessors(&config)?;
@@ -122,7 +122,7 @@ impl MDBook {
let root = book_root.into();
let src_dir = root.join(&config.book.src);
- let book = book::load_book_from_disk(&summary, &src_dir)?;
+ let book = book::load_book_from_disk(&summary, src_dir)?;
let renderers = determine_renderers(&config);
let preprocessors = determine_preprocessors(&config)?;
@@ -309,7 +309,7 @@ impl MDBook {
info!("Testing chapter '{}': {:?}", ch.name, chapter_path);
// write preprocessed file to tempdir
- let path = temp_dir.path().join(&chapter_path);
+ let path = temp_dir.path().join(chapter_path);
let mut tmpf = utils::fs::create_file(&path)?;
tmpf.write_all(ch.content.as_bytes())?;
@@ -319,13 +319,13 @@ impl MDBook {
if let Some(edition) = self.config.rust.edition {
match edition {
RustEdition::E2015 => {
- cmd.args(&["--edition", "2015"]);
+ cmd.args(["--edition", "2015"]);
}
RustEdition::E2018 => {
- cmd.args(&["--edition", "2018"]);
+ cmd.args(["--edition", "2018"]);
}
RustEdition::E2021 => {
- cmd.args(&["--edition", "2021"]);
+ cmd.args(["--edition", "2021"]);
}
}
}
diff --git a/vendor/mdbook/src/cmd/build.rs b/vendor/mdbook/src/cmd/build.rs
index 14a9fec6e..e40e5c0c7 100644
--- a/vendor/mdbook/src/cmd/build.rs
+++ b/vendor/mdbook/src/cmd/build.rs
@@ -16,7 +16,7 @@ pub fn make_subcommand() -> Command {
// Build command implementation
pub fn execute(args: &ArgMatches) -> Result<()> {
let book_dir = get_book_dir(args);
- let mut book = MDBook::load(&book_dir)?;
+ let mut book = MDBook::load(book_dir)?;
if let Some(dest_dir) = args.get_one::<PathBuf>("dest-dir") {
book.config.build.build_dir = dest_dir.into();
diff --git a/vendor/mdbook/src/cmd/clean.rs b/vendor/mdbook/src/cmd/clean.rs
index 3ec605fea..48b4147ca 100644
--- a/vendor/mdbook/src/cmd/clean.rs
+++ b/vendor/mdbook/src/cmd/clean.rs
@@ -16,7 +16,7 @@ pub fn make_subcommand() -> Command {
// Clean command implementation
pub fn execute(args: &ArgMatches) -> mdbook::errors::Result<()> {
let book_dir = get_book_dir(args);
- let book = MDBook::load(&book_dir)?;
+ let book = MDBook::load(book_dir)?;
let dir_to_remove = match args.get_one::<PathBuf>("dest-dir") {
Some(dest_dir) => dest_dir.into(),
diff --git a/vendor/mdbook/src/cmd/init.rs b/vendor/mdbook/src/cmd/init.rs
index d8ce93d16..2c6415b6d 100644
--- a/vendor/mdbook/src/cmd/init.rs
+++ b/vendor/mdbook/src/cmd/init.rs
@@ -56,7 +56,7 @@ pub fn execute(args: &ArgMatches) -> Result<()> {
"git" => builder.create_gitignore(true),
_ => builder.create_gitignore(false),
};
- } else {
+ } else if !args.get_flag("force") {
println!("\nDo you want a .gitignore to be created? (y/n)");
if confirm() {
builder.create_gitignore(true);
@@ -65,6 +65,8 @@ pub fn execute(args: &ArgMatches) -> Result<()> {
config.book.title = if args.contains_id("title") {
args.get_one::<String>("title").map(String::from)
+ } else if args.get_flag("force") {
+ None
} else {
request_book_title()
};
@@ -84,7 +86,7 @@ pub fn execute(args: &ArgMatches) -> Result<()> {
/// Obtains author name from git config file by running the `git config` command.
fn get_author_name() -> Option<String> {
let output = Command::new("git")
- .args(&["config", "--get", "user.name"])
+ .args(["config", "--get", "user.name"])
.output()
.ok()?;
@@ -114,5 +116,5 @@ fn confirm() -> bool {
io::stdout().flush().unwrap();
let mut s = String::new();
io::stdin().read_line(&mut s).ok();
- matches!(&*s.trim(), "Y" | "y" | "yes" | "Yes")
+ matches!(s.trim(), "Y" | "y" | "yes" | "Yes")
}
diff --git a/vendor/mdbook/src/cmd/serve.rs b/vendor/mdbook/src/cmd/serve.rs
index 88898567e..eeb19cb37 100644
--- a/vendor/mdbook/src/cmd/serve.rs
+++ b/vendor/mdbook/src/cmd/serve.rs
@@ -48,7 +48,7 @@ pub fn make_subcommand() -> Command {
// Serve command implementation
pub fn execute(args: &ArgMatches) -> Result<()> {
let book_dir = get_book_dir(args);
- let mut book = MDBook::load(&book_dir)?;
+ let mut book = MDBook::load(book_dir)?;
let port = args.get_one::<String>("port").unwrap();
let hostname = args.get_one::<String>("hostname").unwrap();
@@ -102,7 +102,7 @@ pub fn execute(args: &ArgMatches) -> Result<()> {
info!("Building book...");
// FIXME: This area is really ugly because we need to re-set livereload :(
- let result = MDBook::load(&book_dir).and_then(|mut b| {
+ let result = MDBook::load(book_dir).and_then(|mut b| {
update_config(&mut b);
b.build()
});
diff --git a/vendor/mdbook/src/cmd/test.rs b/vendor/mdbook/src/cmd/test.rs
index 3efe130b1..69f99f409 100644
--- a/vendor/mdbook/src/cmd/test.rs
+++ b/vendor/mdbook/src/cmd/test.rs
@@ -44,7 +44,7 @@ pub fn execute(args: &ArgMatches) -> Result<()> {
let chapter: Option<&str> = args.get_one::<String>("chapter").map(|s| s.as_str());
let book_dir = get_book_dir(args);
- let mut book = MDBook::load(&book_dir)?;
+ let mut book = MDBook::load(book_dir)?;
if let Some(dest_dir) = args.get_one::<PathBuf>("dest-dir") {
book.config.build.build_dir = dest_dir.to_path_buf();
diff --git a/vendor/mdbook/src/cmd/watch.rs b/vendor/mdbook/src/cmd/watch.rs
index bbc6bde71..e9806e1cd 100644
--- a/vendor/mdbook/src/cmd/watch.rs
+++ b/vendor/mdbook/src/cmd/watch.rs
@@ -1,5 +1,6 @@
use super::command_prelude::*;
use crate::{get_book_dir, open};
+use ignore::gitignore::Gitignore;
use mdbook::errors::Result;
use mdbook::utils;
use mdbook::MDBook;
@@ -20,7 +21,7 @@ pub fn make_subcommand() -> Command {
// Watch command implementation
pub fn execute(args: &ArgMatches) -> Result<()> {
let book_dir = get_book_dir(args);
- let mut book = MDBook::load(&book_dir)?;
+ let mut book = MDBook::load(book_dir)?;
let update_config = |book: &mut MDBook| {
if let Some(dest_dir) = args.get_one::<PathBuf>("dest-dir") {
@@ -41,7 +42,7 @@ pub fn execute(args: &ArgMatches) -> Result<()> {
trigger_on_change(&book, |paths, book_dir| {
info!("Files changed: {:?}\nBuilding book...\n", paths);
- let result = MDBook::load(&book_dir).and_then(|mut b| {
+ let result = MDBook::load(book_dir).and_then(|mut b| {
update_config(&mut b);
b.build()
});
@@ -62,14 +63,14 @@ fn remove_ignored_files(book_root: &Path, paths: &[PathBuf]) -> Vec<PathBuf> {
match find_gitignore(book_root) {
Some(gitignore_path) => {
- match gitignore::File::new(gitignore_path.as_path()) {
- Ok(exclusion_checker) => filter_ignored_files(exclusion_checker, paths),
- Err(_) => {
- // We're unable to read the .gitignore file, so we'll silently allow everything.
- // Please see discussion: https://github.com/rust-lang/mdBook/pull/1051
- paths.iter().map(|path| path.to_path_buf()).collect()
- }
+ let (ignore, err) = Gitignore::new(&gitignore_path);
+ if let Some(err) = err {
+ warn!(
+ "error reading gitignore `{}`: {err}",
+ gitignore_path.display()
+ );
}
+ filter_ignored_files(ignore, paths)
}
None => {
// There is no .gitignore file.
@@ -85,18 +86,13 @@ fn find_gitignore(book_root: &Path) -> Option<PathBuf> {
.find(|p| p.exists())
}
-fn filter_ignored_files(exclusion_checker: gitignore::File, paths: &[PathBuf]) -> Vec<PathBuf> {
+fn filter_ignored_files(ignore: Gitignore, paths: &[PathBuf]) -> Vec<PathBuf> {
paths
.iter()
- .filter(|path| match exclusion_checker.is_excluded(path) {
- Ok(exclude) => !exclude,
- Err(error) => {
- warn!(
- "Unable to determine if {:?} is excluded: {:?}. Including it.",
- &path, error
- );
- true
- }
+ .filter(|path| {
+ !ignore
+ .matched_path_or_any_parents(path, path.is_dir())
+ .is_ignore()
})
.map(|path| path.to_path_buf())
.collect()
diff --git a/vendor/mdbook/src/config.rs b/vendor/mdbook/src/config.rs
index 0c367d848..4641d1a26 100644
--- a/vendor/mdbook/src/config.rs
+++ b/vendor/mdbook/src/config.rs
@@ -308,7 +308,7 @@ impl<'de> serde::Deserialize<'de> for Config {
warn!("`description` under a table called `[book]`, move the `destination` entry");
warn!("from `[output.html]`, renamed to `build-dir`, under a table called");
warn!("`[build]`, and it should all work.");
- warn!("Documentation: http://rust-lang.github.io/mdBook/format/config.html");
+ warn!("Documentation: https://rust-lang.github.io/mdBook/format/config.html");
return Ok(Config::from_legacy(raw));
}
@@ -504,6 +504,8 @@ pub struct HtmlConfig {
/// Playground settings.
#[serde(alias = "playpen")]
pub playground: Playground,
+ /// Code settings.
+ pub code: Code,
/// Print settings.
pub print: Print,
/// Don't render section labels.
@@ -556,6 +558,7 @@ impl Default for HtmlConfig {
additional_js: Vec::new(),
fold: Fold::default(),
playground: Playground::default(),
+ code: Code::default(),
print: Print::default(),
no_section_label: false,
search: None,
@@ -642,6 +645,22 @@ impl Default for Playground {
}
}
+/// Configuration for tweaking how the the HTML renderer handles code blocks.
+#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
+#[serde(default, rename_all = "kebab-case")]
+pub struct Code {
+ /// A prefix string to hide lines per language (one or more chars).
+ pub hidelines: HashMap<String, String>,
+}
+
+impl Default for Code {
+ fn default() -> Code {
+ Code {
+ hidelines: HashMap::new(),
+ }
+ }
+}
+
/// Configuration of the search functionality of the HTML renderer.
#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
#[serde(default, rename_all = "kebab-case")]
@@ -703,7 +722,7 @@ trait Updateable<'de>: Serialize + Deserialize<'de> {
let mut raw = Value::try_from(&self).expect("unreachable");
if let Ok(value) = Value::try_from(value) {
- let _ = raw.insert(key, value);
+ raw.insert(key, value);
} else {
return;
}
diff --git a/vendor/mdbook/src/preprocess/links.rs b/vendor/mdbook/src/preprocess/links.rs
index c2c81f522..0af211960 100644
--- a/vendor/mdbook/src/preprocess/links.rs
+++ b/vendor/mdbook/src/preprocess/links.rs
@@ -93,7 +93,7 @@ where
for link in find_links(s) {
replaced.push_str(&s[previous_end_index..link.start_index]);
- match link.render_with_path(&path, chapter_title) {
+ match link.render_with_path(path, chapter_title) {
Ok(new_content) => {
if depth < MAX_LINK_NESTED_DEPTH {
if let Some(rel_path) = link.link_type.relative_path(path) {
@@ -327,7 +327,7 @@ impl<'a> Link<'a> {
let base = base.as_ref();
match self.link_type {
// omit the escape char
- LinkType::Escaped => Ok((&self.link_text[1..]).to_owned()),
+ LinkType::Escaped => Ok(self.link_text[1..].to_owned()),
LinkType::Include(ref pat, ref range_or_anchor) => {
let target = base.join(pat);
diff --git a/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs b/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs
index e170e2fcd..709aa0667 100644
--- a/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs
+++ b/vendor/mdbook/src/renderer/html_handlebars/hbs_renderer.rs
@@ -1,5 +1,5 @@
use crate::book::{Book, BookItem};
-use crate::config::{BookConfig, Config, HtmlConfig, Playground, RustEdition};
+use crate::config::{BookConfig, Code, Config, HtmlConfig, Playground, RustEdition};
use crate::errors::*;
use crate::renderer::html_handlebars::helpers;
use crate::renderer::{RenderContext, Renderer};
@@ -99,7 +99,7 @@ impl HtmlHandlebars {
ctx.data.insert("title".to_owned(), json!(title));
ctx.data.insert(
"path_to_root".to_owned(),
- json!(utils::fs::path_to_root(&path)),
+ json!(utils::fs::path_to_root(path)),
);
if let Some(ref section) = ch.number {
ctx.data
@@ -110,7 +110,12 @@ impl HtmlHandlebars {
debug!("Render template");
let rendered = ctx.handlebars.render("index", &ctx.data)?;
- let rendered = self.post_process(rendered, &ctx.html_config.playground, ctx.edition);
+ let rendered = self.post_process(
+ rendered,
+ &ctx.html_config.playground,
+ &ctx.html_config.code,
+ ctx.edition,
+ );
// Write to file
debug!("Creating {}", filepath.display());
@@ -121,8 +126,12 @@ impl HtmlHandlebars {
ctx.data.insert("path_to_root".to_owned(), json!(""));
ctx.data.insert("is_index".to_owned(), json!(true));
let rendered_index = ctx.handlebars.render("index", &ctx.data)?;
- let rendered_index =
- self.post_process(rendered_index, &ctx.html_config.playground, ctx.edition);
+ let rendered_index = self.post_process(
+ rendered_index,
+ &ctx.html_config.playground,
+ &ctx.html_config.code,
+ ctx.edition,
+ );
debug!("Creating index.html from {}", ctx_path);
utils::fs::write_file(&ctx.destination, "index.html", rendered_index.as_bytes())?;
}
@@ -182,8 +191,12 @@ impl HtmlHandlebars {
data_404.insert("title".to_owned(), json!(title));
let rendered = handlebars.render("index", &data_404)?;
- let rendered =
- self.post_process(rendered, &html_config.playground, ctx.config.rust.edition);
+ let rendered = self.post_process(
+ rendered,
+ &html_config.playground,
+ &html_config.code,
+ ctx.config.rust.edition,
+ );
let output_file = get_404_output_file(&html_config.input_404);
utils::fs::write_file(destination, output_file, rendered.as_bytes())?;
debug!("Creating 404.html ✓");
@@ -195,11 +208,13 @@ impl HtmlHandlebars {
&self,
rendered: String,
playground_config: &Playground,
+ code_config: &Code,
edition: Option<RustEdition>,
) -> String {
let rendered = build_header_links(&rendered);
let rendered = fix_code_blocks(&rendered);
let rendered = add_playground_pre(&rendered, playground_config, edition);
+ let rendered = hide_lines(&rendered, code_config);
rendered
}
@@ -275,7 +290,8 @@ impl HtmlHandlebars {
"FontAwesome/fonts/FontAwesome.ttf",
theme::FONT_AWESOME_TTF,
)?;
- if html_config.copy_fonts {
+ // Don't copy the stock fonts if the user has specified their own fonts to use.
+ if html_config.copy_fonts && theme.fonts_css.is_none() {
write_file(destination, "fonts/fonts.css", theme::fonts::CSS)?;
for (file_name, contents) in theme::fonts::LICENSES.iter() {
write_file(destination, file_name, contents)?;
@@ -291,20 +307,13 @@ impl HtmlHandlebars {
}
if let Some(fonts_css) = &theme.fonts_css {
if !fonts_css.is_empty() {
- if html_config.copy_fonts {
- warn!(
- "output.html.copy_fonts is deprecated.\n\
- Set copy_fonts=false and ensure the fonts you want are in \
- the `theme/fonts/` directory."
- );
- }
- write_file(destination, "fonts/fonts.css", &fonts_css)?;
+ write_file(destination, "fonts/fonts.css", fonts_css)?;
}
}
if !html_config.copy_fonts && theme.fonts_css.is_none() {
warn!(
- "output.html.copy_fonts is deprecated.\n\
- This book appears to have copy_fonts=false without a fonts.css file.\n\
+ "output.html.copy-fonts is deprecated.\n\
+ This book appears to have copy-fonts=false in book.toml without a fonts.css file.\n\
Add an empty `theme/fonts/fonts.css` file to squelch this warning."
);
}
@@ -553,7 +562,7 @@ impl Renderer for HtmlHandlebars {
// Print version
let mut print_content = String::new();
- fs::create_dir_all(&destination)
+ fs::create_dir_all(destination)
.with_context(|| "Unexpected error when constructing destination path")?;
let mut is_index = true;
@@ -589,8 +598,12 @@ impl Renderer for HtmlHandlebars {
debug!("Render template");
let rendered = handlebars.render("index", &data)?;
- let rendered =
- self.post_process(rendered, &html_config.playground, ctx.config.rust.edition);
+ let rendered = self.post_process(
+ rendered,
+ &html_config.playground,
+ &html_config.code,
+ ctx.config.rust.edition,
+ );
utils::fs::write_file(destination, "print.html", rendered.as_bytes())?;
debug!("Creating print.html ✓");
@@ -795,8 +808,10 @@ fn make_data(
/// Goes through the rendered HTML, making sure all header tags have
/// an anchor respectively so people can link to sections directly.
fn build_header_links(html: &str) -> String {
- static BUILD_HEADER_LINKS: Lazy<Regex> =
- Lazy::new(|| Regex::new(r"<h(\d)>(.*?)</h\d>").unwrap());
+ static BUILD_HEADER_LINKS: Lazy<Regex> = Lazy::new(|| {
+ Regex::new(r#"<h(\d)(?: id="([^"]+)")?(?: class="([^"]+)")?>(.*?)</h\d>"#).unwrap()
+ });
+ static IGNORE_CLASS: &[&str] = &["menu-title"];
let mut id_counter = HashMap::new();
@@ -806,7 +821,22 @@ fn build_header_links(html: &str) -> String {
.parse()
.expect("Regex should ensure we only ever get numbers here");
- insert_link_into_header(level, &caps[2], &mut id_counter)
+ // Ignore .menu-title because now it's getting detected by the regex.
+ if let Some(classes) = caps.get(3) {
+ for class in classes.as_str().split(" ") {
+ if IGNORE_CLASS.contains(&class) {
+ return caps[0].to_string();
+ }
+ }
+ }
+
+ insert_link_into_header(
+ level,
+ &caps[4],
+ caps.get(2).map(|x| x.as_str().to_string()),
+ caps.get(3).map(|x| x.as_str().to_string()),
+ &mut id_counter,
+ )
})
.into_owned()
}
@@ -816,15 +846,21 @@ fn build_header_links(html: &str) -> String {
fn insert_link_into_header(
level: usize,
content: &str,
+ id: Option<String>,
+ classes: Option<String>,
id_counter: &mut HashMap<String, usize>,
) -> String {
- let id = utils::unique_id_from_content(content, id_counter);
+ let id = id.unwrap_or_else(|| utils::unique_id_from_content(content, id_counter));
+ let classes = classes
+ .map(|s| format!(" class=\"{s}\""))
+ .unwrap_or_default();
format!(
- r##"<h{level} id="{id}"><a class="header" href="#{id}">{text}</a></h{level}>"##,
+ r##"<h{level} id="{id}"{classes}><a class="header" href="#{id}">{text}</a></h{level}>"##,
level = level,
id = id,
- text = content
+ text = content,
+ classes = classes
)
}
@@ -856,67 +892,64 @@ fn fix_code_blocks(html: &str) -> String {
.into_owned()
}
+static CODE_BLOCK_RE: Lazy<Regex> =
+ Lazy::new(|| Regex::new(r##"((?s)<code[^>]?class="([^"]+)".*?>(.*?)</code>)"##).unwrap());
+
fn add_playground_pre(
html: &str,
playground_config: &Playground,
edition: Option<RustEdition>,
) -> String {
- static ADD_PLAYGROUND_PRE: Lazy<Regex> =
- Lazy::new(|| Regex::new(r##"((?s)<code[^>]?class="([^"]+)".*?>(.*?)</code>)"##).unwrap());
-
- ADD_PLAYGROUND_PRE
+ CODE_BLOCK_RE
.replace_all(html, |caps: &Captures<'_>| {
let text = &caps[1];
let classes = &caps[2];
let code = &caps[3];
- if classes.contains("language-rust") {
- if (!classes.contains("ignore")
+ if classes.contains("language-rust")
+ && ((!classes.contains("ignore")
&& !classes.contains("noplayground")
&& !classes.contains("noplaypen")
&& playground_config.runnable)
- || classes.contains("mdbook-runnable")
- {
- let contains_e2015 = classes.contains("edition2015");
- let contains_e2018 = classes.contains("edition2018");
- let contains_e2021 = classes.contains("edition2021");
- let edition_class = if contains_e2015 || contains_e2018 || contains_e2021 {
- // the user forced edition, we should not overwrite it
- ""
- } else {
- match edition {
- Some(RustEdition::E2015) => " edition2015",
- Some(RustEdition::E2018) => " edition2018",
- Some(RustEdition::E2021) => " edition2021",
- None => "",
- }
- };
-
- // wrap the contents in an external pre block
- format!(
- "<pre class=\"playground\"><code class=\"{}{}\">{}</code></pre>",
- classes,
- edition_class,
- {
- let content: Cow<'_, str> = if playground_config.editable
- && classes.contains("editable")
- || text.contains("fn main")
- || text.contains("quick_main!")
- {
- code.into()
- } else {
- // we need to inject our own main
- let (attrs, code) = partition_source(code);
-
- format!("# #![allow(unused)]\n{}#fn main() {{\n{}#}}", attrs, code)
- .into()
- };
- hide_lines(&content)
- }
- )
+ || classes.contains("mdbook-runnable"))
+ {
+ let contains_e2015 = classes.contains("edition2015");
+ let contains_e2018 = classes.contains("edition2018");
+ let contains_e2021 = classes.contains("edition2021");
+ let edition_class = if contains_e2015 || contains_e2018 || contains_e2021 {
+ // the user forced edition, we should not overwrite it
+ ""
} else {
- format!("<code class=\"{}\">{}</code>", classes, hide_lines(code))
- }
+ match edition {
+ Some(RustEdition::E2015) => " edition2015",
+ Some(RustEdition::E2018) => " edition2018",
+ Some(RustEdition::E2021) => " edition2021",
+ None => "",
+ }
+ };
+
+ // wrap the contents in an external pre block
+ format!(
+ "<pre class=\"playground\"><code class=\"{}{}\">{}</code></pre>",
+ classes,
+ edition_class,
+ {
+ let content: Cow<'_, str> = if playground_config.editable
+ && classes.contains("editable")
+ || text.contains("fn main")
+ || text.contains("quick_main!")
+ {
+ code.into()
+ } else {
+ // we need to inject our own main
+ let (attrs, code) = partition_source(code);
+
+ format!("# #![allow(unused)]\n{}#fn main() {{\n{}#}}", attrs, code)
+ .into()
+ };
+ content
+ }
+ )
} else {
// not language-rust, so no-op
text.to_owned()
@@ -925,7 +958,50 @@ fn add_playground_pre(
.into_owned()
}
-fn hide_lines(content: &str) -> String {
+/// Modifies all `<code>` blocks to convert "hidden" lines and to wrap them in
+/// a `<span class="boring">`.
+fn hide_lines(html: &str, code_config: &Code) -> String {
+ let language_regex = Regex::new(r"\blanguage-(\w+)\b").unwrap();
+ let hidelines_regex = Regex::new(r"\bhidelines=(\S+)").unwrap();
+ CODE_BLOCK_RE
+ .replace_all(html, |caps: &Captures<'_>| {
+ let text = &caps[1];
+ let classes = &caps[2];
+ let code = &caps[3];
+
+ if classes.contains("language-rust") {
+ format!(
+ "<code class=\"{}\">{}</code>",
+ classes,
+ hide_lines_rust(code)
+ )
+ } else {
+ // First try to get the prefix from the code block
+ let hidelines_capture = hidelines_regex.captures(classes);
+ let hidelines_prefix = match &hidelines_capture {
+ Some(capture) => Some(&capture[1]),
+ None => {
+ // Then look up the prefix by language
+ language_regex.captures(classes).and_then(|capture| {
+ code_config.hidelines.get(&capture[1]).map(|p| p.as_str())
+ })
+ }
+ };
+
+ match hidelines_prefix {
+ Some(prefix) => format!(
+ "<code class=\"{}\">{}</code>",
+ classes,
+ hide_lines_with_prefix(code, prefix)
+ ),
+ None => text.to_owned(),
+ }
+ }
+ })
+ .into_owned()
+}
+
+fn hide_lines_rust(content: &str) -> String {
static BORING_LINES_REGEX: Lazy<Regex> = Lazy::new(|| Regex::new(r"^(\s*)#(.?)(.*)$").unwrap());
let mut result = String::with_capacity(content.len());
@@ -958,6 +1034,26 @@ fn hide_lines(content: &str) -> String {
result
}
+fn hide_lines_with_prefix(content: &str, prefix: &str) -> String {
+ let mut result = String::with_capacity(content.len());
+ for line in content.lines() {
+ if line.trim_start().starts_with(prefix) {
+ let pos = line.find(prefix).unwrap();
+ let (ws, rest) = (&line[..pos], &line[pos + prefix.len()..]);
+
+ result += "<span class=\"boring\">";
+ result += ws;
+ result += rest;
+ result += "\n";
+ result += "</span>";
+ continue;
+ }
+ result += line;
+ result += "\n";
+ }
+ result
+}
+
fn partition_source(s: &str) -> (String, String) {
let mut after_header = false;
let mut before = String::new();
@@ -993,6 +1089,7 @@ struct RenderItemContext<'a> {
#[cfg(test)]
mod tests {
use super::*;
+ use pretty_assertions::assert_eq;
#[test]
fn original_build_header_links() {
@@ -1021,6 +1118,21 @@ mod tests {
"<h1>Foo</h1><h3>Foo</h3>",
r##"<h1 id="foo"><a class="header" href="#foo">Foo</a></h1><h3 id="foo-1"><a class="header" href="#foo-1">Foo</a></h3>"##,
),
+ // id only
+ (
+ r##"<h1 id="foobar">Foo</h1>"##,
+ r##"<h1 id="foobar"><a class="header" href="#foobar">Foo</a></h1>"##,
+ ),
+ // class only
+ (
+ r##"<h1 class="class1 class2">Foo</h1>"##,
+ r##"<h1 id="foo" class="class1 class2"><a class="header" href="#foo">Foo</a></h1>"##,
+ ),
+ // both id and class
+ (
+ r##"<h1 id="foobar" class="class1 class2">Foo</h1>"##,
+ r##"<h1 id="foobar" class="class1 class2"><a class="header" href="#foobar">Foo</a></h1>"##,
+ ),
];
for (src, should_be) in inputs {
@@ -1033,17 +1145,17 @@ mod tests {
fn add_playground() {
let inputs = [
("<code class=\"language-rust\">x()</code>",
- "<pre class=\"playground\"><code class=\"language-rust\"><span class=\"boring\">#![allow(unused)]\n</span><span class=\"boring\">fn main() {\n</span>x()\n<span class=\"boring\">}</span></code></pre>"),
+ "<pre class=\"playground\"><code class=\"language-rust\"># #![allow(unused)]\n#fn main() {\nx()\n#}</code></pre>"),
("<code class=\"language-rust\">fn main() {}</code>",
"<pre class=\"playground\"><code class=\"language-rust\">fn main() {}</code></pre>"),
("<code class=\"language-rust editable\">let s = \"foo\n # bar\n\";</code>",
- "<pre class=\"playground\"><code class=\"language-rust editable\">let s = \"foo\n<span class=\"boring\"> bar\n</span>\";</code></pre>"),
- ("<code class=\"language-rust editable\">let s = \"foo\n ## bar\n\";</code>",
"<pre class=\"playground\"><code class=\"language-rust editable\">let s = \"foo\n # bar\n\";</code></pre>"),
+ ("<code class=\"language-rust editable\">let s = \"foo\n ## bar\n\";</code>",
+ "<pre class=\"playground\"><code class=\"language-rust editable\">let s = \"foo\n ## bar\n\";</code></pre>"),
("<code class=\"language-rust editable\">let s = \"foo\n # bar\n#\n\";</code>",
- "<pre class=\"playground\"><code class=\"language-rust editable\">let s = \"foo\n<span class=\"boring\"> bar\n</span><span class=\"boring\">\n</span>\";</code></pre>"),
+ "<pre class=\"playground\"><code class=\"language-rust editable\">let s = \"foo\n # bar\n#\n\";</code></pre>"),
("<code class=\"language-rust ignore\">let s = \"foo\n # bar\n\";</code>",
- "<code class=\"language-rust ignore\">let s = \"foo\n<span class=\"boring\"> bar\n</span>\";</code>"),
+ "<code class=\"language-rust ignore\">let s = \"foo\n # bar\n\";</code>"),
("<code class=\"language-rust editable\">#![no_std]\nlet s = \"foo\";\n #[some_attr]</code>",
"<pre class=\"playground\"><code class=\"language-rust editable\">#![no_std]\nlet s = \"foo\";\n #[some_attr]</code></pre>"),
];
@@ -1063,7 +1175,7 @@ mod tests {
fn add_playground_edition2015() {
let inputs = [
("<code class=\"language-rust\">x()</code>",
- "<pre class=\"playground\"><code class=\"language-rust edition2015\"><span class=\"boring\">#![allow(unused)]\n</span><span class=\"boring\">fn main() {\n</span>x()\n<span class=\"boring\">}</span></code></pre>"),
+ "<pre class=\"playground\"><code class=\"language-rust edition2015\"># #![allow(unused)]\n#fn main() {\nx()\n#}</code></pre>"),
("<code class=\"language-rust\">fn main() {}</code>",
"<pre class=\"playground\"><code class=\"language-rust edition2015\">fn main() {}</code></pre>"),
("<code class=\"language-rust edition2015\">fn main() {}</code>",
@@ -1087,7 +1199,7 @@ mod tests {
fn add_playground_edition2018() {
let inputs = [
("<code class=\"language-rust\">x()</code>",
- "<pre class=\"playground\"><code class=\"language-rust edition2018\"><span class=\"boring\">#![allow(unused)]\n</span><span class=\"boring\">fn main() {\n</span>x()\n<span class=\"boring\">}</span></code></pre>"),
+ "<pre class=\"playground\"><code class=\"language-rust edition2018\"># #![allow(unused)]\n#fn main() {\nx()\n#}</code></pre>"),
("<code class=\"language-rust\">fn main() {}</code>",
"<pre class=\"playground\"><code class=\"language-rust edition2018\">fn main() {}</code></pre>"),
("<code class=\"language-rust edition2015\">fn main() {}</code>",
@@ -1111,7 +1223,7 @@ mod tests {
fn add_playground_edition2021() {
let inputs = [
("<code class=\"language-rust\">x()</code>",
- "<pre class=\"playground\"><code class=\"language-rust edition2021\"><span class=\"boring\">#![allow(unused)]\n</span><span class=\"boring\">fn main() {\n</span>x()\n<span class=\"boring\">}</span></code></pre>"),
+ "<pre class=\"playground\"><code class=\"language-rust edition2021\"># #![allow(unused)]\n#fn main() {\nx()\n#}</code></pre>"),
("<code class=\"language-rust\">fn main() {}</code>",
"<pre class=\"playground\"><code class=\"language-rust edition2021\">fn main() {}</code></pre>"),
("<code class=\"language-rust edition2015\">fn main() {}</code>",
@@ -1131,4 +1243,60 @@ mod tests {
assert_eq!(&*got, *should_be);
}
}
+
+ #[test]
+ fn hide_lines_language_rust() {
+ let inputs = [
+ (
+ "<pre class=\"playground\"><code class=\"language-rust\">\n# #![allow(unused)]\n#fn main() {\nx()\n#}</code></pre>",
+ "<pre class=\"playground\"><code class=\"language-rust\">\n<span class=\"boring\">#![allow(unused)]\n</span><span class=\"boring\">fn main() {\n</span>x()\n<span class=\"boring\">}</span></code></pre>",),
+ (
+ "<pre class=\"playground\"><code class=\"language-rust\">fn main() {}</code></pre>",
+ "<pre class=\"playground\"><code class=\"language-rust\">fn main() {}</code></pre>",),
+ (
+ "<pre class=\"playground\"><code class=\"language-rust editable\">let s = \"foo\n # bar\n\";</code></pre>",
+ "<pre class=\"playground\"><code class=\"language-rust editable\">let s = \"foo\n<span class=\"boring\"> bar\n</span>\";</code></pre>",),
+ (
+ "<pre class=\"playground\"><code class=\"language-rust editable\">let s = \"foo\n ## bar\n\";</code></pre>",
+ "<pre class=\"playground\"><code class=\"language-rust editable\">let s = \"foo\n # bar\n\";</code></pre>",),
+ (
+ "<pre class=\"playground\"><code class=\"language-rust editable\">let s = \"foo\n # bar\n#\n\";</code></pre>",
+ "<pre class=\"playground\"><code class=\"language-rust editable\">let s = \"foo\n<span class=\"boring\"> bar\n</span><span class=\"boring\">\n</span>\";</code></pre>",),
+ (
+ "<code class=\"language-rust ignore\">let s = \"foo\n # bar\n\";</code>",
+ "<code class=\"language-rust ignore\">let s = \"foo\n<span class=\"boring\"> bar\n</span>\";</code>",),
+ (
+ "<pre class=\"playground\"><code class=\"language-rust editable\">#![no_std]\nlet s = \"foo\";\n #[some_attr]</code></pre>",
+ "<pre class=\"playground\"><code class=\"language-rust editable\">#![no_std]\nlet s = \"foo\";\n #[some_attr]</code></pre>",),
+ ];
+ for (src, should_be) in &inputs {
+ let got = hide_lines(src, &Code::default());
+ assert_eq!(&*got, *should_be);
+ }
+ }
+
+ #[test]
+ fn hide_lines_language_other() {
+ let inputs = [
+ (
+ "<code class=\"language-python\">~hidden()\nnothidden():\n~ hidden()\n ~hidden()\n nothidden()</code>",
+ "<code class=\"language-python\"><span class=\"boring\">hidden()\n</span>nothidden():\n<span class=\"boring\"> hidden()\n</span><span class=\"boring\"> hidden()\n</span> nothidden()\n</code>",),
+ (
+ "<code class=\"language-python hidelines=!!!\">!!!hidden()\nnothidden():\n!!! hidden()\n !!!hidden()\n nothidden()</code>",
+ "<code class=\"language-python hidelines=!!!\"><span class=\"boring\">hidden()\n</span>nothidden():\n<span class=\"boring\"> hidden()\n</span><span class=\"boring\"> hidden()\n</span> nothidden()\n</code>",),
+ ];
+ for (src, should_be) in &inputs {
+ let got = hide_lines(
+ src,
+ &Code {
+ hidelines: {
+ let mut map = HashMap::new();
+ map.insert("python".to_string(), "~".to_string());
+ map
+ },
+ },
+ );
+ assert_eq!(&*got, *should_be);
+ }
+ }
}
diff --git a/vendor/mdbook/src/renderer/html_handlebars/helpers/navigation.rs b/vendor/mdbook/src/renderer/html_handlebars/helpers/navigation.rs
index b184c4410..968a67016 100644
--- a/vendor/mdbook/src/renderer/html_handlebars/helpers/navigation.rs
+++ b/vendor/mdbook/src/renderer/html_handlebars/helpers/navigation.rs
@@ -127,7 +127,7 @@ fn render(
context.insert(
"path_to_root".to_owned(),
- json!(utils::fs::path_to_root(&base_path)),
+ json!(utils::fs::path_to_root(base_path)),
);
chapter
diff --git a/vendor/mdbook/src/renderer/html_handlebars/search.rs b/vendor/mdbook/src/renderer/html_handlebars/search.rs
index a9e2f5ca6..24d62fda2 100644
--- a/vendor/mdbook/src/renderer/html_handlebars/search.rs
+++ b/vendor/mdbook/src/renderer/html_handlebars/search.rs
@@ -138,9 +138,11 @@ fn render_item(
in_heading = true;
}
- Event::End(Tag::Heading(i, ..)) if i as u32 <= max_section_depth => {
+ Event::End(Tag::Heading(i, id, _classes)) if i as u32 <= max_section_depth => {
in_heading = false;
- section_id = Some(utils::unique_id_from_content(&heading, &mut id_counter));
+ section_id = id
+ .map(|id| id.to_string())
+ .or_else(|| Some(utils::unique_id_from_content(&heading, &mut id_counter)));
breadcrumbs.push(heading.clone());
}
Event::Start(Tag::FootnoteDefinition(name)) => {
diff --git a/vendor/mdbook/src/renderer/markdown_renderer.rs b/vendor/mdbook/src/renderer/markdown_renderer.rs
index 13bd05cc3..4a5a5c2af 100644
--- a/vendor/mdbook/src/renderer/markdown_renderer.rs
+++ b/vendor/mdbook/src/renderer/markdown_renderer.rs
@@ -37,14 +37,14 @@ impl Renderer for MarkdownRenderer {
if !ch.is_draft_chapter() {
utils::fs::write_file(
&ctx.destination,
- &ch.path.as_ref().expect("Checked path exists before"),
+ ch.path.as_ref().expect("Checked path exists before"),
ch.content.as_bytes(),
)?;
}
}
}
- fs::create_dir_all(&destination)
+ fs::create_dir_all(destination)
.with_context(|| "Unexpected error when constructing destination path")?;
Ok(())
diff --git a/vendor/mdbook/src/theme/book.js b/vendor/mdbook/src/theme/book.js
index e303ebb45..67a8a5b08 100644
--- a/vendor/mdbook/src/theme/book.js
+++ b/vendor/mdbook/src/theme/book.js
@@ -68,7 +68,7 @@ function playground_text(playground, hidden = true) {
}
// updates the visibility of play button based on `no_run` class and
- // used crates vs ones available on http://play.rust-lang.org
+ // used crates vs ones available on https://play.rust-lang.org
function update_play_button(pre_block, playground_crates) {
var play_button = pre_block.querySelector(".play-button");
@@ -179,7 +179,7 @@ function playground_text(playground, hidden = true) {
// even if highlighting doesn't apply
code_nodes.forEach(function (block) { block.classList.add('hljs'); });
- Array.from(document.querySelectorAll("code.language-rust")).forEach(function (block) {
+ Array.from(document.querySelectorAll("code.hljs")).forEach(function (block) {
var lines = Array.from(block.querySelectorAll('.boring'));
// If no lines were hidden, return
@@ -551,13 +551,6 @@ function playground_text(playground, hidden = true) {
firstContact = null;
}
}, { passive: true });
-
- // Scroll sidebar to current active section
- var activeSection = document.getElementById("sidebar").querySelector(".active");
- if (activeSection) {
- // https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollIntoView
- activeSection.scrollIntoView({ block: 'center' });
- }
})();
(function chapterNavigation() {
@@ -676,13 +669,14 @@ function playground_text(playground, hidden = true) {
}, { passive: true });
})();
(function controllBorder() {
- menu.classList.remove('bordered');
- document.addEventListener('scroll', function () {
+ function updateBorder() {
if (menu.offsetTop === 0) {
menu.classList.remove('bordered');
} else {
menu.classList.add('bordered');
}
- }, { passive: true });
+ }
+ updateBorder();
+ document.addEventListener('scroll', updateBorder, { passive: true });
})();
})();
diff --git a/vendor/mdbook/src/theme/index.hbs b/vendor/mdbook/src/theme/index.hbs
index 6f3948c65..80315c48f 100644
--- a/vendor/mdbook/src/theme/index.hbs
+++ b/vendor/mdbook/src/theme/index.hbs
@@ -110,12 +110,34 @@
<div id="sidebar-resize-handle" class="sidebar-resize-handle"></div>
</nav>
+ <!-- Track and set sidebar scroll position -->
+ <script>
+ var sidebarScrollbox = document.querySelector('#sidebar .sidebar-scrollbox');
+ sidebarScrollbox.addEventListener('click', function(e) {
+ if (e.target.tagName === 'A') {
+ sessionStorage.setItem('sidebar-scroll', sidebarScrollbox.scrollTop);
+ }
+ }, { passive: true });
+ var sidebarScrollTop = sessionStorage.getItem('sidebar-scroll');
+ sessionStorage.removeItem('sidebar-scroll');
+ if (sidebarScrollTop) {
+ // preserve sidebar scroll position when navigating via links within sidebar
+ sidebarScrollbox.scrollTop = sidebarScrollTop;
+ } else {
+ // scroll sidebar to current active section when navigating via "next/previous chapter" buttons
+ var activeSection = document.querySelector('#sidebar .active');
+ if (activeSection) {
+ activeSection.scrollIntoView({ block: 'center' });
+ }
+ }
+ </script>
+
<div id="page-wrapper" class="page-wrapper">
<div class="page">
{{> header}}
<div id="menu-bar-hover-placeholder"></div>
- <div id="menu-bar" class="menu-bar sticky bordered">
+ <div id="menu-bar" class="menu-bar sticky">
<div class="left-buttons">
<button id="sidebar-toggle" class="icon-button" type="button" title="Toggle Table of Contents" aria-label="Toggle Table of Contents" aria-controls="sidebar">
<i class="fa fa-bars"></i>
diff --git a/vendor/mdbook/src/theme/tomorrow-night.css b/vendor/mdbook/src/theme/tomorrow-night.css
index 5b4aca77c..81fe276e7 100644
--- a/vendor/mdbook/src/theme/tomorrow-night.css
+++ b/vendor/mdbook/src/theme/tomorrow-night.css
@@ -1,7 +1,7 @@
/* Tomorrow Night Theme */
-/* http://jmblog.github.com/color-themes-for-google-code-highlightjs */
+/* https://github.com/jmblog/color-themes-for-highlightjs */
/* Original theme - https://github.com/chriskempson/tomorrow-theme */
-/* http://jmblog.github.com/color-themes-for-google-code-highlightjs */
+/* https://github.com/jmblog/color-themes-for-highlightjs */
/* Tomorrow Comment */
.hljs-comment {
diff --git a/vendor/mdbook/src/utils/fs.rs b/vendor/mdbook/src/utils/fs.rs
index 67f7062db..8ad5aad8b 100644
--- a/vendor/mdbook/src/utils/fs.rs
+++ b/vendor/mdbook/src/utils/fs.rs
@@ -210,39 +210,36 @@ mod tests {
};
// Create a couple of files
- if let Err(err) = fs::File::create(&tmp.path().join("file.txt")) {
+ if let Err(err) = fs::File::create(tmp.path().join("file.txt")) {
panic!("Could not create file.txt: {}", err);
}
- if let Err(err) = fs::File::create(&tmp.path().join("file.md")) {
+ if let Err(err) = fs::File::create(tmp.path().join("file.md")) {
panic!("Could not create file.md: {}", err);
}
- if let Err(err) = fs::File::create(&tmp.path().join("file.png")) {
+ if let Err(err) = fs::File::create(tmp.path().join("file.png")) {
panic!("Could not create file.png: {}", err);
}
- if let Err(err) = fs::create_dir(&tmp.path().join("sub_dir")) {
+ if let Err(err) = fs::create_dir(tmp.path().join("sub_dir")) {
panic!("Could not create sub_dir: {}", err);
}
- if let Err(err) = fs::File::create(&tmp.path().join("sub_dir/file.png")) {
+ if let Err(err) = fs::File::create(tmp.path().join("sub_dir/file.png")) {
panic!("Could not create sub_dir/file.png: {}", err);
}
- if let Err(err) = fs::create_dir(&tmp.path().join("sub_dir_exists")) {
+ if let Err(err) = fs::create_dir(tmp.path().join("sub_dir_exists")) {
panic!("Could not create sub_dir_exists: {}", err);
}
- if let Err(err) = fs::File::create(&tmp.path().join("sub_dir_exists/file.txt")) {
+ if let Err(err) = fs::File::create(tmp.path().join("sub_dir_exists/file.txt")) {
panic!("Could not create sub_dir_exists/file.txt: {}", err);
}
- if let Err(err) = symlink(
- &tmp.path().join("file.png"),
- &tmp.path().join("symlink.png"),
- ) {
+ if let Err(err) = symlink(tmp.path().join("file.png"), tmp.path().join("symlink.png")) {
panic!("Could not symlink file.png: {}", err);
}
// Create output dir
- if let Err(err) = fs::create_dir(&tmp.path().join("output")) {
+ if let Err(err) = fs::create_dir(tmp.path().join("output")) {
panic!("Could not create output: {}", err);
}
- if let Err(err) = fs::create_dir(&tmp.path().join("output/sub_dir_exists")) {
+ if let Err(err) = fs::create_dir(tmp.path().join("output/sub_dir_exists")) {
panic!("Could not create output/sub_dir_exists: {}", err);
}
@@ -253,22 +250,22 @@ mod tests {
}
// Check if the correct files where created
- if !(&tmp.path().join("output/file.txt")).exists() {
+ if !tmp.path().join("output/file.txt").exists() {
panic!("output/file.txt should exist")
}
- if (&tmp.path().join("output/file.md")).exists() {
+ if tmp.path().join("output/file.md").exists() {
panic!("output/file.md should not exist")
}
- if !(&tmp.path().join("output/file.png")).exists() {
+ if !tmp.path().join("output/file.png").exists() {
panic!("output/file.png should exist")
}
- if !(&tmp.path().join("output/sub_dir/file.png")).exists() {
+ if !tmp.path().join("output/sub_dir/file.png").exists() {
panic!("output/sub_dir/file.png should exist")
}
- if !(&tmp.path().join("output/sub_dir_exists/file.txt")).exists() {
+ if !tmp.path().join("output/sub_dir_exists/file.txt").exists() {
panic!("output/sub_dir/file.png should exist")
}
- if !(&tmp.path().join("output/symlink.png")).exists() {
+ if !tmp.path().join("output/symlink.png").exists() {
panic!("output/symlink.png should exist")
}
}
diff --git a/vendor/mdbook/src/utils/mod.rs b/vendor/mdbook/src/utils/mod.rs
index 9f67deda7..9156916ea 100644
--- a/vendor/mdbook/src/utils/mod.rs
+++ b/vendor/mdbook/src/utils/mod.rs
@@ -183,6 +183,7 @@ pub fn new_cmark_parser(text: &str, curly_quotes: bool) -> Parser<'_, '_> {
opts.insert(Options::ENABLE_FOOTNOTES);
opts.insert(Options::ENABLE_STRIKETHROUGH);
opts.insert(Options::ENABLE_TASKLISTS);
+ opts.insert(Options::ENABLE_HEADING_ATTRIBUTES);
if curly_quotes {
opts.insert(Options::ENABLE_SMART_PUNCTUATION);
}
diff --git a/vendor/mdbook/test_book/src/individual/heading.md b/vendor/mdbook/test_book/src/individual/heading.md
index df96d74c3..f9f4d5b2e 100644
--- a/vendor/mdbook/test_book/src/individual/heading.md
+++ b/vendor/mdbook/test_book/src/individual/heading.md
@@ -13,3 +13,9 @@
##### Really Small Heading
###### Is it even a heading anymore - heading
+
+## Custom id {#example-id}
+
+## Custom class {.class1 .class2}
+
+## Both id and class {#example-id2 .class1 .class2}
diff --git a/vendor/mdbook/test_book/src/individual/image.md b/vendor/mdbook/test_book/src/individual/image.md
index c73db95ac..8bb66d334 100644
--- a/vendor/mdbook/test_book/src/individual/image.md
+++ b/vendor/mdbook/test_book/src/individual/image.md
@@ -4,19 +4,19 @@ For copyright and trademark information on these images, please check [rust-artw
## A 16x16 image
-![16x16 rust-lang logo](http://rust-lang.org/logos/rust-logo-16x16.png)
+![16x16 rust-lang logo](https://rust-lang.org/logos/rust-logo-16x16.png)
## A 32x32 image
-![32x32 rust-lang logo](http://rust-lang.org/logos/rust-logo-32x32-blk.png)
+![32x32 rust-lang logo](https://rust-lang.org/logos/rust-logo-32x32-blk.png)
## A 256x256 image
-![256x256 rust-lang logo](http://rust-lang.org/logos/rust-logo-256x256.png)
+![256x256 rust-lang logo](https://rust-lang.org/logos/rust-logo-256x256.png)
## A 512x512 image
-![512x512 rust-lang logo](http://rust-lang.org/logos/rust-logo-512x512-blk.png)
+![512x512 rust-lang logo](https://rust-lang.org/logos/rust-logo-512x512-blk.png)
## A large image
diff --git a/vendor/mdbook/test_book/src/individual/mixed.md b/vendor/mdbook/test_book/src/individual/mixed.md
index e9d101b21..10b487a04 100644
--- a/vendor/mdbook/test_book/src/individual/mixed.md
+++ b/vendor/mdbook/test_book/src/individual/mixed.md
@@ -31,7 +31,7 @@ fn main(){
A random image sprinkled in between
-![16x16 rust-lang logo](http://rust-lang.org/logos/rust-logo-16x16.png)
+![16x16 rust-lang logo](https://rust-lang.org/logos/rust-logo-16x16.png)
---
diff --git a/vendor/mdbook/test_book/src/individual/strikethrough.md b/vendor/mdbook/test_book/src/individual/strikethrough.md
index 4ce62cbdf..9a5494779 100644
--- a/vendor/mdbook/test_book/src/individual/strikethrough.md
+++ b/vendor/mdbook/test_book/src/individual/strikethrough.md
@@ -1,5 +1,7 @@
# Strikethrough
+~Single strike~
+
~~This is Striked~~
~~This is **strong**, _italic_ , **_both_** and striked~~
diff --git a/vendor/mdbook/test_book/src/languages/highlight.md b/vendor/mdbook/test_book/src/languages/highlight.md
index af0f34005..85a48b0c5 100644
--- a/vendor/mdbook/test_book/src/languages/highlight.md
+++ b/vendor/mdbook/test_book/src/languages/highlight.md
@@ -57,7 +57,7 @@ _start:
## bash
-```
+```bash
#!/bin/bash
###### CONFIG
diff --git a/vendor/mdbook/tests/alternative_backends.rs b/vendor/mdbook/tests/alternative_backends.rs
index cc7bfc7d9..72594e576 100644
--- a/vendor/mdbook/tests/alternative_backends.rs
+++ b/vendor/mdbook/tests/alternative_backends.rs
@@ -90,7 +90,7 @@ fn relative_command_path() {
.set("output.html", toml::value::Table::new())
.unwrap();
config.set("output.myrenderer.command", cmd_path).unwrap();
- let md = MDBook::init(&temp.path())
+ let md = MDBook::init(temp.path())
.with_config(config)
.build()
.unwrap();
diff --git a/vendor/mdbook/tests/cli/init.rs b/vendor/mdbook/tests/cli/init.rs
new file mode 100644
index 000000000..6bd122743
--- /dev/null
+++ b/vendor/mdbook/tests/cli/init.rs
@@ -0,0 +1,24 @@
+use crate::cli::cmd::mdbook_cmd;
+use crate::dummy_book::DummyBook;
+
+use mdbook::config::Config;
+
+/// Run `mdbook init` with `--force` to skip the confirmation prompts
+#[test]
+fn base_mdbook_init_can_skip_confirmation_prompts() {
+ let temp = DummyBook::new().build().unwrap();
+
+ // doesn't exist before
+ assert!(!temp.path().join("book").exists());
+
+ let mut cmd = mdbook_cmd();
+ cmd.args(["init", "--force"]).current_dir(temp.path());
+ cmd.assert()
+ .success()
+ .stdout(predicates::str::contains("\nAll done, no errors...\n"));
+
+ let config = Config::from_disk(temp.path().join("book.toml")).unwrap();
+ assert_eq!(config.book.title, None);
+
+ assert!(!temp.path().join(".gitignore").exists());
+}
diff --git a/vendor/mdbook/tests/cli/mod.rs b/vendor/mdbook/tests/cli/mod.rs
index 989f443f0..152b4ee91 100644
--- a/vendor/mdbook/tests/cli/mod.rs
+++ b/vendor/mdbook/tests/cli/mod.rs
@@ -1,3 +1,4 @@
mod build;
mod cmd;
+mod init;
mod test;
diff --git a/vendor/mdbook/tests/dummy_book/mod.rs b/vendor/mdbook/tests/dummy_book/mod.rs
index d9d9a068d..f91ed9f07 100644
--- a/vendor/mdbook/tests/dummy_book/mod.rs
+++ b/vendor/mdbook/tests/dummy_book/mod.rs
@@ -112,12 +112,12 @@ fn recursive_copy<A: AsRef<Path>, B: AsRef<Path>>(from: A, to: B) -> Result<()>
let from = from.as_ref();
let to = to.as_ref();
- for entry in WalkDir::new(&from) {
+ for entry in WalkDir::new(from) {
let entry = entry.with_context(|| "Unable to inspect directory entry")?;
let original_location = entry.path();
let relative = original_location
- .strip_prefix(&from)
+ .strip_prefix(from)
.expect("`original_location` is inside the `from` directory");
let new_location = to.join(relative);
@@ -126,7 +126,7 @@ fn recursive_copy<A: AsRef<Path>, B: AsRef<Path>>(from: A, to: B) -> Result<()>
fs::create_dir_all(parent).with_context(|| "Couldn't create directory")?;
}
- fs::copy(&original_location, &new_location)
+ fs::copy(original_location, &new_location)
.with_context(|| "Unable to copy file contents")?;
}
}
diff --git a/vendor/mdbook/tests/dummy_book/src/SUMMARY.md b/vendor/mdbook/tests/dummy_book/src/SUMMARY.md
index 49b64a545..f310508b2 100644
--- a/vendor/mdbook/tests/dummy_book/src/SUMMARY.md
+++ b/vendor/mdbook/tests/dummy_book/src/SUMMARY.md
@@ -14,6 +14,7 @@
- [Unicode](first/unicode.md)
- [No Headers](first/no-headers.md)
- [Duplicate Headers](first/duplicate-headers.md)
+ - [Heading Attributes](first/heading-attributes.md)
- [Second Chapter](second.md)
- [Nested Chapter](second/nested.md)
diff --git a/vendor/mdbook/tests/dummy_book/src/first/heading-attributes.md b/vendor/mdbook/tests/dummy_book/src/first/heading-attributes.md
new file mode 100644
index 000000000..a09a22b6b
--- /dev/null
+++ b/vendor/mdbook/tests/dummy_book/src/first/heading-attributes.md
@@ -0,0 +1,5 @@
+# Heading Attributes {#attrs}
+
+## Heading with classes {.class1 .class2}
+
+## Heading with id and classes {#both .class1 .class2}
diff --git a/vendor/mdbook/tests/rendered_output.rs b/vendor/mdbook/tests/rendered_output.rs
index a279c4f8e..7626b9e8a 100644
--- a/vendor/mdbook/tests/rendered_output.rs
+++ b/vendor/mdbook/tests/rendered_output.rs
@@ -35,6 +35,7 @@ const TOC_SECOND_LEVEL: &[&str] = &[
"1.5. Unicode",
"1.6. No Headers",
"1.7. Duplicate Headers",
+ "1.8. Heading Attributes",
"2.1. Nested Chapter",
];
@@ -275,7 +276,7 @@ fn root_index_html() -> Result<Document> {
.with_context(|| "Book building failed")?;
let index_page = temp.path().join("book").join("index.html");
- let html = fs::read_to_string(&index_page).with_context(|| "Unable to read index.html")?;
+ let html = fs::read_to_string(index_page).with_context(|| "Unable to read index.html")?;
Ok(Document::from(html.as_str()))
}
@@ -412,7 +413,7 @@ fn recursive_includes_are_capped() {
let content = &["Around the world, around the world
Around the world, around the world
Around the world, around the world"];
- assert_contains_strings(&recursive, content);
+ assert_contains_strings(recursive, content);
}
#[test]
@@ -462,7 +463,7 @@ fn by_default_mdbook_use_index_preprocessor_to_convert_readme_to_index() {
let second_index = temp.path().join("book").join("second").join("index.html");
let unexpected_strings = vec!["Second README"];
- assert_doesnt_contain_strings(&second_index, &unexpected_strings);
+ assert_doesnt_contain_strings(second_index, &unexpected_strings);
}
#[test]
@@ -628,10 +629,8 @@ fn edit_url_has_configured_src_dir_edit_url() {
}
fn remove_absolute_components(path: &Path) -> impl Iterator<Item = Component> + '_ {
- path.components().skip_while(|c| match c {
- Component::Prefix(_) | Component::RootDir => true,
- _ => false,
- })
+ path.components()
+ .skip_while(|c| matches!(c, Component::Prefix(_) | Component::RootDir))
}
/// Checks formatting of summary names with inline elements.
@@ -756,6 +755,7 @@ mod search {
let no_headers = get_doc_ref("first/no-headers.html");
let duplicate_headers_1 = get_doc_ref("first/duplicate-headers.html#header-text-1");
let conclusion = get_doc_ref("conclusion.html#conclusion");
+ let heading_attrs = get_doc_ref("first/heading-attributes.html#both");
let bodyidx = &index["index"]["index"]["body"]["root"];
let textidx = &bodyidx["t"]["e"]["x"]["t"];
@@ -768,7 +768,7 @@ mod search {
assert_eq!(docs[&some_section]["body"], "");
assert_eq!(
docs[&summary]["body"],
- "Dummy Book Introduction First Chapter Nested Chapter Includes Recursive Markdown Unicode No Headers Duplicate Headers Second Chapter Nested Chapter Conclusion"
+ "Dummy Book Introduction First Chapter Nested Chapter Includes Recursive Markdown Unicode No Headers Duplicate Headers Heading Attributes Second Chapter Nested Chapter Conclusion"
);
assert_eq!(
docs[&summary]["breadcrumbs"],
@@ -787,6 +787,10 @@ mod search {
docs[&no_headers]["body"],
"Capybara capybara capybara. Capybara capybara capybara. ThisLongWordIsIncludedSoWeCanCheckThatSufficientlyLongWordsAreOmittedFromTheSearchIndex."
);
+ assert_eq!(
+ docs[&heading_attrs]["breadcrumbs"],
+ "First Chapter » Heading Attributes » Heading with id and classes"
+ );
}
// Setting this to `true` may cause issues with `cargo watch`,
@@ -803,7 +807,7 @@ mod search {
let src = read_book_index(temp.path());
let dest = Path::new(env!("CARGO_MANIFEST_DIR")).join("tests/searchindex_fixture.json");
- let dest = File::create(&dest).unwrap();
+ let dest = File::create(dest).unwrap();
serde_json::to_writer_pretty(dest, &src).unwrap();
src
@@ -891,8 +895,8 @@ fn custom_fonts() {
assert_eq!(actual_files(&p.join("book/fonts")), &builtin_fonts);
assert!(has_fonts_css(p));
- // Mixed with copy_fonts=true
- // This should generate a deprecation warning.
+ // Mixed with copy-fonts=true
+ // Should ignore the copy-fonts setting since the user has provided their own fonts.css.
let temp = TempFileBuilder::new().prefix("mdbook").tempdir().unwrap();
let p = temp.path();
MDBook::init(p).build().unwrap();
@@ -900,10 +904,10 @@ fn custom_fonts() {
write_file(&p.join("theme/fonts"), "myfont.woff", b"").unwrap();
MDBook::load(p).unwrap().build().unwrap();
assert!(has_fonts_css(p));
- let mut expected = Vec::from(builtin_fonts);
- expected.push("myfont.woff");
- expected.sort();
- assert_eq!(actual_files(&p.join("book/fonts")), expected.as_slice());
+ assert_eq!(
+ actual_files(&p.join("book/fonts")),
+ ["fonts.css", "myfont.woff"]
+ );
// copy-fonts=false, no theme
// This should generate a deprecation warning.
@@ -948,3 +952,19 @@ fn custom_fonts() {
&["fonts.css", "myfont.woff"]
);
}
+
+#[test]
+fn custom_header_attributes() {
+ let temp = DummyBook::new().build().unwrap();
+ let md = MDBook::load(temp.path()).unwrap();
+ md.build().unwrap();
+
+ let contents = temp.path().join("book/first/heading-attributes.html");
+
+ let summary_strings = &[
+ r##"<h1 id="attrs"><a class="header" href="#attrs">Heading Attributes</a></h1>"##,
+ r##"<h2 id="heading-with-classes" class="class1 class2"><a class="header" href="#heading-with-classes">Heading with classes</a></h2>"##,
+ r##"<h2 id="both" class="class1 class2"><a class="header" href="#both">Heading with id and classes</a></h2>"##,
+ ];
+ assert_contains_strings(&contents, summary_strings);
+}
diff --git a/vendor/mdbook/tests/searchindex_fixture.json b/vendor/mdbook/tests/searchindex_fixture.json
index 3d7062d23..854630289 100644
--- a/vendor/mdbook/tests/searchindex_fixture.json
+++ b/vendor/mdbook/tests/searchindex_fixture.json
@@ -23,6 +23,9 @@
"first/duplicate-headers.html#header-text",
"first/duplicate-headers.html#header-text-1",
"first/duplicate-headers.html#header-text-2",
+ "first/heading-attributes.html#attrs",
+ "first/heading-attributes.html#heading-with-classes",
+ "first/heading-attributes.html#both",
"second.html#second-chapter",
"second/nested.html#testing-relative-links-for-the-print-page",
"second/nested.html#some-section",
@@ -42,7 +45,7 @@
"title": 1
},
"10": {
- "body": 19,
+ "body": 21,
"breadcrumbs": 4,
"title": 1
},
@@ -112,21 +115,36 @@
"title": 2
},
"23": {
+ "body": 0,
+ "breadcrumbs": 6,
+ "title": 2
+ },
+ "24": {
+ "body": 0,
+ "breadcrumbs": 6,
+ "title": 2
+ },
+ "25": {
+ "body": 0,
+ "breadcrumbs": 7,
+ "title": 3
+ },
+ "26": {
"body": 20,
"breadcrumbs": 4,
"title": 2
},
- "24": {
+ "27": {
"body": 18,
"breadcrumbs": 9,
"title": 5
},
- "25": {
+ "28": {
"body": 0,
"breadcrumbs": 5,
"title": 1
},
- "26": {
+ "29": {
"body": 3,
"breadcrumbs": 2,
"title": 1
@@ -181,7 +199,7 @@
"title": "Introduction"
},
"10": {
- "body": "Dummy Book Introduction First Chapter Nested Chapter Includes Recursive Markdown Unicode No Headers Duplicate Headers Second Chapter Nested Chapter Conclusion",
+ "body": "Dummy Book Introduction First Chapter Nested Chapter Includes Recursive Markdown Unicode No Headers Duplicate Headers Heading Attributes Second Chapter Nested Chapter Conclusion",
"breadcrumbs": "First Chapter » Includes » Summary",
"id": "10",
"title": "Summary"
@@ -265,27 +283,45 @@
"title": "header-text"
},
"23": {
+ "body": "",
+ "breadcrumbs": "First Chapter » Heading Attributes » Heading Attributes",
+ "id": "23",
+ "title": "Heading Attributes"
+ },
+ "24": {
+ "body": "",
+ "breadcrumbs": "First Chapter » Heading Attributes » Heading with classes",
+ "id": "24",
+ "title": "Heading with classes"
+ },
+ "25": {
+ "body": "",
+ "breadcrumbs": "First Chapter » Heading Attributes » Heading with id and classes",
+ "id": "25",
+ "title": "Heading with id and classes"
+ },
+ "26": {
"body": "This makes sure you can insert runnable Rust files. fn main() { println!(\"Hello World!\");\n#\n# // You can even hide lines! :D\n# println!(\"I am hidden! Expand the code snippet to see me\");\n}",
"breadcrumbs": "Second Chapter » Second Chapter",
- "id": "23",
+ "id": "26",
"title": "Second Chapter"
},
- "24": {
+ "27": {
"body": "When we link to the first section , it should work on both the print page and the non-print page. A fragment link should work. Link outside . Some image HTML Link",
"breadcrumbs": "Second Chapter » Nested Chapter » Testing relative links for the print page",
- "id": "24",
+ "id": "27",
"title": "Testing relative links for the print page"
},
- "25": {
+ "28": {
"body": "",
"breadcrumbs": "Second Chapter » Nested Chapter » Some section",
- "id": "25",
+ "id": "28",
"title": "Some section"
},
- "26": {
+ "29": {
"body": "I put &lt;HTML&gt; in here!",
"breadcrumbs": "Conclusion » Conclusion",
- "id": "26",
+ "id": "29",
"title": "Conclusion"
},
"3": {
@@ -331,7 +367,7 @@
"title": "Includes"
}
},
- "length": 27,
+ "length": 30,
"save": true
},
"fields": [
@@ -498,6 +534,41 @@
}
}
}
+ },
+ "t": {
+ "df": 0,
+ "docs": {},
+ "t": {
+ "df": 0,
+ "docs": {},
+ "r": {
+ "df": 0,
+ "docs": {},
+ "i": {
+ "b": {
+ "df": 0,
+ "docs": {},
+ "u": {
+ "df": 0,
+ "docs": {},
+ "t": {
+ "df": 2,
+ "docs": {
+ "10": {
+ "tf": 1.0
+ },
+ "23": {
+ "tf": 1.0
+ }
+ }
+ }
+ }
+ },
+ "df": 0,
+ "docs": {}
+ }
+ }
+ }
}
},
"b": {
@@ -619,7 +690,7 @@
"h": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -821,7 +892,7 @@
"2": {
"tf": 1.0
},
- "23": {
+ "26": {
"tf": 1.0
},
"4": {
@@ -856,6 +927,29 @@
"df": 0,
"docs": {}
},
+ "l": {
+ "a": {
+ "df": 0,
+ "docs": {},
+ "s": {
+ "df": 0,
+ "docs": {},
+ "s": {
+ "df": 2,
+ "docs": {
+ "24": {
+ "tf": 1.0
+ },
+ "25": {
+ "tf": 1.0
+ }
+ }
+ }
+ }
+ },
+ "df": 0,
+ "docs": {}
+ },
"o": {
"d": {
"df": 0,
@@ -863,7 +957,7 @@
"e": {
"df": 2,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
},
"4": {
@@ -930,7 +1024,7 @@
"10": {
"tf": 1.0
},
- "26": {
+ "29": {
"tf": 1.0
}
}
@@ -1002,7 +1096,7 @@
"d": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
},
@@ -1115,7 +1209,7 @@
"n": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -1156,7 +1250,7 @@
"d": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -1225,7 +1319,7 @@
"0": {
"tf": 1.0
},
- "23": {
+ "26": {
"tf": 1.0
},
"4": {
@@ -1261,7 +1355,7 @@
"2": {
"tf": 1.0
},
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -1272,7 +1366,7 @@
"n": {
"df": 3,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
},
"7": {
@@ -1346,7 +1440,7 @@
"t": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -1386,8 +1480,21 @@
"e": {
"a": {
"d": {
- "df": 0,
- "docs": {},
+ "df": 4,
+ "docs": {
+ "10": {
+ "tf": 1.0
+ },
+ "23": {
+ "tf": 1.0
+ },
+ "24": {
+ "tf": 1.0
+ },
+ "25": {
+ "tf": 1.0
+ }
+ },
"e": {
"df": 0,
"docs": {},
@@ -1451,7 +1558,7 @@
"0": {
"tf": 1.0
},
- "26": {
+ "29": {
"tf": 1.0
}
}
@@ -1469,7 +1576,7 @@
"n": {
"df": 2,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
},
"7": {
@@ -1484,7 +1591,7 @@
"e": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -1502,7 +1609,7 @@
"l": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -1511,6 +1618,14 @@
}
},
"i": {
+ "d": {
+ "df": 1,
+ "docs": {
+ "25": {
+ "tf": 1.0
+ }
+ }
+ },
"df": 0,
"docs": {},
"m": {
@@ -1520,7 +1635,7 @@
"g": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -1592,7 +1707,7 @@
"t": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -1728,7 +1843,7 @@
"14": {
"tf": 1.4142135623730951
},
- "23": {
+ "26": {
"tf": 1.0
},
"6": {
@@ -1739,7 +1854,7 @@
"k": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 2.23606797749979
}
}
@@ -1793,7 +1908,7 @@
"t": {
"df": 1,
"docs": {
- "26": {
+ "29": {
"tf": 1.0
}
}
@@ -1821,7 +1936,7 @@
"n": {
"df": 3,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
},
"7": {
@@ -1839,7 +1954,7 @@
"e": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -1968,7 +2083,7 @@
"n": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -2007,7 +2122,7 @@
"d": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -2032,7 +2147,7 @@
"19": {
"tf": 1.0
},
- "24": {
+ "27": {
"tf": 1.7320508075688772
}
}
@@ -2145,7 +2260,7 @@
"t": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.7320508075688772
}
},
@@ -2173,7 +2288,7 @@
"o": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -2185,7 +2300,7 @@
"i": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -2211,7 +2326,7 @@
"t": {
"df": 1,
"docs": {
- "26": {
+ "29": {
"tf": 1.0
}
}
@@ -2247,7 +2362,7 @@
"l": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -2359,7 +2474,7 @@
"l": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -2397,7 +2512,7 @@
},
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -2422,7 +2537,7 @@
"10": {
"tf": 1.0
},
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -2443,10 +2558,10 @@
"n": {
"df": 4,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
},
- "25": {
+ "28": {
"tf": 1.0
},
"3": {
@@ -2466,7 +2581,7 @@
"e": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -2490,7 +2605,7 @@
"t": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -2781,7 +2896,7 @@
"e": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -2867,7 +2982,7 @@
"17": {
"tf": 1.0
},
- "24": {
+ "27": {
"tf": 1.0
},
"6": {
@@ -3049,7 +3164,7 @@
"k": {
"df": 2,
"docs": {
- "24": {
+ "27": {
"tf": 1.4142135623730951
},
"8": {
@@ -3064,7 +3179,7 @@
"11": {
"tf": 4.69041575982343
},
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -3259,6 +3374,47 @@
}
}
}
+ },
+ "t": {
+ "df": 0,
+ "docs": {},
+ "t": {
+ "df": 0,
+ "docs": {},
+ "r": {
+ "df": 0,
+ "docs": {},
+ "i": {
+ "b": {
+ "df": 0,
+ "docs": {},
+ "u": {
+ "df": 0,
+ "docs": {},
+ "t": {
+ "df": 4,
+ "docs": {
+ "10": {
+ "tf": 1.0
+ },
+ "23": {
+ "tf": 1.7320508075688772
+ },
+ "24": {
+ "tf": 1.0
+ },
+ "25": {
+ "tf": 1.0
+ }
+ }
+ }
+ }
+ },
+ "df": 0,
+ "docs": {}
+ }
+ }
+ }
}
},
"b": {
@@ -3380,7 +3536,7 @@
"h": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -3568,7 +3724,7 @@
"df": 0,
"docs": {},
"r": {
- "df": 24,
+ "df": 27,
"docs": {
"10": {
"tf": 2.23606797749979
@@ -3613,12 +3769,21 @@
"tf": 1.0
},
"23": {
- "tf": 1.7320508075688772
+ "tf": 1.0
},
"24": {
- "tf": 1.4142135623730951
+ "tf": 1.0
},
"25": {
+ "tf": 1.0
+ },
+ "26": {
+ "tf": 1.7320508075688772
+ },
+ "27": {
+ "tf": 1.4142135623730951
+ },
+ "28": {
"tf": 1.4142135623730951
},
"3": {
@@ -3671,6 +3836,29 @@
"df": 0,
"docs": {}
},
+ "l": {
+ "a": {
+ "df": 0,
+ "docs": {},
+ "s": {
+ "df": 0,
+ "docs": {},
+ "s": {
+ "df": 2,
+ "docs": {
+ "24": {
+ "tf": 1.4142135623730951
+ },
+ "25": {
+ "tf": 1.4142135623730951
+ }
+ }
+ }
+ }
+ },
+ "df": 0,
+ "docs": {}
+ },
"o": {
"d": {
"df": 0,
@@ -3678,7 +3866,7 @@
"e": {
"df": 2,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
},
"4": {
@@ -3745,7 +3933,7 @@
"10": {
"tf": 1.0
},
- "26": {
+ "29": {
"tf": 1.7320508075688772
}
}
@@ -3817,7 +4005,7 @@
"d": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
},
@@ -3939,7 +4127,7 @@
"n": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -3980,7 +4168,7 @@
"d": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -4049,7 +4237,7 @@
"0": {
"tf": 1.0
},
- "23": {
+ "26": {
"tf": 1.0
},
"4": {
@@ -4071,7 +4259,7 @@
"df": 0,
"docs": {},
"t": {
- "df": 22,
+ "df": 25,
"docs": {
"10": {
"tf": 1.4142135623730951
@@ -4115,9 +4303,18 @@
"22": {
"tf": 1.0
},
+ "23": {
+ "tf": 1.0
+ },
"24": {
"tf": 1.0
},
+ "25": {
+ "tf": 1.0
+ },
+ "27": {
+ "tf": 1.0
+ },
"3": {
"tf": 1.0
},
@@ -4147,7 +4344,7 @@
"n": {
"df": 3,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
},
"7": {
@@ -4221,7 +4418,7 @@
"t": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -4261,8 +4458,21 @@
"e": {
"a": {
"d": {
- "df": 0,
- "docs": {},
+ "df": 4,
+ "docs": {
+ "10": {
+ "tf": 1.0
+ },
+ "23": {
+ "tf": 1.7320508075688772
+ },
+ "24": {
+ "tf": 1.7320508075688772
+ },
+ "25": {
+ "tf": 1.7320508075688772
+ }
+ },
"e": {
"df": 0,
"docs": {},
@@ -4329,7 +4539,7 @@
"0": {
"tf": 1.0
},
- "26": {
+ "29": {
"tf": 1.0
}
}
@@ -4347,7 +4557,7 @@
"n": {
"df": 2,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
},
"7": {
@@ -4362,7 +4572,7 @@
"e": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -4380,7 +4590,7 @@
"l": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -4389,6 +4599,14 @@
}
},
"i": {
+ "d": {
+ "df": 1,
+ "docs": {
+ "25": {
+ "tf": 1.4142135623730951
+ }
+ }
+ },
"df": 0,
"docs": {},
"m": {
@@ -4398,7 +4616,7 @@
"g": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -4470,7 +4688,7 @@
"t": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -4606,7 +4824,7 @@
"14": {
"tf": 1.4142135623730951
},
- "23": {
+ "26": {
"tf": 1.0
},
"6": {
@@ -4617,7 +4835,7 @@
"k": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 2.449489742783178
}
}
@@ -4671,7 +4889,7 @@
"t": {
"df": 1,
"docs": {
- "26": {
+ "29": {
"tf": 1.0
}
}
@@ -4699,7 +4917,7 @@
"n": {
"df": 3,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
},
"7": {
@@ -4717,7 +4935,7 @@
"e": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -4833,10 +5051,10 @@
"10": {
"tf": 1.4142135623730951
},
- "24": {
+ "27": {
"tf": 1.0
},
- "25": {
+ "28": {
"tf": 1.0
},
"4": {
@@ -4876,7 +5094,7 @@
"n": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -4915,7 +5133,7 @@
"d": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -4940,7 +5158,7 @@
"19": {
"tf": 1.0
},
- "24": {
+ "27": {
"tf": 2.0
}
}
@@ -5053,7 +5271,7 @@
"t": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 2.0
}
},
@@ -5081,7 +5299,7 @@
"o": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -5093,7 +5311,7 @@
"i": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -5119,7 +5337,7 @@
"t": {
"df": 1,
"docs": {
- "26": {
+ "29": {
"tf": 1.0
}
}
@@ -5158,7 +5376,7 @@
"l": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.4142135623730951
}
}
@@ -5270,7 +5488,7 @@
"l": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -5308,7 +5526,7 @@
},
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -5333,13 +5551,13 @@
"10": {
"tf": 1.0
},
- "23": {
+ "26": {
"tf": 1.7320508075688772
},
- "24": {
+ "27": {
"tf": 1.0
},
- "25": {
+ "28": {
"tf": 1.0
}
}
@@ -5360,10 +5578,10 @@
"n": {
"df": 4,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
},
- "25": {
+ "28": {
"tf": 1.4142135623730951
},
"3": {
@@ -5383,7 +5601,7 @@
"e": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -5407,7 +5625,7 @@
"t": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -5698,7 +5916,7 @@
"e": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -5784,7 +6002,7 @@
"17": {
"tf": 1.4142135623730951
},
- "24": {
+ "27": {
"tf": 1.4142135623730951
},
"6": {
@@ -5966,7 +6184,7 @@
"k": {
"df": 2,
"docs": {
- "24": {
+ "27": {
"tf": 1.4142135623730951
},
"8": {
@@ -5981,7 +6199,7 @@
"11": {
"tf": 4.69041575982343
},
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -6061,6 +6279,38 @@
},
"df": 0,
"docs": {}
+ },
+ "t": {
+ "df": 0,
+ "docs": {},
+ "t": {
+ "df": 0,
+ "docs": {},
+ "r": {
+ "df": 0,
+ "docs": {},
+ "i": {
+ "b": {
+ "df": 0,
+ "docs": {},
+ "u": {
+ "df": 0,
+ "docs": {},
+ "t": {
+ "df": 1,
+ "docs": {
+ "23": {
+ "tf": 1.0
+ }
+ }
+ }
+ }
+ },
+ "df": 0,
+ "docs": {}
+ }
+ }
+ }
}
},
"b": {
@@ -6139,7 +6389,7 @@
"2": {
"tf": 1.0
},
- "23": {
+ "26": {
"tf": 1.0
},
"4": {
@@ -6154,6 +6404,29 @@
"df": 0,
"docs": {}
},
+ "l": {
+ "a": {
+ "df": 0,
+ "docs": {},
+ "s": {
+ "df": 0,
+ "docs": {},
+ "s": {
+ "df": 2,
+ "docs": {
+ "24": {
+ "tf": 1.0
+ },
+ "25": {
+ "tf": 1.0
+ }
+ }
+ }
+ }
+ },
+ "df": 0,
+ "docs": {}
+ },
"o": {
"df": 0,
"docs": {},
@@ -6194,7 +6467,7 @@
"s": {
"df": 1,
"docs": {
- "26": {
+ "29": {
"tf": 1.0
}
}
@@ -6332,8 +6605,18 @@
"e": {
"a": {
"d": {
- "df": 0,
- "docs": {},
+ "df": 3,
+ "docs": {
+ "23": {
+ "tf": 1.0
+ },
+ "24": {
+ "tf": 1.0
+ },
+ "25": {
+ "tf": 1.0
+ }
+ },
"e": {
"df": 0,
"docs": {},
@@ -6388,6 +6671,14 @@
}
},
"i": {
+ "d": {
+ "df": 1,
+ "docs": {
+ "25": {
+ "tf": 1.0
+ }
+ }
+ },
"df": 0,
"docs": {},
"n": {
@@ -6468,7 +6759,7 @@
"k": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -6542,7 +6833,7 @@
"e": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -6575,7 +6866,7 @@
"t": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -6593,7 +6884,7 @@
"l": {
"df": 1,
"docs": {
- "24": {
+ "27": {
"tf": 1.0
}
}
@@ -6657,7 +6948,7 @@
"d": {
"df": 1,
"docs": {
- "23": {
+ "26": {
"tf": 1.0
}
}
@@ -6678,7 +6969,7 @@
"n": {
"df": 3,
"docs": {
- "25": {
+ "28": {
"tf": 1.0
},
"3": {
@@ -6883,7 +7174,7 @@
"17": {
"tf": 1.0
},
- "24": {
+ "27": {
"tf": 1.0
}
}