Release Notes

3.0.21

October 28th, 2020

What's improved

  • Addons can get their directory without needing it in the manifest. #2761
  • Structure tree entries get eager loaded. #2573
  • Composer 2 is used within the control panel. facca2693
  • Str::isUrl() checks more URLs. #2759
  • Dutch translation has been updated. #2754
  • The Entry facade docblock has been updated. #2720
  • The @svg Blade directive is only registered on CP routes. Prevents conflicts with things like Blade UI Kit. 99e812e6c
  • The shuffle modifier works for Collections. #2709
  • The .idea directory is git ignored, and we now require ext-json, which improves the experience for PhpStorm users. #2735

What's fixed

  • Fix how data gets passed into *recursive var* in the parser and structure tag. #2719
  • Addon views are registered only if the views directory exists. #2707
  • Actions can return any type of Request for downloads, like a StreamedResponse. #2738
  • Update some JS dependencies to patch security issues. 49e4ce819 c290a86ec
  • Prevent an error when using the entries fieldtype in a non entry (e.g. a user) 8ede3718b
  • Prevent making addon instances multiple times d4ce47099
  • Fixed a PSR-4 incompatible test. #2734

3.0.20

October 20th, 2020

What's new

  • Added a smartypants modifier and Html::smartypants() method. #2689

What's improved

  • Danish and Dutch translations have been updated. #2693 #2691

What's fixed

  • A bunch of taxonomy cache fixes. Listed below for good measure. #2686
  • Prevent taxonomy terms hanging around after you delete them. #1349
  • Prevent taxonomy terms showing the slug instead of the title. #1982
  • Prevent an undefined offset error when creating terms. #2020
  • Entry-term assocation is actually removed when expected. #1870
  • Prevent terms being displayed as the ID when you create new ones on an entry.
  • An empty taxonomy parameter no longer tries to filter. #2672
  • Entries and Terms fieldtypes will show all results in select mode (instead of just the first paginated page). #1727
  • Entries fieldtype will show localized entries in select and typehead modes. #1835
  • Prevent changing publish status from wiping out the origin. #2451
  • YAML content should be null if it's just whitespace #2677
  • Delete Eloquent user through the repository. da9335936 #2697
  • Fixed variable name in down migration #2676
  • Updated docs urls 898889ce5

3.0.19

October 15th, 2020

What's improved

  • The French translation has been updated. #2664

What's fixed

  • Prevent exception when an invalid or outdated entry is selected in an entries fieldtype. #2660
  • Fix a handful of Antlers conditional issues. #2663 #1193 #2614 #2537 #2456

3.0.18

October 14th, 2020

What's new

What's fixed

  • Form validation errors are translated appropriately. #2387
  • Form emails are localized based on the site where they were submitted. #2658
  • The entries fieldtype will localize its selections in views based on the locale. #2657
  • The entry gets passed along in more places, fixing some issues with Replicator, Grid, and Bard. #2656

3.0.17

October 13th, 2020

What's new

  • Added a find method to the query builder. #2630
  • Added a current_full_url variable that includes the query string. #2638
  • Added a bunch of query parameter related modifiers. #2638

What's improved

  • Deleting entries when using multiple sites will give you options on how to handle localizations. #2623
  • When you have a huge bunch of assets, it would cause search indexing while saving entries to be slow. Now it's fast. #2643
  • Added cast_booleans configuration option to Radio fieldtype #2601
  • Listing Vue component is available globally #2602
  • Portuguese and Danish translations have been updated.
  • Popper.js has been updated. #2622
  • The translator generate command recognizes annotations with single asterisks. 8f778d0
  • Static caching strategy is settable in the .env file. #2648

What's fixed

  • Context is provided to the nav tag recursively. #2610
  • Template front-matter works across operating systems. #2607
  • Partial is used on the licensing page. #2620
  • Fixed an error when localizating the root entry in a structured collection. c9f0255fd
  • Updating an Algolia index will flush it rather than deleting it. #2645
  • Password reset errors are now shown (and in the right positions). #2618
  • Passing true and false into API filters will now be treated as booleans. #2640
  • Falsey HTML attributes are stripped out. True attributes actually say true. Useful for aria attributes on svg tags. #2605

3.0.16

October 6th, 2020

What's new

What's improved

  • The locale method on the Entry class can accept a Site object.
  • The toggle fieldtype can understand 0 and 1 in your YAML files, rather than just true and false.
  • French translation has been updated. #2591

What's fixed

  • Entries are placed appropriately into a collection's structure when localizing them. #2471
  • The date method on the Entry class checks for Carbon\Carbon, rather than Illuminate\Support\Carbon.
  • The subrequest is passed along to the cascade in Live Preview, which fixes things like segment_x variables using the CP URL.

3.0.15

October 5th, 2020

What's new

  • Laravel 8 (The Ochoâ„¢) support! #2547

What's improved

  • You can override repositories using Statamic::repository() which stops service provider load order being a factor.
  • The entry repository uses a container binding for the query builder to make extending simpler.
  • Added a query builder contract which the parser will check for instead of a concrete class.
  • The Eloquent query builder is more consistent with other query builder classes.
  • Taxonomy related entry query builder methods have been extracted into a trait to ease reusability.
  • Improve performance related to noticing collection YAML file changes. #2572
  • Portuguese, Danish, and German translations have been updated. #2583 #2587 #2588

What's fixed

  • Fix handling of taxonomy routes when they have multiple words. #2273
  • Setting create: false on a terms field will actually prevent you from being able to enter new terms. #2453
  • Prevent seeing validation rules multiple times times. #2582
  • If you have permission to view form submissions, you have permission to export them. #2577
  • The unique slug validation rule works when your entry IDs are integers.
  • Pages can define entries by passing integer IDs, instead of just strings (UUIDs).

3.0.14

September 30th, 2020

What's improved

  • Prevent the asset browser's bulk action toolbar pushing everything down in grid mode.
  • You can define a fieldset's handle when creating it. #1717
  • Added a down method to the auth migration. #2546
  • Increase performance of blueprint lookups. #2552
  • Entry and Term static cache URLs will be invalidated when they're deleted. #2393
  • Fix the listings' "check all" checkbox position.
  • The user:forgot_password_form tag plays nicer with other forms on the page.
  • A bunch of translations have been updated.

What's fixed

  • Stop forcing the title field to the start. #2536
  • Fix position of Bard toolbar inside a Stack. #1911
  • The translator tool will no longer null out nested arrays. #2544
  • Fixed the success variable on the user:forgot_password_form tag. #1777
  • Fixed the mount variable in routes sometimes doubling up or being for the wrong site. #2569
  • Match the "discovered addon" color to Laravel's "discovered package" color in the statamic:install output.

3.0.13

September 25th, 2020

What's new

  • The partial tag now supports slots. Why didn't we ever add this before??

What's improved

  • Previewing SVGs in the asset editor now looks super dope
  • The get_content tag has been waxed and polished for a nice little performance boost
  • The UX for defining field conditions has been given some TLC (Tender Lettuce Caress)
  • French translations have been updated. #2504

What's fixed

  • Status icons update when saving entries without needing to refresh. #1822
  • Fixed entries in a structured collection (i.e. pages) ignoring content protection. #2526
  • A markdown field with no value will be treated that way, rather than as an empty string. #2503
  • Actions with redirects now actually redirect. #1946
  • Action confirmation modals remain open on failures. #1576
  • Bard will now render strikethrough elements. #2517
  • Bumped html-to-prosemirror and prosemirror-to-html packages.
  • Bumped lodash version #2089

3.0.12

September 22nd, 2020

What's improved

  • Added labels to scaffolding checkboxes. #2488
  • French and Portuguese translations have been updated. #2493 #2474
  • Yo dawg, I heard you like HTML, so the HTML fieldtype gets an HTML field so you can write HTML to display as HTML.

What's fixed

  • Removed the handle field in the navigation edit form. #1959
  • Fixed the missing icons when you add new fields. #1959
  • Long links in Bard get wrapped. #1814
  • Asset upload instructions actually explain asset uploads. #1686
  • Invalid dates no longer cause an error. #2038
  • SVGs get rendered in the asset editor modal. #2484
  • Fixed some breadcrumb links. #2475
  • The YAML fieldtype is now actually read only when it needs to be, instead of just saying it is. #2082
  • Upgraded the Pickr library, which stops the color fieldtype dropping off the page. #2110
  • The Revealer fieldtype's label is hidden inside Replicator. #2468
  • The has method on data classes like entries will return true if it has a value of false or null.
  • The submission class sets its data and supplements properties to collections.

3.0.11

September 21st, 2020

What's new

  • Ability to remove a blueprint section programmatically. #2491
  • You can pass a variable into the nav tag's from parameter and it will make sure it has a slash, allowing you to do :from="segment_1".

What's fixed

  • Fixed a protection related error on taxonomy URLs. #2472 #2481
  • Relationship tags filter out invalid IDs when augmenting. #1752
  • The nav:breadcrumbs tag supports multi-site. #1807 #2487
  • Prevent nav from="/" returning nothing. #1683 #1542
  • Fixed pluralisation issue. #1695
  • Fixed an error when adding a Bard set. #1718
  • Entries' order variables are available in templates.

3.0.10

September 18th, 2020

What's improved

  • German, French, and Portuguese translations have been updated. #2445 #2444 #2458
  • When an asset search returns no results it says "No results" instead of "This container is empty".
  • Asset container handle are generated using snake_case as you type the title.
  • The "and" the sentence_list modifier is translated. #2463

What's fixed

  • Actions that don't want to be confirmed... won't be. #1497 #2446
  • Assets can be searched in grid mode. #2318 #2442
  • User avatars can be output in templates. #2017
  • The glide:generate tag uses the appropriate generation methods.
  • Resolved an error in a taxonomy term listing when using a terms field on another term. #2307
  • Fix an issue where the sort modifier would output nothing. #2450
  • Prevent the tree from disappearing when switching from list view. #2408

What's removed

  • "Angle brackets can now be used in modifiers" from 3.0.9 has been reverted for now. #2022

3.0.9

September 16th, 2020

What's new

  • Antlers now supports dynamic array access with a brand new (to Antlers) square bracket syntax. #1983 (thanks @morhi!)
  • The cache tag can be now disabled. #2328
  • You can now set a separate database connection for users. #2416
  • Form emails now have full access to all global variables. #2411
  • Form fields in templates get placeholder attributes. #2354

What's improved

  • The Spanish, Dutch, and French translations have been updated. #2440, #2435, #2434
  • When creating a field, the fieldtype title is used instead of uppercasing the handle. #1662
  • Improved the asset uploader drop zone. #2358
  • You now get a more helpful exception when using a non-existent collection in the entries fieldtype. #2422
  • We now prevent options from showing in the collection listing dropdown if you don't have permission to do the things. #2412
  • The Mail config utility area now looks better. #2380

What's fixed

  • Fixed a password reset related error. #1973
  • Angle brackets can now be used in modifiers. #2022
  • The Markdown fieldtype's dark mode preview text is no longer dark on dark. {insert another Tom Haverford reference} #2185
  • Bard's fixed toolbar is now shown when fullscreen and source are disabled, as you'd expect. #2280
  • Fixed the asset rename warning translation. #2329
  • Fixed the "Pro Mode" text in the Getting Started widget. #2433
  • Prevent an error on the entry list when you reference a non-existent user. #2410
  • Passing a zero into a tag parameter that expects a number will now use the zero instead of falling back to a one. Weird one. Or weird zero I guess.

3.0.8

September 15th, 2020

What's new

  • The Save/Publish button now supports "After Saving" options! You can choose to go to back to the listing, stay and edit, or create another and it will remember your last chosen option next time. #675

What's improved

  • The Getting Started widget now explains Pro Mode, and no longer references the beta. #2402
  • The French and German translations have been updated.
  • The Select field now supports max items. #1771
  • The Range field has a smarter, configurable default that accounts for the step option. #2328
  • The Replicator field now looks better when underneath a Section field. #2375

What's fixed

  • Bard's floating toolbar no longer keeps the table icons in the dark. Dark mode is one thing, but dark on dark is Tom Haverford-level silly. #2189
  • Bard's overaggressive focus outlines on Safari have been surgically removed. #2188
  • The publish sidebar will no longer collapse like a bully shoving a skinny kid into their locker.
  • Section fieldtypes are no longer included in listings. #2425
  • Global search shows the collection/taxonomy name again. Sorry about that regression — at least it was cosmetic! #2332

3.0.7

September 8th, 2020

What's fixed

  • Fix more instances of the rascally #2369
  • The scope modifier now supports collections, not just arrays.
  • Pagination in tags now re-keys the values. Fixes an issue where you might get no results when you aren't on the first page.