button
field type to make it easier to add custom buttons to backend forms.url
field type to the backend forms.email
fields.button-group
and dropdown
filter scope types.mediafinder
field clickable when mode: file
.recordfinder
fields when disabled.abort(403)
to return the access denied view in the backendabort(404)
in the backendignoreTimezone = true
for date columns.Author.Plugin
as the author, $pluginName
as the main menu code, and $controllerName
as the side menu code. This means that you can remove calls to BackendMenu::setContext()
and constructor overrides in your controllers if they follow that convention.ReactJS
in Vite & Mix compiled asset packages.test
alias for the winter:test
command.schedule_timezone
property to config/app.php
.Mail::sendTo()
method to the Mail facade's docblock.asset:create
commands (mix:create
, vite:create
).Winter\Storm\Database\Attach\File
model. (eg. getPath()
, getCacheKey()
, getFilename()
, getContents()
, getDiskPath()
, isPublic()
, etc).metadata
jsonable column to the base File model, migrations have been added for system_files
, but if you use a custom files table you will need to add a migration that adds $table->mediumText('metadata')->nullable();
to your files table.getDiskName()
on the base Winter\Storm\Database\Attach\File
model public.postbackHandlerName
in the Table widget.config:cache
command as it wasn't improving our performance and didn't fully work with Winter's flexible configuration system.SystemException
and ApplicationException
instances to define their own response codes.appendViewPath()
and prependViewPath()
to the System\Traits\ViewMaker
. addViewPath
is renamed to prependViewPath()
and is for paths that have higher priority than the existing paths while appendViewPath()
is for paths that should have lower priority than the existing paths (i.e. fallbacks).Backend\Classes\ControllerBehavior
will now automatically append their views
folder to the controller's view paths allowing them to provide fallbacks for any views required by the behavior.create:controller
command will now no longer generate the views by default unless --stubs
is also passed and the --sidebar
flag is replaced with a --layout=(standard|sidebar|fancy)
option to choose the form layout to use.new: true
as a parameter in the request body to onSave()
calls that will return a redirect to the create
actionformMakePartial(string $partial, array $params = [])
to the FormController
behavior that will render a partial through the controller's makePartial
using the following priority list of contextual names (form_$context_$partial
, form_$partial
, $partial
).PromptsForMissingInput
to the base Winter\Storm\Console\Command
class.Winter\Storm\Database\DataFeed
class.PluginTestCase
now resets the application router in the setUp()
method between test runs to ensure that plugin routes load in the correct order during tests.package.json
.winter:mirror
on Windows{% flash %}
tag in Twig will now properly purge the FlashBag after it has been read.bindEventOnce()
now properly unbind after execution, even if the event is a halting event.allowed_ips
setting has a value but a null list of IPs.--force
flag in winter:env
.colorpicker
FormWidget.v9.49
.Full Changelog: https://github.com/wintercms/winter/compare/v1.2.7...v1.2.8
Sign up to our newsletter and receive updates on Winter releases, new features in the works, plugin and theme promotions and much more!