Skip to content

Latest commit

 

History

History
242 lines (187 loc) · 11.6 KB

CHANGELOG.md

File metadata and controls

242 lines (187 loc) · 11.6 KB

master

  • Support TOML as frontmatter and data.
  • Handle the removal of a file in dependencies. Fixes #2292
  • Update rubocop + use enable-frozen-string-literal (#2354)
  • Add ability to external pipeline ignore process exit code (#2353)
  • Trigger a reload for the preview server when data changes (#2340)
  • Always write deps.yml if --track-dependencies is set and the file doesn't exist
  • Add --dependency-file flag to configure the file location.
  • Allow multi-line frontmatter delimiters to support frontmatter in comment blocks (makes IDE syntax highlighting better). #2385

5.0.0.rc.1 (2019-05-24)

  • Support NO_COLOR: https://no-color.org
  • Update activesupport to 5.x and padrino to 0.14.x
  • Add --dry-run to run a build, but skip outputting to disk.
  • Incremental builds: --track-dependencies and --only-changed flags (#2220)
  • Remove Rack support in favor of resource.filters << proc { |oldbody| newbody }
  • manipulate_resource_list_container! as a faster, less functional approach.
  • i18n was accidentally duplicating requests for extension-based template (file.es.html)
  • Make sass cache configurable with either SASS_CACHE_LOCATION env variable or sass_cache_location Middleman config variable. (#2213)
  • Fix Internal Server Error from __middleman meta page in dev. (#2187)
  • Reduce mutex hits in parallel build (#2107)
  • Docker-ized CLI
  • Add Errno::ENETUNREACH to exception list in BasicNetworkResolver (#2195)
  • Update Rubocop and apply new lint rules
  • Do not create unnecessary array in IgnoreDescriptor (#2183)
  • Fix reload of watched sources with destination_dir (#2190)
  • Fix localization and recursion issues of Traversal::parent. (#2188)
  • Use EnhancedHash for partial locals (#2169)
  • Test against Ruby 2.5 (#2166)
  • Update Rubocop and Yard (#2161)
  • Discover template in local directory if applicable (#2157)
  • Better error message when init fails to clone git repo (#2159)
  • Allow bundle path to be specified in init command (#2154)
  • Add ExtensionManager#active? to check if extension is active (#2156)
  • Clear lazy map after resolving Tilt templates (#2132)
  • Fix ignore of I18n files (#2143)
  • Fix redirect destination lookup (#2140)
  • Add LD-JSON to MinifyJavaScript content types allowed to be compressed (#2138)
  • chmod before closing file to fix compatibility with JRuby (#2133)
  • Keeps full file path for chained templates (#2117)
  • Use i18n fallbacks when looking up localized paths (#2116)
  • Compat with latest rails/activesupport < 5.2 (#2095)
  • Update "Port in use"-message for PreviewServer (#2089)
  • I18n: Keep fragment and query in url_for (#2062)
  • Add support for locale suffixes to link_to (#2065)
  • Allow absolute :data_dir paths. Addresses #2042

4.3.4 (2019-05-13)

  • Fix ignore of files controlled by i18n. #2039 #2143

4.3.3 (2019-02-18)

  • Add --bail to fail a build upon the first error and show the error messages. (#2246)

4.3.2 (2019-01-16)

  • Resolve Haml 5 warnings (#2149)

4.3.1 (2019-01-14)

  • Fix sassc imports of gem files that expect old sass to be present.

4.3.0 (2019-01-11)

  • Only SassC from now on.
  • Fix regression (all the way back to v3) for Integer/Date keys in YAML. #2238
  • Fix API to allow rack server according to docs (middleman/middlemanapp.com#794)
  • Require i18n ~> 0.8.0 to handle 0.7.0 security issue.
  • Allow Bundler 2

4.2.1

  • Fix some issues with Ruby 2.4.0

4.2.0

Fix #1951. A failed build would "clean" all files in build. Possibly breaking change, "clean" and "after_build" are only run for successful builds.

4.1.14

Fix #2019. Always logging boolean on starting up.

4.1.13

  • Change how config options are passed to Thor. Removes new Thor warnings from #2017

4.1.12

  • Fix broken ignore { |p| true } form.

4.1.11

  • Upgrade to Rack 2.

4.1.10

  • Fix unicode issues in URL deeplinks.
  • Add prefix option to asset_hash (#1949)

4.1.9

  • Fix --watcher-* CLI flags.
  • Allow spaces in paths to work with link_to. Fixes #1914
  • Add support for dotenv
  • Fix asset_url with asset_hash (#1919)
  • Allow partial lookups without a current_resource (#1912)

4.1.8

  • Expose development? and production? helpers to template context.
  • require the try core extension (#1911)
  • Fix contract for Sitemap::Store.register_resource_list_manipulator (#1907)
  • Loosen contract on Resource#source_file to MaybeString
  • Let collection loops access ConfigContext for helpers. #1879
  • Use https:// to clone templates (#1901)
  • Allow numbers to be unique page_ids (#1886)
  • Prevent infinite loop when encountering files where base filename is a possible templating engine

4.1.7

  • Upgrade fastimage to 2.0
  • Fix shutdown of external_pipeline commands when config.rb is changed. #1877
  • Allow calls to app. to work as collections after initial config parse. #1876

4.1.5-4.1.6

  • Fix file recursion when looking for possible asset dependencies. Major preview server performance improvement.

4.1.4

  • Unify default extensions for all URL processing extensions. #1855
  • Fix URL regex for content: context of CSS. #1853
  • Make sure CLI config over-rides config.rb order.
  • Fix relative assets in some contexts. #1842

4.1.3

  • Expose all top-level config options to CLI (flags now match config. latency -> watcher_latency, etc).
  • Fix directory indexes with .htm and .xhtml files. #1821

4.1.2

  • Add page_id concept. Using the id key in frontmatter, proxy or page will set an ID on a resource which can be referenced by url_for and link_to.
  • Allow looking for Gemfile when setting up a project to fail gracefully.
  • Send correct exit code when external_pipeline fails during build.
  • Fix error when customizing layouts_dir. #1028
  • Fix collections (commands in loops) not being processed by page command. #1226
  • Correctly asset_hash sourcemap references.

4.1.1

  • Fix bad code that made /__middleman/ break.

4.1.0

  • Add rewrite_ignore option to asset_hash, asset_host, cache_buster & relative_assets. This proc let's you opt-out of the extension behavior on a per-path basis.
  • gzip extension now compresses svgs by default
  • Fix the encoding option.
  • Fix relative paths on image_tag helper.
  • Correctly exit with error code on failed init
  • Fixed asset_hash when path has query string or #hashes
  • Fix new extension template
  • Don't parse frontmatter on ignored files.
  • Fix displaying frontmatter on /__middleman/sitemap
  • Add skip_build_clean config which when set to a block, will avoid removing non-generated paths from build, like .git #1716
  • Minor performance improvements
  • DRY-up config.rb-specific commands like ignore or path.
  • Fix automatic images with absolute (or images dir missing) paths in markdown. Fixes #1755
  • Fix asset_host in combination with Google Analytics snippet. #1751
  • Show an error message when git CLI is not available. #1765
  • Correctly show file names of GZIP'ed assets. #1364
  • Build file output is now parallel-ized! Use middleman build --no-parallel to disable.
  • Make template file extensions that get layouts by default configurable via config[:extensions_with_layout]
  • Remove = from inline url matcher. This means paths in HTML attributes MUST be quoted. Fixes #1780

4.0.0

  • Add :locales and :data source types to the list of files which trigger a live-reload.
  • Rename i18n lang and langs to locale and locales.
  • Avoid matching URLs across new lines. #1689
  • Load Middleman Directory when doing init over SSL
  • Fix external_pipeline first runs running out of sequence.

4.0.0.rc.2

  • Rather than applying layouts to all files which are not .txt, .css, .js, .json: the new behavior is to only default layouts to active for .html
  • Switch from Ruby Sass to SassC.
  • relative_assets extension overrides local relative: false option to stylesheet/javascript tag helpers.
  • Add before_server-hook to the preview server which is run before the Webrick server is started
  • Add -d to middleman server to make it run as daemon
  • Trigger "Possible File Change" events on files which share an output or template type with a changed file. Allows LiveReload to update on partial changes.
  • Added import_file SOURCE, TARGET and import_path SOURCE_FOLDER to copy resources from outside the project in. Does NOT do file change watching. Perfect for bower_components.

4.0.0.rc.1

  • Removed ability to use JSON as frontmatter. Still allowed in data/ folder.
  • Added YAML data postscript. Like frontmatter, but reversed. Attach content after the key/value data as a :postscript key to the data structure (if Hash).

4.0.0.beta.2

  • Fixed regression causing exceptions to be silently thrown away outside of --verbose mode in the dev server.
  • Pull in --ssl option from stable.
  • Replace hooks gem with custom callback solution.

4.0.0.beta.1

  • Add resources class method to extensions to allow simple string-based resource generation.
  • rename app.add_to_instance to Extension.expose_to_application for adding extension-local methods to the shared app instance.
  • rename app.add_to_config_context to Extension.expose_to_config for adding extension-local methods to the sandboxed scope of config.rb
  • Add Extension.expose_to_template, which auto binds copies of extension-local methods into a Template context.
  • Remove side-loading of CLI tasks from tasks/
  • Add the option of naming config.rb as middleman.rb.
  • Builder extracted from Thor. after_build hook now passes an instance of a Builder instead of the Thor CLI.
  • New FileWatcher API.
  • Remove the partials_dir setting. Partials should live next to content, or be addressed with absolute paths.
  • Partials must be named with a leading underscore. _my_snippet.html.erb, not my_snippet.html.erb.
  • Removed the proxy and ignore options for the page command in config.rb. Use the proxy and ignore commands instead of passing these options to page.
  • The page command in config.rb can now be used to add data to the page via the data argument. It is accessed the same way as frontmatter data, via current_resource.data.
  • Add support for environments with the -e CLI flag. Loads additional config from environments/envname.rb. Removed development? helper in favor of environment?(:development). Added server? helper to differentiate between build and server mode.
  • Removed with_layout. Use loops of page instead.
  • Removed Queryable Sitemap API
  • Removed css_compressor setting, use activate :minify_css, :compressor => instead.
  • Removed js_compressor setting, use activate :minify_javascript, :compressor => instead.
  • Removed ability to server folders of content statically (non-Middleman projects).
  • Prevent local templates being loaded when $HOME is not set
  • Removed "Implied Extension feature"
  • Remove 'upgrade' and 'install' CLI commands.
  • Gemfile may be in a parent directory of your Middleman project root (where 'config.rb' is).
  • All dependencies for your Middleman project must be expressed in Gemfile - Bundler is no longer optional.
  • Asciidoc information now available with the asciidoc local, which is a normal hash.
  • Remove page template local. Use current_resource instead.
  • Dropped support for providing a block to page & proxy.
  • Dropped support for instance variables inside templates.
  • Moved all rendering into TemplateRenderer and FileRenderer
  • Placed all template evaluation inside the TemplateContext class
  • Remove deprecated request instance
  • Remove old module-style extension support
  • Placed all config.rb evaluation inside the ConfigContext class
  • The preview server can now serve over HTTPS using the --https flag. It will use an automatic self-signed cert which can be overridden using --ssl_certificate and --ssl_private_key. These settings can also be set in config.rb