Winter v1.1.9

Released on July 15, 2022

UX/UI Improvements

  • The base Snowboard framework has been included in the Backend by default, allowing people to use Snowboard requests and included functionality in their plugin's backend pages if they wish. Please see https://github.com/wintercms/winter/pull/548 for more information on what is included.
  • Dates displayed on the Theme Logs & Event Logs pages in the backend now display in the current user's preferred locale & timezone.

API Changes

  • Dependency checking and management for Snowboard plugins has been improved. Singletons that have a ready callback will not be fired until dependencies are loaded.
  • Added a flash.create and flash.remove global event in Snowboard to listen when a flash message is created and removed, respectively.
  • Added URL handling and base URL detection in Snowboard via the Snowboard.url() plugin.
  • Added sortable property to the Repeater FormWidget, defaults to true.
  • Added a mix:update command to allow updating of Node dependencies for Mix assets.
  • Added support for type: nestedform fields to the ThemeData theme customization forms.
  • Added helper methods for Snowboard event listening - the on method registers a simple listener for a Snowboard event, the off de-registers the listener. The ready method is a shortcut method that registers a listener for when the DOM is ready, synonymous with $(document).ready() in jQuery.
  • Added an Asset Loader component for Snowboard, which is now included in the extras and allows simple loading of script, style and image assets on the fly.
  • Added a Data Configuration component for Snowboard, which is now included in the extras and allows widgets to retrieve configuration from an element's data attributes, similar to the current widgets within Winter CMS.
  • Added the public flag trimStringAttributes to Winter\Storm\Database\Model to make it possible to disable the default behaviour of automatically trimming string attribute values on model instances.

Bug Fixes

  • Improved support for read-only filesystems by using the Storage facade to handle the disabled plugins cache file instead of directly interacting with the local disk and checking if the local filesystem is writable before attempting to create the temporary directory required by the UpdateManager.
  • Fixed the System Status dashboard widget on read-only filesystems.
  • Fixed issue where calling Snowboard.request() with the element parameter set to false or null would fail.
  • Fixed issue where changes made to $this->vars in a Partial's PHP code section wouldn't be available in the Twig section.
  • Fixed issue where a Snowboard plugin that had been removed could not be re-added.
  • Backported a fix from the 1.2 branch which resolves timeout issues with the mix:install command.
  • Fixed issue where using the useRelationCount option with a relation in a List widget would not retrieve the count if the relation name was not snake-cased.
  • Fixed an issue where passing configuration that had been generated by $this->makeConfig() to a ReportContainer would cause it to fail to initialize.
  • Fixed missing variable in error message with mix:watch command if packages are missing from the overall workspace.
  • Fixed issue where Snowboard requests in the Backend did not include the CSRF token.
  • Fixed issue where using a time limit with data-track-input in Snowboard for input debouncing was being overwritten on entering a value due to misnamed variable.
  • Fixed issue where any value returned by a success or error callback in Snowboard would prevent further execution (including no value); instead of just preventing execution on receiving a value of false.
  • Fixed issue where string values (query selectors) were not able to be provided as the data-request-form attribute to Snowboard as it was requiring an instance of an element.
  • Fixed issue where passing an already URL-encoded string to the UrlGenerator could cause its query parameter keys to become double encoded, disrupting the original data structure.

Security Improvements

Translation Improvements

  • Improved German translation
  • Improved Spanish translation
  • Improved Farsi translation

Community Improvements

  • Fixed file language hinting for backend controller views for VS Code

Dependencies

  • The Winter core modules now report via composer that they replace the associated version of the October core modules to improve compatibility with the October ecosystem.

New Contributors

Keep informed

Sign up to our newsletter and receive updates on Winter releases, new features in the works, plugin and theme promotions and much more!