# Changelog ## mdBook 0.4.11 [e440094...2cf00d0](https://github.com/rust-lang/mdBook/compare/e440094...2cf00d0) ### Added - Added support for Rust 2021 edition. [#1596](https://github.com/rust-lang/mdBook/pull/1596) - Added `mdbook completions` subcommand which provides shell completions. [#1425](https://github.com/rust-lang/mdBook/pull/1425) - Added `--title` and `--ignore` flags to `mdbook init` to avoid the interactive input. [#1559](https://github.com/rust-lang/mdBook/pull/1559) ### Changed - If running a Rust example does not have any output, it now displays the text "No output" instead of not showing anything. [#1599](https://github.com/rust-lang/mdBook/pull/1599) - Code block language tags can now be separated by space or tab (along with commas) to match the behavior of other sites like GitHub and rustdoc. [#1469](https://github.com/rust-lang/mdBook/pull/1469) - Updated `warp` (the web server) to the latest version. This also updates the minimum supported Rust version to 1.46. [#1612](https://github.com/rust-lang/mdBook/pull/1612) - Updated to highlight.js 11. This has various highlighting improvements. [#1597](https://github.com/rust-lang/mdBook/pull/1597) ### Fixed - Inline code blocks inside a header are no longer highlighted when `output.html.playground.editable` is `true`. [#1613](https://github.com/rust-lang/mdBook/pull/1613) ## mdBook 0.4.10 [2f7293a...dc2062a](https://github.com/rust-lang/mdBook/compare/2f7293a...dc2062a) ### Changed - Reverted breaking change in 0.4.9 that removed the `__non_exhaustive` marker on the `Book` struct. [#1572](https://github.com/rust-lang/mdBook/pull/1572) - Updated handlebars to 4.0. [#1550](https://github.com/rust-lang/mdBook/pull/1550) - Removed the `chapter_begin` id on the print page's chapter separators. [#1541](https://github.com/rust-lang/mdBook/pull/1541) ## mdBook 0.4.9 [7e01cf9...d325c60](https://github.com/rust-lang/mdBook/compare/7e01cf9...d325c60) ### Changed - Updated all dependencies and raised the minimum Rust version to 1.42. [#1528](https://github.com/rust-lang/mdBook/pull/1528) - Added more detail to error message when a preprocessor fails. [#1526](https://github.com/rust-lang/mdBook/pull/1526) - Set max-width of HTML video tags to 100% to match img tags. [#1542](https://github.com/rust-lang/mdBook/pull/1542) ### Fixed - Type errors when parsing `book.toml` are no longer ignored. [#1539](https://github.com/rust-lang/mdBook/pull/1539) - Better handling if `mdbook serve` fails to start the http server. [#1555](https://github.com/rust-lang/mdBook/pull/1555) - Fixed the path for `edit-url-template` if the book used a source directory other than `src`. [#1554](https://github.com/rust-lang/mdBook/pull/1554) ## mdBook 0.4.8 [fcceee4...b592b10](https://github.com/rust-lang/mdBook/compare/fcceee4...b592b10) ### Added - Added the option `output.html.edit-url-template` which can be a URL which is linked on each page to direct the user to a site (such as GitHub) where the user can directly suggest an edit for the page they are currently reading. [#1506](https://github.com/rust-lang/mdBook/pull/1506) ### Changed - Printed output now includes a page break between chapters. [#1485](https://github.com/rust-lang/mdBook/pull/1485) ### Fixed - HTML, such as HTML comments, is now ignored if it appears above the title line in `SUMMARY.md`. [#1437](https://github.com/rust-lang/mdBook/pull/1437) ## mdBook 0.4.7 [9a9eb01...c83bbd6](https://github.com/rust-lang/mdBook/compare/9a9eb01...c83bbd6) ### Changed - Updated shlex parser to fix a minor parsing issue (used by the preprocessor/backend custom command config). [#1471](https://github.com/rust-lang/mdBook/pull/1471) - Enhanced text contrast of `light` theme to improve accessibility. [#1470](https://github.com/rust-lang/mdBook/pull/1470) ### Fixed - Fixed some issues with fragment scrolling and linking. [#1463](https://github.com/rust-lang/mdBook/pull/1463) ## mdBook 0.4.6 [eaa6914...1a0c296](https://github.com/rust-lang/mdBook/compare/eaa6914...1a0c296) ### Changed - The chapter name is now included in the search breadcrumbs. [#1389](https://github.com/rust-lang/mdBook/pull/1389) - Pressing Escape will remove the `?highlight` argument from the URL. [#1427](https://github.com/rust-lang/mdBook/pull/1427) - `mdbook init --theme` will now place the theme in the root of the book directory instead of in the `src` directory. [#1432](https://github.com/rust-lang/mdBook/pull/1432) - A custom renderer that sets the `command` to a relative path now interprets the relative path relative to the book root. Previously it was inconsistent based on the platform (either relative to the current directory, or relative to the renderer output directory). Paths relative to the output directory are still supported with a deprecation warning. [#1418](https://github.com/rust-lang/mdBook/pull/1418) - The `theme` directory in the config is now interpreted as relative to the book root, instead of the current directory. [#1405](https://github.com/rust-lang/mdBook/pull/1405) - Handle UTF-8 BOM for chapter sources. [#1285](https://github.com/rust-lang/mdBook/pull/1285) - Removed extra whitespace added to `{{#playground}}` snippets. [#1375](https://github.com/rust-lang/mdBook/pull/1375) ### Fixed - Clicking on a search result with multiple search words will now correctly highlight all of the words. [#1426](https://github.com/rust-lang/mdBook/pull/1426) - Properly handle `<` and `>` characters in the table of contents. [#1376](https://github.com/rust-lang/mdBook/pull/1376) - Fixed to properly serialize the `build` table in the config, which prevented setting it in the API. [#1378](https://github.com/rust-lang/mdBook/pull/1378) ## mdBook 0.4.5 [eaa6914...f66df09](https://github.com/rust-lang/mdBook/compare/eaa6914...f66df09) ### Fixed - Fixed XSS in the search page. [CVE-2020-26297](https://groups.google.com/g/rustlang-security-announcements/c/3-sO6of29O0) [648c9ae](https://github.com/rust-lang/mdBook/commit/648c9ae772bec83f0a5954d17b4287d5bb1d6606) ## mdBook 0.4.4 [4df9ec9...01836ba](https://github.com/rust-lang/mdBook/compare/4df9ec9...01836ba) ### Added - Added the `output.html.print.enable` configuration value to disable the "print" page. [#1169](https://github.com/rust-lang/mdBook/pull/1169) - Added a list of supported languages for syntax-highlighting to the documentation. [#1345](https://github.com/rust-lang/mdBook/pull/1345) ### Fixed - Now supports symbolic links for files in the `src` directory. [#1323](https://github.com/rust-lang/mdBook/pull/1323) ## mdBook 0.4.3 [9278b83...4df9ec9](https://github.com/rust-lang/mdBook/compare/9278b83...4df9ec9) ### Added - Added `output.html.cname` option to emit a `CNAME` file which is used by GitHub Pages to know which domain is being used. [#1311](https://github.com/rust-lang/mdBook/pull/1311) ### Changed - `mdbook test` no longer stops on the first test failure, but instead will run all the tests. [#1313](https://github.com/rust-lang/mdBook/pull/1313) - Removed the `local` font source for Source Code Pro, as the locally installed font may not render properly on FireFox on macOS. [#1307](https://github.com/rust-lang/mdBook/pull/1307) ### Fixed - Added newline to end of `.nojekyll` file. [#1310](https://github.com/rust-lang/mdBook/pull/1310) - Fixed missing space before draft chapter titles. [#1309](https://github.com/rust-lang/mdBook/pull/1309) ## mdBook 0.4.2 [649f355...9278b83](https://github.com/rust-lang/mdBook/compare/649f355...9278b83) ### Changed - The "show hidden lines" icon has changed from the "expand" icon to an "eye". [#1281](https://github.com/rust-lang/mdBook/pull/1281) - Updated highlight.js. This adds several languages: c, c-like (effectively cpp), csharp (replaces cs), kotlin, less, lua, php-template, plaintext, python-repl, r, scss, typescript. [#1277](https://github.com/rust-lang/mdBook/pull/1277) ### Fixed - Fixed SUMMARY links that contained newlines. [#1291](https://github.com/rust-lang/mdBook/pull/1291) - Fixed SUMMARY links that contain `%20` spaces. [#1293](https://github.com/rust-lang/mdBook/pull/1293) - Fixed favicon so that if only the png or svg is overridden, the other is not automatically included in the `` tag. [#1272](https://github.com/rust-lang/mdBook/pull/1272) ## mdBook 0.4.1 [d4df7e7...649f355](https://github.com/rust-lang/mdBook/compare/d4df7e7...649f355) ### Changed - Removed several outdated dev-dependencies. [#1267](https://github.com/rust-lang/mdBook/pull/1267) ### Fixed - Fixed sidebar scrolling if the book includes part titles. [#1265](https://github.com/rust-lang/mdBook/pull/1265) - Don't include the default favicon if only one of the PNG or SVG is overridden. [#1266](https://github.com/rust-lang/mdBook/pull/1266) ## mdBook 0.4.0 [99ecd4f...d4df7e7](https://github.com/rust-lang/mdBook/compare/99ecd4f...d4df7e7) ### Breaking Changes - Several of the changes in the release have altered the public API of the mdbook library. - Many dependencies have been updated or replaced. This also removes the `--websocket-hostname` and `--websocket-port` from the `serve` command. [#1211](https://github.com/rust-lang/mdBook/pull/1211) - A new "404" page is now automatically rendered. This requires knowledge of the base URL of your site to work properly. If you decide to use this as your 404 page, you should set the `site-url` setting in the book configuration so mdbook can generate the links correctly. Alternatively you can disable the 404 page generation, or set up your own 404 handling in your web server. [#1221](https://github.com/rust-lang/mdBook/pull/1221) - The `debug` and `output` features have been removed as they were unused. [#1211](https://github.com/rust-lang/mdBook/pull/1211) - If you are using customized themes, you may want to consider setting the `preferred-dark-theme` config setting, as it now defaults to "navy". [#1199](https://github.com/rust-lang/mdBook/pull/1199) - "Playpen" has been renamed to "playground". This is generally backwards compatible for users, but `{{#playpen}}` will now display warnings. This may impact books that have modified the "playpen" elements in the theme. [#1241](https://github.com/rust-lang/mdBook/pull/1241) - If a renderer is not installed, it is now treated as an error. If you want the old behavior of ignoring missing renderers, set the `optional` setting for that renderer. [#1122](https://github.com/rust-lang/mdBook/pull/1122) - If you have a custom favicon, you may need to look into adding an SVG version, otherwise the default SVG icon will be displayed. [#1230](https://github.com/rust-lang/mdBook/pull/1230) ### Added - Added a new `[rust]` configuration section to `book.toml`, which allows setting the default edition with `edition = "2018"`. [#1163](https://github.com/rust-lang/mdBook/pull/1163) - Renderers can now be marked as `optional`, so that they will be ignored if the renderer is not installed. [#1122](https://github.com/rust-lang/mdBook/pull/1122) - Added `head.hbs` to allow adding content to the `
` section in HTML. [#1206](https://github.com/rust-lang/mdBook/pull/1206) - Added "draft chapters". These are chapters listed without a link to indicate content yet to be written. [#1153](https://github.com/rust-lang/mdBook/pull/1153) - Added "parts" to split a book into different sections. Headers can be added to `SUMMARY.md` to signify different sections. [#1171](https://github.com/rust-lang/mdBook/pull/1171) - Added generation of a "404" page for handling missing pages and broken links. [#1221](https://github.com/rust-lang/mdBook/pull/1221) - Added configuration section for specifying URL redirects. [#1237](https://github.com/rust-lang/mdBook/pull/1237) - Added an SVG favicon that works with light and dark colors schemes. [#1230](https://github.com/rust-lang/mdBook/pull/1230) ### Changed - Changed default Rust attribute of `allow(unused_variables)` to `allow(unused)`. [#1195](https://github.com/rust-lang/mdBook/pull/1195) - Fonts are now served locally instead of from the Google Fonts CDN. The `copy-fonts` option was added to disable this if you want to supply your own fonts. [#1188](https://github.com/rust-lang/mdBook/pull/1188) - Switched the built-in webserver for the `serve` command to a new implementation. This results in some internal differences in how websockets are handled, which removes the separate websocket options. This should also make it easier to serve multiple books at once. [#1211](https://github.com/rust-lang/mdBook/pull/1211) - The default dark theme is now "navy". [#1199](https://github.com/rust-lang/mdBook/pull/1199) - "Playpen" has been renamed to "playground", matching the actual name of the service which was renamed many years ago. [#1241](https://github.com/rust-lang/mdBook/pull/1241) ### Fixed - Links with the `+` symbol should now work. [#1208](https://github.com/rust-lang/mdBook/pull/1208) - The `MDBOOK_BOOK` environment variable now correctly allows overriding the entire book configuration. [#1207](https://github.com/rust-lang/mdBook/pull/1207) - The sidebar can no longer be dragged outside of the window. [#1229](https://github.com/rust-lang/mdBook/pull/1229) - Hide the Rust Playground "play" button for `no_run` code samples. [#1249](https://github.com/rust-lang/mdBook/pull/1249) - Fixed the `--dest-dir` command-line option for the `serve` and `watch` commands. [#1228](https://github.com/rust-lang/mdBook/pull/1228) - Hotkey handlers are now disabled in `text` input fields (for example, typing `S` in a custom text input field). [#1244](https://github.com/rust-lang/mdBook/pull/1244) ## mdBook 0.3.7 [88684d8...99ecd4f](https://github.com/rust-lang/mdBook/compare/88684d8...99ecd4f) ### Changed - Code spans in headers are no longer highlighted as code. [#1162](https://github.com/rust-lang/mdBook/pull/1162) - The sidebar will now scroll the activate page to the middle instead of the top. [#1161](https://github.com/rust-lang/mdBook/pull/1161) - Reverted change to reject build output within the `src` directory, and instead add a check that prevents infinite copies. [#1181](https://github.com/rust-lang/mdBook/pull/1181) [#1026](https://github.com/rust-lang/mdBook/pull/1026) ### Fixed - Fixed sidebar line-height jumping for collapsed chapters. [#1182](https://github.com/rust-lang/mdBook/pull/1182) - Fixed theme selector focus. [#1170](https://github.com/rust-lang/mdBook/pull/1170) ## mdBook 0.3.6 [efdb832...88684d8](https://github.com/rust-lang/mdBook/compare/efdb832...88684d8) ### Added - `MDBook::execute_build_process` is now publicly accessible in the API so that plugins can more easily initiate the build process. [#1099](https://github.com/rust-lang/mdBook/pull/1099) ### Changed - Use a different color for Ayu theme's highlighting for Rust attributes (uses a bright color instead of the comment color). [#1133](https://github.com/rust-lang/mdBook/pull/1133) - Adjusted spacing of sidebar entries. [#1137](https://github.com/rust-lang/mdBook/pull/1137) - Slightly adjusted line-height of ``, `