mdBook/CHANGELOG.md

20 KiB

Changelog

mdBook 0.4.0

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
  • 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
  • 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
  • "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
  • 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

Added

  • Added a new [rust] configuration section to book.toml, which allows setting the default edition with edition = "2018". #1163
  • Renderers can now be marked as optional, so that they will be ignored if the renderer is not installed. #1122
  • Added head.hbs to allow adding content to the <head> section in HTML. #1206
  • Added "draft chapters". These are chapters listed without a link to indicate content yet to be written. #1153
  • Added "parts" to split a book into different sections. Headers can be added to SUMMARY.md to signify different sections. #1171
  • Added generation of a "404" page for handling missing pages and broken links. #1221
  • Added configuration section for specifying URL redirects. #1237
  • Added an SVG favicon that works with light and dark colors schemes. #1230

Changed

  • Changed default Rust attribute of allow(unused_variables) to allow(unused). #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
  • 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
  • The default dark theme is now "navy". #1199
  • "Playpen" has been renamed to "playground", matching the actual name of the service which was renamed many years ago. #1241

Fixed

  • Links with the + symbol should now work. #1208
  • The MDBOOK_BOOK environment variable now correctly allows overriding the entire book configuration. #1207
  • The sidebar can no longer be dragged outside of the window. #1229
  • Hide the Rust Playground "play" button for no_run code samples. #1249
  • Fixed the --dest-dir command-line option for the serve and watch commands. #1228
  • Hotkey handlers are now disabled in text input fields (for example, typing S in a custom text input field). #1244

mdBook 0.3.7

88684d8...99ecd4f

Changed

  • Code spans in headers are no longer highlighted as code. #1162
  • The sidebar will now scroll the activate page to the middle instead of the top. #1161
  • Reverted change to reject build output within the src directory, and instead add a check that prevents infinite copies. #1181 #1026

Fixed

  • Fixed sidebar line-height jumping for collapsed chapters. #1182
  • Fixed theme selector focus. #1170

mdBook 0.3.6

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

Changed

  • Use a different color for Ayu theme's highlighting for Rust attributes (uses a bright color instead of the comment color). #1133
  • Adjusted spacing of sidebar entries. #1137
  • Slightly adjusted line-height of <p>, <ul>, and <ol>. #1136
  • Handlebars updated to 3.0. #1130

Fixed

  • Fix an issue with sidebar scroll position on reload. #1108
  • mdbook serve will retain the current scroll position when the page is reloaded. #1097
  • Fixed the page name if the book didn't have a title to not be prefixed with -. #1145
  • HTML attributes rel=next and rel=previous are now supported in "wide" mode (previously they were only set in narrow mode). #1150
  • Prevent recursive copies when the destination directory is contained in the source directory. #1135
  • Adjusted the menu bar animation to not immediately obscure the top content. #989
  • Fix for comments in SUMMARY.md that appear between items. #1167

mdBook 0.3.5

6e0d0fa...efdb832

Changed

  • The default-theme config setting is now case-insensitive. #1079

Fixed

  • Fixed # hidden Rust code lines not rendering properly. #1088
  • Updated pulldown-cmark to 0.6.1, fixing several issues. #1021

mdBook 0.3.4

e5f77aa...6e0d0fa

Changed

mdBook 0.3.3

2b649fe...e5f77aa

Changed

  • Improvements to the automatic dark theme selection. #1069
  • Fragment links now prevent scrolling the header behind the menu bar. #1077

Fixed

  • Fixed error when building a book that has a spacer immediately after the first chapter. #1075

mdBook 0.3.2

9cd47eb...2b649fe

Added

  • Added a markdown renderer, which is off by default. This may be useful for debugging preprocessors. #1018
  • Code samples may now include line numbers with the output.html.playpen.line-numbers configuration value. #1035
  • The watch and serve commands will now ignore files listed in .gitignore. #1044
  • Added automatic dark-theme detection based on the CSS prefers-color-scheme feature. This may be enabled by setting output.html.preferred-dark-theme to your preferred dark theme. #1037
  • Added rustdoc_include preprocessor. This makes it easier to include portions of an external Rust source file. The rest of the file is hidden, but the user may expand it to see the entire file, and will continue to work with mdbook test. #1003
  • Added Ctrl-Enter shortcut to the playpen editor to automatically run the sample. #1066
  • Added output.html.playpen.copyable configuration option to disable the copy button. #1050
  • Added ability to dynamically expand and fold sections within the sidebar. See the output.html.fold configuration to enable this feature. #1027

Changed

  • Use standard scrollbar-color CSS along with webkit extension #816
  • The renderer build directory is no longer deleted before the renderer is run. This allows a backend to cache results between runs. #985
  • Next/prev links now highlight on hover to indicate it is clickable. #994
  • Increase padding of table headers. #824
  • Errors in [output.html] config are no longer ignored. #1033
  • Updated highlight.js for syntax highlighting updates (primarily to add async/await to Rust highlighting). #1041
  • Raised minimum supported rust version to 1.35. #1003
  • Hidden code lines are no longer dynamically removed via JavaScript, but instead managed with CSS. #846 #1065
  • Changed the default font set for the ACE editor, giving preference to "Source Code Pro". #1062
  • Windows 32-bit releases are no longer published. #1071

Fixed

  • Fixed sidebar auto-scrolling. #1052
  • Fixed error message when running clean multiple times. #1055
  • Actually fix the "next" link on index.html. The previous fix didn't work. #1005
  • Stop using inline-block for inline code, fixing selection highlighting and some rendering issues. #1058
  • Fix header auto-hide on browsers with momentum scrolling that allows negative scrollTop. #1070

mdBook 0.3.1

69a08ef...9cd47eb

Added

  • 🔥 Added ability to include files using anchor points instead of line numbers. #851
  • Added language configuration value to set the language of the book, which will affect things like the <html lang="en"> tag. #941

Changed

  • Updated to handlebars 2.0. #977

Fixed

  • Fixed memory leak warning. #967
  • Fix more print.html links. #963
  • Fixed crash on some unicode input. #978

mdBook 0.3.0

6cbc41d...69a08ef

Added

  • Added ability to resize the sidebar. #849
  • Added load_with_config_and_summary function to MDBook to be able to build a book with a custom Summary. #883
  • Set noindex on print.html page to prevent robots from indexing it. #844
  • Added support for strikethrough and GitHub-style tasklists. #952

Changed

  • Command-line help output is now colored. #861
  • The build directory is now deleted before rendering starts, instead of after if finishes. #878
  • Removed dependency on same-file crate. #903
  • 💥 Renamed with_preprecessor to with_preprocessor. #906
  • Updated ACE editor to 1.4.4, should remove a JavaScript console warning. #935
  • Dependencies have been updated. #934 #945
  • Highlight.js has been updated. This fixes some TOML highlighting, and adds Julia support. #942
  • 🔥 Updated to pulldown-cmark 0.5. This may have significant changes to the formatting of existing books, as the newer version has more accurate interpretation of the CommonMark spec and a large number of bug fixes and changes. #898
  • The diff language should now highlight correctly. #943
  • Make the blank region of a header not clickable. #948
  • Rustdoc tests now use the preprocessed content instead of the raw, unpreprocessed content. #891

Fixed

  • Fixed file change detection so that mdbook serve only reloads once when multiple files are changed at once. #870
  • Fixed on-hover color highlighting for links in sidebar. #834
  • Fixed loss of focus when clicking the "Copy" button in code blocks. #867
  • Fixed incorrectly stripping the path for additional-js files. #796
  • Fixed color of code spans that are links. #905
  • Fixed "next" navigation on index.html. #916
  • Fixed keyboard chapter navigation for file urls. #915
  • Fixed bad wrapping for inline code on some browsers. #818
  • Properly load an existing SUMMARY.md in mdbook init. #841
  • Fixed some broken links in print.html. #871
  • The Rust Playground link now supports the 2018 edition. #946

mdBook 0.2.3 (2018-01-18)

2c20c99...6cbc41d

Added

  • Added an optional button to the top of the page which will link to a git repository. Use the git-repository-url and git-repository-icon options in the [output.html] section to enable it and set its appearance. #802
  • Added a default-theme option to the [output.html] section. #804

Changed

  • 💥 Header ID anchors no longer add an arbitrary a character for headers that start with a non-ascii-alphabetic character. #788

Fixed

  • Fix websocket hostname usage #865
  • Fixing links in print.html #866

mdBook 0.2.2 (2018-10-19)

7e2e095...2c20c99

Added

  • 🎉 Process-based custom preprocessors. See the docs for more. #792

  • 🎉 Configurable preprocessors.

    Added build.use-default-preprocessors boolean TOML key to allow disabling the built-in links and index preprocessors.

    Added [preprocessor] TOML tables to configure each preprocessor.

    Specifying [preprocessor.links] or [preprocessor.index] will enable the respective built-in preprocessor if build.use-default-preprocessors is false.

    Added fn supports_renderer(&self, renderer: &str) -> bool to the Preprocessor trait to specify if the preprocessor supports the given renderer. The default implementation always returns true.

    Preprocessor::run now takes a book by value instead of a mutable reference. It should return a Book value with the intended modifications.

    Added PreprocessorContext::renderer to indicate the renderer being used.

    #658 #787

Fixed

  • Fix paths to additional CSS and JavaScript files #777
  • Ensure section numbers are correctly incremented after a horizontal separator #790

mdBook 0.2.1 (2018-08-22)

91ffca1...7e2e095

Changed

  • Update to handlebars-rs 1.0 #761

Fixed

  • Fix table colors, broken by Stylus -> CSS transition #765

mdBook 0.2.0 (2018-08-02)

Changed

  • 💥 This release changes how links are handled in mdBook. Previously, relative links were interpreted relative to the book's root. In 0.2.0+ links are relative to the page they are in, and use the .md extension. This has several advantages, such as making links work in other markdown viewers like GitHub. You will likely have to change links in your book to accommodate this change. For example, a book with this layout:

    chapter_1/
        section_1.md
        section_2.md
    SUMMARY.md
    

    Previously a link in section_1.md to section_2.md would look like this:

    [section_2](chapter_1/section_2.html)
    

    Now it must be changed to this:

    [section_2](section_2.md)
    
  • 💥 mdbook test --library-path now accepts a comma-delimited list of arguments rather than taking all following arguments. This makes it easier to handle the trailing book directory argument without always needing to put -- before it. Multiple instances of the option continue to be accepted: mdbook test -L foo -L bar.

  • 💥 mdbook serve has some of its options renamed for clarity. See mdbook help serve for details.

  • Embedded rust playpens now use the "stable" playground API. #754

Fixed

  • Escaped includes (\{{#include file.rs}}) will now render correctly. f30ce01
  • index.html will now render correctly when the book's first section is inside a subdirectory. #756