Skip to content

Releases: bridgetownrb/bridgetown

v0.21.1

19 Jul 17:15
Compare
Choose a tag to compare

Changelog since v0.21.0:

Added

Fixed

  • Unintentional overwriting of data when using the Resource content engine #343 (jaredcwhite)
  • Bug where in Liquid the next_resource method would mistakenly return the previous resource

Changed

  • Configure sites in subfolders via base_path, not baseurl #348 (jaredcwhite)
  • Swap babel for ESBuild and upgrade to Webpack 5 #334 (ayushn21)
  • Change postcss.config.js stage from 3 to 2 #349 (juhat) Read the Docs
  • Various improvements to the new Webpack config documentation

v0.21.0 "Broughton Beach"

01 Jun 15:19
Compare
Choose a tag to compare

Full changelog since 0.20.0:

Fixed

0.21.0.beta4

Added

  • Memoization for caching templates in Bridgetown::Component #326 (jaredcwhite)
  • layout method in Resource::Base #324 (jaredcwhite)
  • Include Bridgetown version in Webpack defaults #322 (ayushn21)
  • Confirmation for overwriting postcss config in tailwindcss and bt-postcss bundled configurations #317 (ayushn21)
  • Create new config directory and move Webpack defaults into it #316 (ayushn21)

Changed

  • Fix the Bridgetown logger and other test improvements #328 (ayushn21)
    • NOTE: the Configuration file log message is now output with a debug log level instead of info. This means you will no longer see the config path in your terminal/logs unless you use the --verbose flag.

Fixed

  • Install required packages in Webpack enable postcss tool #319 (ayushn21)
  • Update Babel configuration to prevent overt warning #314 (ayushn21)
  • Resolve issue with zombie templates in Pagination/Prototype logic
  • Locale files now reload when the site regenerates

0.21.0.beta3

Changed

  • Switch to using a Keep a Changelog format.
  • Switch plugins new command to use MiniTest from the sample plugin repo.
  • Make configure command use Thor's apply method directly #293 (ayushn21)

Fixed

  • Resources configured not to output to a destination are now transformed as expected.
  • The previous_resource method now returns the proper resource.
  • Fix warnings in plugin tests by checking if an ivar was defined #296 (ayushn21)
  • Ensure Netlify script is set to executable. #302 (ayushn21)
  • Consider the default branch from the git config when creating a new site or plugin. #294 (ayushn21)

Removed

  • A bunch of global config accessors on site (like lsi, keep_files, etc.)
  • Remove safe_yaml gem in favour of using Psych which is in the stdlib. #303 (ayushn21)

0.21.0.beta2

  • Refactor old TODOs and deprecations
  • Remove deprecated sassify/scssify filters, add html_safe to the obfuscate_link helper
  • Fix dotfiles or multiple extension permalinks (for the resource content engine) #292 (jaredcwhite)

0.21.0.beta1

v0.21.0.beta4

30 May 15:30
Compare
Choose a tag to compare
v0.21.0.beta4 Pre-release
Pre-release

Added

  • Memoization for caching templates in Bridgetown::Component #326 (jaredcwhite)
  • layout method in Resource::Base #324 (jaredcwhite)
  • Include Bridgetown version in Webpack defaults #322 (ayushn21)
  • Confirmation for overwriting postcss config in tailwindcss and bt-postcss bundled configurations #317 (ayushn21)
  • Create new config directory and move Webpack defaults into it #316 (ayushn21)

Changed

  • Fix the Bridgetown logger and other test improvements #328 (ayushn21)
    • NOTE: the Configuration file log message is now output with a debug log level instead of info. This means you will no longer see the config path in your terminal/logs unless you use the --verbose flag.

Fixed

  • Install required packages in Webpack enable postcss tool #319 (ayushn21)
  • Update Babel configuration to prevent overt warning #314 (eclectic-coding)
  • Resolve issue with zombie templates in Pagination/Prototype logic
  • Locale files now reload when the site regenerates

v0.21.0.beta3 "Broughton Beach"

15 May 23:28
Compare
Choose a tag to compare
Pre-release

Beta documentation available at beta.bridgetownrb.com.

Changed

  • Switch to using a Keep a Changelog format.
  • Switch plugins new command to use MiniTest from the sample plugin repo.
  • Make configure command use Thor's apply method directly #293 (ayushn21)

Fixed

  • Resources configured not to output to a destination are now transformed as expected.
  • The previous_resource method now returns the proper resource.
  • Fix warnings in plugin tests by checking if an ivar was defined #296 (ayushn21)
  • Ensure Netlify script is set to executable. #302 (ayushn21)
  • Consider the default branch from the git config when creating a new site or plugin. #294 (ayushn21)

Removed

  • A bunch of global config accessors on site (like lsi, keep_files, etc.)
  • Remove safe_yaml gem in favour of using Psych which is in the stdlib. #303 (ayushn21)

0.21.0.beta2 - 2021-05-08

  • Refactor old TODOs and deprecations
  • Remove deprecated sassify/scssify filters, add html_safe to the obfuscate_link helper
  • Fix dotfiles or multiple extension permalinks (for the resource content engine) (jaredcwhite) #292

0.21.0.beta1 - 2021-04-25

v0.20.0 "Healy Heights"

16 Mar 05:08
Compare
Choose a tag to compare

Changes since 0.19.3:

  • EXPERIMENTAL (and opt-in): the Great Resource Content Engine PR has been merged. 135 files changed. Holy guacamole! #243 (jaredcwhite) Read the Docs
  • Further improved Webpack integration by allowing multiple entry points and loading any manifest item with webpack_path helper #247 (jaredcwhite) Docs
  • Exclude current post from LSI-powered related posts #253 (katafrakt)
  • The inspect string for Bridgetown::Site is now lean and clean.
  • The history bug with the bridgetown console has been fixed! Now pressing your up arrow after entering the console will pull up all previous commands entered. Up, up, and away!
  • Support added for upcoming gem bridgetown-mdjs which will allow inline JS code blocks in Markdown similar in purpose to MDX (but for web components and other HTML-native solutions). Stay tuned!

v0.19.3

11 Feb 20:34
Compare
Choose a tag to compare

v0.19.2

05 Feb 21:27
Compare
Choose a tag to compare

Changes since 0.19.0:

  • Introducing bundled configurations! Now some popular automations, including enhanced PostCSS and Tailwind CSS setups, are available directly through the Bridgetown CLI rather than being in a separate automations repo. Documentation here. Thanks Ayush

  • Upgrade to Liquid 5.0 and remove previous backported render tag #224 (jaredcwhite)

    • Breaking Change: when using the where filter, the literals ""``, blank, and empty` are now all equivalent.
  • New plugin generator now prefers main over master for default branch name #225 (ayushn21)

  • Use ActiveSupport::DescendantsTracker for managing class hierarchies of plugins (converters, builders, and generators) #218 (jaredcwhite)

  • Lots of documentation improvements — thanks Juan, Taha, and Ayush.

  • In 0.19.1: Fix for issue #73 (less likely to hit ActiveSupport error when bridgetown command is run without bundle exec prefixed)

v0.19.0 "Arbor Lodge"

22 Dec 19:54
Compare
Choose a tag to compare

Full changelog since 0.18.6:

  • Improve our active ActiveSupport support =) #215 (jaredcwhite)
  • Add filters_scope option to liquid_filter DSL #214 (jaredcwhite) (Docs)
  • Deprecate PageWithoutAFile class. It will be removed in v0.20.
  • Specify Webrick as a gem dependency now that it's no longer in the stdlib in Ruby 3
  • Website: documentation on how to install Bridgetown in Fedora (bkmgit)
  • Add modules resolve paths to default webpack config #206 (ayushn21)
  • Add an empty PostCSS configuration option to the "new" command #190 (ayushn21) (Docs)
  • Fix obfuscate link syntax #203 julianrubisch)
  • Website: Fix class declaration keyword in liquid tags and helpers docs #198 (ayushn21)
  • Website: The Great Unification (removing all div-ision-s) #191 (jaredcwhite)
  • Website: Fix typo in generators page in docs #195 (ayushn21)
  • Add mailto:--tag to generated footer #192 (pascalwengerter)
  • Change the name attribute of the default package.json to be inferred from the path passed to bridgetown new #188 (ayushn21)

v0.18.6

23 Nov 14:07
Compare
Choose a tag to compare

Bugfixes and enhancements from 0.18.3..0.18.6:

  • Change the logging level for "Executing inline Ruby…" messages to the debug level #184 (ianbayne)
  • Add yarn clean script to package.json #182 (andrewmcodes)
  • Fix dash obfuscation in obfuscate filter #181 julianrubisch)
  • Ensure HashWithDotAccess converts to Hash for Liquid templates
  • Bugfix: use HashWithDotAccess when parsing JSON in the HTTP Builder DSL
  • Bugfix: reset payload for each Liquid template conversion
  • Change site.layouts hash to dot access
  • Bugfix: For template engine converters, set template_engine frontmatter automatically #177 (jaredcwhite)

v0.18.2 "Taylor Street"

30 Oct 18:28
Compare
Choose a tag to compare

Changelog since 0.17.2 (0.18.0 and 0.18.1 were short-lived soft releases):

  • Bugfix: Use capture helper for liquid_render #174 (jaredcwhite)
  • Configurable template engines on a per-site or per-document basis #157 (jaredcwhite) (docs)
    • Set a template_engine key in your config file. The default is assumed to be liquid, but you can change it to erb (or other things in the future as this gets rolled out). Once that is set, you don't even have to name all your ERB files with an .erb extension—it will process even .html., .md, .json, etc. It also means Liquid won't try to "preprocess" any ERB files, etc.
    • Regardless of what is configured site-wide, you can also set the template_engine in front matter (whether that's in an individual file or using front matter defaults), allowing you to swap out template engines wherever it's needed.
    • Front matter defaults support setting template_engine to none or anything else for a part of the source tree.
    • Liquid pages/layouts with a .liquid extension are processed as Liquid even if the configured engine is something else.
    • Breaking change: previously it was possible in Liquid for a child layout to set a front matter variable and a parent layout to access the child layout's variable value, aka {{ layout.variable_from_child_layout }}. That's no longer the case now…each layout has access to only its own front matter data.
    • Breaking change: a few pre-render hooks were provided access to Liquid's global payload hash. That meant they could alter the hash and thus the data being fed to Liquid templates. The problem is that there was no visibility into those changes from any other part of the system. Plugins accessing actual page/layout/site/etc. data wouldn't pick up those changes, nor would other template engines like ERB. Now if a hook needs to alter data, it needs to alter actual Ruby model data, and Liquid's payload should always reflect that model data.
  • Add render method for Ruby templates #169 (jaredcwhite) (docs)
    • Add Zeitwerk loaders for component folders (any *.rb file will now be accessible from Ruby templates). Note: Zeitwerk will not load classes from plugins if they're already present in the source folder, so if you want a component to "reopen" a class from a plugin, you'll need to require the plugin class explicitly in your local component.
    • Allow ERB capture to pass object argument to its block.
    • Breaking change: the previous <%|= output_block do %>…<%| end %> block style is out in favor of: <%= output_block do %>…<% end %>, so you don't have to change a thing coming from Rails. Note: if you're coming from Middleman where blocks output by default without <%=, you'll need to switch to Rails-style block expressions.
    • Breaking change: the markdownify helper in ERB now just returns a string rather than directly outputting to the template, so use <%= markdownify do %>…<% end %>.
  • Site documents array should exclude static files #168 (jaredcwhite)
  • Obfuscate link filter #167 (julianrubisch)
  • Add link/url_for and link_to helpers #164 (jaredcwhite)
  • False value in front matter is now supported to ensure no layout is rendered #163 (jaredcwhite)
  • Support per-document locale permalinks and config #162 (jaredcwhite)
    • This isn't yet documented because an even more comprehensive i18n solution and announcement is forthcoming.
  • Add blank src/images folder #172 (jaredcwhite)
  • chore: Prototype pages optimizations and improvements to YARD docs #171 (jaredcwhite)