Twill 2.2.0
Twill 2.2.0 is a minor release addressing compatibility and bugs, and also bringing a lot of amazing new features and improvements from community contributions.
HOW TO UPDATE
Run composer update
in your project and then, run Twill's own update command: php artisan twill:update
. This will force update your published Twill assets. You can delete the old ones from your repository if you are versioning them. If you are using custom Vue components, you should rebuild Twill assets using php artisan twill:build
.
Added
- Laravel 8 and PHP 8 support #740
- After long months of compatibility testing and stability testing in production, Twill is finally compatible with the latest versions of PHP and the Laravel framework.
- Twill Capsules #729
- Twill Capsules are modules encapsulated in a single folder. Like modules, they can be generated from the command line, but they can also be installed from a remote repository. We think this will enable new ways for the community and ourselves to share reusable and customizable Twill modules.
- Deep nested modules #775
- When using dot notation to nest modules, it was previously only possible to use a single children module. With those changes, it is now possible to go add deep as needed.
- Image and file replacement from the media library #660
- This new feature enables your users to replace an image or file globally from the media library, preserving all relationships with records, blocks and repeaters where the image or file has been attached.
- Nested repeaters support outside of blocks
ce75aff1
- Algolia search in docs
c1d85e48
- Glide cloud sources classes to allow Glide and S3 integration
11f0f502
- Allow renaming tag tables
3f34da73
- Allow passing email and password directly on the command line when creating a superadmin user
812331d1
- Add target attribute in Twill navigation entries to allow opening in new window
3418edcc
- Automate CMS permalink for nested modules
94742f29
- Add ability to store more data from the Google Maps API #721
dfaa5f8e
- Allow to use a different name than relationship when hydrating a repeater #717
9ead6d5c
- Support custom model identifier key in controller #780
fce6465d
- Add optional note into the Browser modal (via the Browser Field)
b4cb5b83
Fixed
- 2.1 regressions with blocks configuration #813
- Block name (configuration key) and component not matching issues
- Duplicate blocks and Twill blocks conflicts issues
- Show a better message when block is missing #712
3dd66067
- Add default icon and trigger (repeater) to Block
ae162ac3
- Logging deprecated use of block and repeater definitions in config
1beadaae
- Generate Vue Blocks only for 'compiled' and confirm overwriting if file exists
bc7dfa50
- Fix uploads with custom root path on S3
a92b6232
- Closes #553. The rationale for keeping the S3_ROOT in the uuid in database is to allow changing its value while keeping, for example, older uploads in the previous root (which might be connected to a different Imgix source). It would also be a breaking change to remove the root from the uuid in database. We might reconsider this for Twill 3.
- Fix S3-compatible storage compatibility (DO Spaces)
4c8cc698
- "Create and add another" fix for macOS Safari/FF #782
2d403516
- Nested listing: maxDepth now respected
9e9c7f8d
- Publication bug in module create modal #732
7afdca7f
- Broken variables for FR emails #734
2cc9984a
- Drop index error on mediables table #800
a29a0294
- Artisan make:module (deprecated) should prompt for input #725
a5b3ffc2
- Fix for checkboxes stored as string #694
27c9887c
736a0642
- Prevent the permalink preview from wrapping when over 52 characters long
33b5641d
- Don't create superuser while on no-interaction
efac9ff7
- Route name duplicating prefix and module
f446363b
- Don't render languages columns when only one is available
c46bdcda
- Fixed nested listing on undefined children
ef9a8dfb
Improved
- Documentation
- Vapor support
- We've had the opportunity to deploy Twill instances to Laravel Vapor and refactored the way Twill deals with its own assets urls internally in the process.
- Use vendor Twill manifest when public/ is missing
5ff29afe
- i18n
- Misc.
- Wysiwyg with Quill : set default styling for italic and underline in the editor
32bbfb4f
- Consider morphed models when getting the name of the class to obtain the repository
cad35392
- Easier to use starter route
0d9c0d09
- Make slug model namespace dynamic
308f2a92
3ba04e51
7cbbc253
- Preserve the blocks order when c
alling a block editordeafbef0
- Add fallback for adminEditUrl in browser fields
a55f9848
3b16f22d
- Wysiwyg with Quill : set default styling for italic and underline in the editor
Chores
- CI and testing
- Setup CI tests on GitHub Actions
03ab2714
- With Travis CI dropping free support for open source projects, we've had to migrate to a new CI service. GitHub Actions made the most sense for us. The migration took time to get right but we now test a larger compatibility matrix, from PHP 7.1 to PHP 8 and from Laravel 5.8 to 8.
- Add on demand rebase GitHub Actions workflow
d2a5c8e3
- Add on demand frontend build GitHub Actions workflow
c8bdf928
- Turn on TestBench debug
8c40b7d9
- Display response errors
7bb74eec
- Setup CI tests on GitHub Actions
- Community updates
- Security
- Fix npm dependencies vulnerabilities
- Fix npm dependencies vulnerabilities in docs