diff options
author | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-30 03:57:19 +0000 |
---|---|---|
committer | Daniel Baumann <daniel.baumann@progress-linux.org> | 2024-05-30 03:57:19 +0000 |
commit | a0b8f38ab54ac451646aa00cd5e91b6c76f22a84 (patch) | |
tree | fc451898ccaf445814e26b46664d78702178101d /vendor/mdbook | |
parent | Adding debian version 1.71.1+dfsg1-2. (diff) | |
download | rustc-a0b8f38ab54ac451646aa00cd5e91b6c76f22a84.tar.xz rustc-a0b8f38ab54ac451646aa00cd5e91b6c76f22a84.zip |
Merging upstream version 1.72.1+dfsg1.
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'vendor/mdbook')
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 - + ## A 32x32 image - + ## A 256x256 image - + ## A 512x512 image - + ## 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 - + --- 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 <HTML> 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 } } |