- Fix validation on blueprint editor. #4015
- The
link
fieldtype can have its collections specified, and it defaults to only collections with routes. #3973 - Sites can now have arbitrary attributes. #3996
- Added GraphQL support for the
array
fieldtype. #3972 - Added a
session:has
tag. #3958
- The blueprint builder will prevent you from adding fields with reserved words. #3989
- The blueprint builder will allow you to set default field values. #3982
- The collection scaffolder now just creates views. #3997
- In listings that only ever require a single selection, you no longer need to unselect before selecting its replacement. #3950
- Fix "create navigation" button not appearing when you have permission. #4005
- Fix asset meta data disappearing when renaming programmatically. #3964
- Collection trees will be deleted when setting a collection to not orderable. #3901
- Prevent video previews blowing out the UI of the asset editor. #3975
- Support collections in the
reverse
modifier. #4003 - Prevent the Live Preview toolbar covering the Bard toolbar. #3979
- Tree files are ignored if they don't have a matching collection. #3948
- Consolidate the Stache's
getItemFilter
andgetFileFilter
methods. #4001 - Fix
search
tag when theas
param is used withoutpaginate
. #4000 - Fix static caching invalidation mismatch when using trusted proxies and SSL. #3939
- Fix removing users from groups when using Eloquent. #3951
- Fix table word wrap weirdness. #2550
- Fix
code
fieldtype not loading, andtextarea
fieldtype not being the correct height when in inactive tabs. #3955 - Fix site specific views not loading. #3944
- Structure entry eager loading is conditional, and won't happen when loading front-end pages. #3540
- Only update Stache indexes when they aren't cached at all yet. #3936
- Fix
is_parent
beingtrue
for the home page in thenav
tag when your site is defined with a full URL. #3900 - Fix error when getting the dimensions for a zero byte image. #3935
- That also prevents corrupt images from constantly recalculating their dimensions.
- Fix
dimensions
validation rule onassets
fields. #3922 - Filter out
import
fields from the "add existing field" pane in the Blueprint builder, which was causing JS errors. #3924 - Make Grid column squeezing rules more specific, which fixes a derpy
date
field. #3917 - Check permissions for the "Create" button on the
entries
fieldtype. #3906 - Fix
integer
fieldtype focus state. 6211855ad - Fix
isLowerCase
method casing. 9f05530bf - Fix random invalid popper reference errors. d8a0f52b9
- The
View::make()
method can now accept data. - Added a
View::first()
method that uses the first view that exists in a given array. #3880
- Fixed pagination in the
search:results
tag. #3894 - Static caching: Collection-based term URLs get invalidated when saving a term. #3884
- Static caching: Reordering a collection will invalidate the URL where it's mounted. #3885
- Static caching: Saving a nav tree will trigger invalidation. #3882
- Prevent error for entries with
layout: false
, or routes withlayout: false
/null
. #3893 - Apply field config
classes
togrid
fields. #3881 - Improve handling of creating terms in a non-default site. #3441
- Fix errors when importing single fields into Blueprints. #3249
- Prevent seeing asset breadcrumbs when navigation is restricted. #3873
- Fixed the "Create Folder" field not gaining focus in some browsers. #3874
- Bump
striptags
from 3.1.1 to 3.2.0 #3879
- Support for
.antlers.xml
views which automatically set the response type totext/xml
. #3855 - You can add more fieldtypes to the selector when building Form blueprints. #3866
- You can set the
width
ongrid
sub-fields in table mode. #3867
- When using full-measure static caching, pages with really long query strings will fall back to half-measure caching. #3864
- Fix filtering of taxonomy terms by collection. #3870
- Term files will always be created when using the
terms
fieldtype. #3852 - Fix wrong asset container with similar URLs being resolved. #3858
- Prevent dispatching invalidation jobs when static caching is disabled. #3869
- Add support for defining default password validation rules. #3823
- Markdown fieldtype previews are rendered server side so you can see custom parsers. #3859
- Prevent static caching error when visiting a URL with a really long query string. #3860
- Fix the size of SVGs in the assets fieldtype when in list mode. #3854
- Fixed validation error when saving entries in a strutured collection without a route. #3847
- Prevent an error when selecting an entry to mount to a collection. #3846
- Assets can now access their
mime_type
in templates. c5858990f
- Action classes can customize their toast messages. #3822
- Sites may specify text direction. #3815
- Added
form
to Submission. #3792 - Added
width
attribute to DataList's Table component. #3762 - Added
maxlength
to the views of form fields that have acharacter_limit
set. #3797
- Updated Dutch translations. #3834
- Fixed issue where ticking many items in a listing could fail. #3298
- Fixed
fatal: not a git repository
errors when using symlinks. #3829 - Prevented the "Create Fieldset" button disappearing. #3821
- Added a Submission typehint. 370cdc4ea
- Bump browserslist from 4.12.2 to 4.16.6 #3769
- The
redirect
tag will pass along route parameters when targeting a named route. #3801
- Fix entry slug or date changes not being reflected in filename. #3816
- Fix incorrect blueprint being saved to localized entry files. #3818
- Fix error when attempting to parse an
image
validation rule. #3812
- URI uniqueness is validated per site. #3808
- Prevent an infinite loop when you manually create an entry file without an ID. #3807
- Allow duplicate entry slugs (mainly so you can have entries of the same slug in different positions of a tree.) #3671
- Validation replacements. #3690
- Added an
installed
tag to check for packages within Antlers templates. #3800
- The
blueprint
is always saved to an entry. #3786 - Fix support for multiline
@{{ }}
noparse tags. #3785 - Bump dns-packet from 1.3.1 to 1.3.4 #3779
- Fix
@{{ }}
noparse tags with nested braces. #3784 - Fix an issue where a Grid with
min_rows
inside a Replicator wouldn't work by passing along pre-processed values. #3782
- Support underscored partials in a partials directory. statamic/ideas#305
- A bunch of date related fixes. #3730
- Fix and improve Stache path handling. Fixes a couple of term related errors. #3768
- Fix modifiers not working with dynamic array keys. #3737
- Fix an error when using the
locales
tag on non-content routes. #3754 - Fix an updater error on certain environments. #3734
- Reverted the lodash and underscore upgrades from 3.1.15 temporarily. #3750
- You can programmatically get and set a user's preferred locale more easily. #3725
- You can customize a Collection's "Create Entry" text. #3586
- Fix issue where the site URL sometimes would be incorrect, causing incorrect behavior in the
nav:breadcrumbs
tag, and likely other places. #3695 - Fix the
locales
tag only working for entries. #3689 - Fix asset editor not being editable even if you have permission. #3743
- Prevent mounting an entry from the same collection onto itself. #3731
- The
entries
fieldtype filters out unpublished entries when augmenting. #3544 - Typehint the Submission interface in the form email class so custom implementations can be used. #3596
- Bump underscore from 1.9.2 to 1.12.1 #3662
- Bump lodash from 4.17.19 to 4.17.21 #3672
- Add Bard node extension helper. #3657
- Add HTML fieldtype icon. 247364cbb
- Update Spanish, German, Dutch, and French Translations #3706 #3674 #3703 #3688
- Fix avatar URLs for some situations. 468a55864
- Fix error when selecting certain collections in a Bard fieldtype. #3709
- Fix array fieldtype always being dirty. #3704
- Fix GraphQL error in globals and terms. #3711
- Fix Bard z-index issue. #3694
- Fix SVG Dimensions. #3702
- Explicitly use Stringy for
Str::replace()
. #3698 - Bump codemirror from 5.55.0 to 5.58.2. #3691
- Bump url-parse from 1.4.7 to 1.5.1. #3664
- Bump hosted-git-info from 2.8.8 to 2.8.9. #3676
- In Bard, display the asset container option when using the link or image buttons. #3665
- Make dropdown items links, letting you open them in new tabs. #3667
- Update tracked keys when saving and deleting #3684
- Bard link picker only show entries for collections with a route. #3679
- Separate the title and optional translation. #3675
- Fix Bard error when linked entries and assets are deleted. #3678
- Fix
date
fieldtype'stime_enabled
option #3661 - Fix
link
fieldtype alignment. 83aededfe - Fix YAML fence when dumping multiline string as last key #3663
- Fix "Create Fieldset" button not displaying. #3645
- Added Duplicate ID tracking with Control Panel and CLI reviewing options. #3619
- You can replace ProseMirror nodes and marks with custom ones. #3648
- Fix a bunch of Stache issues. #3619 #3616
- Fix augmentation fallback behavior #3660
- Fix
trans_choice
Tag #3650 - Fix
link
fieldtype not showing the saved value. #3637 - Fix localizable Grid fields in stacked mode being read only. #3518
- Add asset selector to Bard link toolbar. #3591
- Favor authors value in Stache index #3617
- Bump composer requirement, of composer. #3653
- Assets uploaded in the selector stack will be automatically selected. #3604
- Improved the UX of the
link
fieldtype. #3605 - Updated French and German translations. #3583 #3589 #3601
- Fix relationship fieldtypes sometimes only showing IDs. #3547
- Prevent regenerating asset meta file for non-images. #3609
- Handle custom
authors
field. #3599 - Cascade is reused on subsequent calls rather than rehydrating. #3595
- Old input values are remembered in the
user:register_form
. #3584 - Support collections in the
sentence_list
modifier. #3593 - Support collections in the
option_list
modifier. #3606 - Fix bard formatting inside links. #3108
- Improve Laravel Nova compatibility by avoiding conflicting routes. #3543
- A read-only asset editor is now more read-only-er. #3552
- Improved asset upload failure error messages. #3560
- The
link
andpath
tags use theid
parameter to output urls for entries, etc. #3576 - They'll use the original item's url if it doesn't exist in the current site. #3579
- Fix the Collection edit screen not showing existing routes, and prevent an incorrect dirty state message. #3581
- Fix issues where the Static Site Generator would sometimes leak data between pages. #3562
- Fix set reordering for Bard and Replicator. #3574
- Fix page not scrolling when dragging Bard sets. #3571
- Fix images not displaying in Bard. #3570
- Add missing red asterisk to required fields in a Bard or Replicator set. #3572
- Fix issue where the first line after an image in Bard was not editable. #3555
- Fix issue where you sometimes couldn't move the cursor in Bard. #3559
- When using a collection widget with pagination, you don't get scrolled to the top of the page. #3553
- Fix the missing delete action for asset folders. #3582
- Bump ssri from 6.0.1 to 6.0.2. #3549
- Added header to disable Google's FLoC tracking by default. #3545
- Fix n+1 user group and role queries when storing users in the database. #3527
- Fix taxonomy not loading when your site has been configured with a subdirectory. #3541
- The
link
andpath
tags can output URLs for entries, terms, etc. #3530 - You can customize the table names for storing users in a database. #3278
- Added a
urlWithoutRedirect
andabsoluteUrlWithoutRedirect
methods to entries and terms. #3522
- Adjusted the UI for the site selector on the entry and term publish forms. #3519
- Localized entries can save empty values, which fixes not being able to override the values from the original entry. #3531
- Private entries can be viewed in Live Preview. #3533
- Fix the site being used in Live Preview. #3534
- Fix JavaScript modules only loading one time in Live Preview. #3524
- The
text
fieldtype, when using number mode will prevent an empty value being saved as0
. #3536 - It will also save integers or floats appropriately. a18d6f639
- Add border to selected non-image thumbnails in the asset browser. #3525
- Fix
is_parent
on nav tags when using first-child redirects. #2359 - The
permalink
variable on nav items with hardcoded URLs will now be converted to absolute URLs. #3522 - Fixed YAML exceptions sometimes showing the wrong file's contents. #3515
- Added a
pluck
modifier. #3502 - The
multisite
command lets you add more than one additional site. #3302 - Added a
max_depth
parameter to thenav
tag. #3513
- Updated French translations. #3497
- Gracefully handle incorrect-but-close-enough usage of
custom
field conditions. 73f941c5e
- Fix taxonomy routing when using localization. #3505
- In the
search:results
tag, includesearch_score
, and fixresult_type
when not supplementing data. #3477 - Preserve user defined defaults for new entries. #3472
- Prevent newly added navigation items being greyed out even if they're published. #3510
- Fix trailing slash on URLs which sometimes makes the asset browser not load. #3504
- Fix error in the
assets:generate-presets
command on older versions of Laravel. #3511 - Fix error wen
CarbonImmutable
is used app-wide. #3499 - Fix 404 error when URLs have both ending slash and query parameters. #3494
- Fix NaN and other glitches in the
time
fieldtype. #3496
- The Bard link toolbar allows you to browse for entries. #3466
- Added a
queue
option to theassets:generate-presets
command. #3490 - The
cache
tag supports cache tags. (Naming is hard.) #3357 - Add status UI for text nav items. #3489
- Fix SVG dimensions when not using pixels. #3482
- Prevent the 'read only' label and translation icons on
section
fieldtypes. #3492 - Prevent incorrect nav output when you had a nav named the same as a collection. #3491
- Ability to push queries and middleware into GraphQL. #3385
- Add breadcrumbs to asset browser. #3475
- Add limit param to foreach tag. fc034eec1
- Fix squished sidebar toggle. #3456
- Prevent unintended deletion of assets through editor. #3474
- Fix autofocus issues in Safari and Firefox. #3471
- Handle encoded characters in uploaded asset filenames. #3473
- Fix Glide 404ing for images in the
public
directory. #3484 - Fix assets being incorrect every other request in some cases. #3485
- Use request helper instead of server variables to fix an issue with Laravel Octane. #3483
- Status icons are shown in collections' tree views. #3461
- Addons can add external stylesheets. #3464
- Added a
honeypot
variable inside forms. #3462
- Glide routes will return 404s for non-existent images. #3450
- Recognize tag pairs correctly for a collection alias. #3457
- Fix utf8 handling of base64 encoded strings. #3421
- Fix
markdown
modifier not working with thecode
fieldtype. #3460 - Allow
symfony/var-exporter
5.1. #3463 - Bump y18n from 4.0.0 to 4.0.1. #3443
- Prevent the need to hit enter to add a validation rule. bdf9e03a5
- Updated German translations. #3434
- Fix taxonomies url and data handling which fixes a
nav:breadcrumbs
issue. #3448 - Fix "move asset" action not listing all folders. #3447
- Prevent action and glide routes being disabled by config. #3446
- Prevent error during addon tests. #3435
- French translations. #3429
- Fix widths for certain fieldtypes within Grid tables. #3426
- Fix update issue when a nav doesn't have a tree. #3430
- Fix link color inside updater. #3423
- Fix translation typo #3428
- Fix date fieldtypes not displaying. #3422
- Fix issue where the delete action wouldn't show, or would show twice. #3420
- Prevent error on
/cp/auth
when logged in. #3425 - Don't check for composer scripts during tests. #3427
- Official 3.1 release. 🎉
form:create
action and method params. #3411
- Redirect to CP after CP-based user activation. 5e2ff7df7
- Allow grid tables to dynamically use the most appropriate space. 12529a8bf
- Preprocess default values in Bard, Grid and Replicator preload methods. #3235
- Bumped
laravel/framework
requirement to versions with security patches. #3416 - Changes from 3.0.49
- Added option to set a custom path to git binary. #3393
- Added
ArrayableString
class, and apply to thecode
fieldtype. #3347 - Added support for
date
input type ontext
fieldtype. 39323eab4 - Added ability to set HTML attributes on
NavItem
s. #3386
- More asset performance improvements. #3409
- Redesign the updater widget. 3b8538814
- Set widget heights to full for a more pleasing experience. d7b55bd47
- Display toggle fieldtypes inline when in sidebar. a521286ea
- Don't show error templates in the template fieldtype. da84894de
- When a Replicator has a single set, the add button will not show the set selector. 68722c23a
- Added an icon to the collection widget. 28e2290a0
- Fix custom logo when using arrays with null. #3408
- Fix
trans_choice()
pluralization. #3405 - Fix broadcasting error if you have your routes cached. #3395
- Prevent delete action showing outside of core listings. 8a4d84fc
- Brought over changes from 3.0.48
- You can configure Statamic to use separate authentication from the rest of your app. #3143
- Added support for the
mimetypes
validation rule. #3290
- A whole bunch of Amazon S3 performance optimization. #3369 #3353 #3354 #3359 #3362
- The
mimes
andimage
validation rules now use the actual mime type rather than just the extension. #3290 - SVG assets can provide their dimensions. #2865
- GraphQL will filter out draft entries from the entries query by default. #3349
- Fix an error when there's missing asset metadata. It's now lazily loaded. #3280
- Brought over changes from 3.0.47
- Collection and Nav Trees are now stored separately from their config. #2768
- Added configuration to make REST API resources opt-in. #3318
- Added a form endpoint to the REST API. #3271
- You can disable paste and input rules on Bard fields. e23f2103
- You can add placeholder text to
textarea
fieldtypes. dc8fb06f
- The REST API will filter out draft entries by default. #3317
- Full measure static caching no longer logs when creating the page. #3255
- Form fieldtypes now show data in the API rather than an empty object. #3182
- Removed the minimum character limit for search queries. 4327e68c
- Added the missing jpeg file type icon. 0c019840
- Update scripts and lock file class will normalize versions even more normalized. #3335
- Brought over changes from 3.0.44-46
- A bunch of structure tree related things outlined in #2768
- A
hasCachedPage
method has been added to theStatamic\StaticCaching\Cacher
interface. - GraphQL queries are all disabled by default. #3289
- Global search is now only triggered with a slash. (Not ctrl/alt/shift+f) cad87068
- Since REST API resources are now opt-in, everything will 404 until you update your config. #3318
- Support separate logos for outside/inside. cad7451e
- Fix date fields not augmenting ranges. #3223
- Brought over changes from 3.0.43
- The
@svg
directive has been renamed to@cp_svg
to avoid potential conflicts. #3186
- Ability to query an entry by slug or URI in GraphQL. #3193
- Fixed GraphQL nested subfield handling for Replicator, Bard, and Grid fields. #3202
- Fixed Safari display issue. #1999
- Brought over changes from 3.0.41-42
- GraphQL #2982
- White labeling #3013
- Update Scripts #3024
- API Caching #3168
- Nav and Collection structure tree API endpoints #2999
- Entry author permissions #3053
- The
date
fieldtype now augments to Carbon instances. If you use them in Antlers without any modifiers, they will now be output using the defaultdate_format
(e.g. January 1st, 2020). Previously, the raw value (e.g. 2020-01-02) would have been output. Actual entry dates (i.e. thedate
field) would have behaved this way already. If you were using a modifier (e.g.format
), there will be no change.
- Add markdown option to render form emails. #3414
- Widont adds spaces for all paragraphs, and fixed up the modifier parameter. #3303
- Vertically align fieldtypes in a grid. #3387
- Bump elliptic from 6.5.3 to 6.5.4. #3352
- The Git integration can use a custom queue connection. #3305
- The Stache watcher now uses an environment variable by default. #3403
- Fix
markdown
modifier not using custom parser. #3373 - Fix issue where the
nav
tag would incorrect label urls as external. #3401 - Assets default their
focus
andfocus_css
values to50-50-1
. #3340 - Fix wrong Closure typehint. #3375
- Added a
route
param toredirect
tag. #3308 - Added a "double encode" option to the
sanizite
modifier. #3067
- Fix sorting on aliased entries. #3363
- Fix default entry blueprint when hiding some of them. #3368
- Fix error when using SVGs in Glide tag pairs. #3366
- Fix JS error when field condition would result in an unevaluatable string. #3366
- Fix CP index dates in range-mode. #3306
- Removed unused dependencies in Fieldset and Blueprint repositories. #3307
- You can get a user's email via a property. #3331
- Fix range field overflowing issue. #3292
- Show valid data for a Form fields in the content API. #3270
- Enable fixed toolbar on a Bard field inside a set. #3240
- Add new
chunk
modifier. 849ae0ccb - Support
image
andmimes
validation rules for assets. #3253 - Parameters can now access:nested:variables. #3267
- Added syringe icon. #3232
- Improve Spanish translations. #3243
- Fix error when attempting to filter a collection by a single taxonomy. #3244
- Prevent deleting
select
field selections when in read only. #3283 - Preserve numeric keys in the
array
fieldtype. #3284 - Localize the taxonomy
terms
field. #3172 - Persist the
parent
when using the create another entry button. #3285 - Fix disabled
select
field styling issues. #3275 - Prevent excessive user database queries. #3227
- Handle null labels correctly in the
array
fieldtype. #3260 - Keep text field width within limits in Firefox. #3258
- Fix type error in
repeat
modifier. #3261 - The
date
fieldtype in a listing uses use thedate_format
setting. #3264 - Use
date_format
in updater changelogs. #3246
- Allow
view
data to be passed into tags parameters. #3252 - Fix error when submitting a form with emails. #3239
- Added an
EntryCreated
event. #3078 - Ability to save entries without triggering events. #3208
- Add
sort
andquery_scope
parameters tosearch:results
tag. #2383 - Ability to disable focal point editor. #3160
- Fix Radio input position. #3183
- Fix Antlers ternary condition escaping. #3123
- Prevent terms being created with existing slugs, which prevents overriding existing terms. #3114
- The "Visit URL" button gets hidden when a collection has no route. #3080
- Fix stroke color of the taxonomy icon. #3225
- Fix issue where date range fields would sometimes be a day behind. #3221
- Prevent error when a user's avatar is deleted. #3212
- Use more data when augmenting a form submission, which prevents the wrong date being shown. #3204
- Fix error in asset listings when one has recently been deleted. #3201
- Fix Taxonomy facade accessor. #3199
- Small clean up of
trans
tag. #3197
- Added a
ray
modifier. #3137
- Form email subjects can be translated. #3144
- View site button in CP uses the selected site. #3139
- Updated Danish, German, and French translations. #3161 #3134 #3129
- Prevent moving pages to end of top level when already there. #3152
- Fix form widget styling. #3169
- Fix Bard line wrapping issue. #3115
- Inject the Symfony Yaml component. #3164
- Adjust Action Facade docblock #3150
- Fix error when saving a root page. #3132
- Fixed a handful of translation issues. #2511 #2520 #2515 #2510 #2509 #2641 #2514 #3119
- The
multisite
command will enable pro and update your config file for you. #3125
- Fix error in the
multisite
command. #3125 - Fix table fieldtype duplicating data. #2470
- Fix table fieldtype not showing delete row button. #2790
- Fix entries etc not being removed from search index when deleted. #3121
- Fix API URL related error when using Live Preview while creating an entry. #3112
- Fix time being added to the date fieldtype unnecessarily. #3118
- Prevent null values from being saved in Bard and Replicator fields. #3126
- Prevent a situation where you could move a page into a child of the root, which isn't allowed. #3104
- Prevent orderable collections from having a parent field. #2012
- Removed route model binding for users. #3088
- Fix 404s within the CP rendering as front-end 404s. #3098
- Added a horizontal rule button to Bard. #3076
- Ability to choose from multiple blueprints on the empty collection screen. #1985
- You can now edit a blueprint section's or Bard set's handle separately from the display text. #1667
- Addons can more easily register actions, scopes, and filters. #3093
- Fix Bard issue where using bold inside a link would split the link up. #2109
- Fix Bard issue where an empty paragraph is added before a newly added set. #1491
- Prevent editing and removing assets from the assets fieldtype when it's read only. #1826
- Half measure static caching uses the correct expiry key as per the docs. #2744
- Fixed an issue where a statically cached page would get unintentionally re-cached. #3085
- Fix date handling when using revisions. #3094
- Added a
CollectionCreated
event. #3062 - Added a
UserRegistering
event. #3057 - Added a
float
fieldtype. #3060
- You now get a confirmation before updating or downgrading Statamic and addons. #3038
- Fixed entry publish state management permissions. #3039
- Query strings can be ignored when using static caching. #3075
- Bump
axios
from 0.19.2 to 0.21.1 #3068
- Hide the "Enable Pro" part of the Getting Started widget if it's enabled. #3051
- Updated French and German translations. #3029 #3052
- Improved the Asset SVG asset previews. #2945
- Fix issue where you couldn't drag Bard sets when used inside a Replicator. #2063
- The 'Add Date' button is unavailable in the date fieldtype when it's read only. #3025
- Fix issue where a non existent avatar sometimes caused an error. #3027
- Show a dropdown indicator when there's more than one taxonomy blueprint. #3010
- Fix btn class selector clash. #3022
- Updating through the CP will also update dependencies, fixing an issue where people were stuck on 3.0.12. #3045
- Prevent Replicator sets shrinking when dragging them. 9dedf49b3
- Fix issue where you couldn't un-hide a blueprint. #3033
- Blueprints can be hidden from the Create Entry and Create Term buttons. #3007
- Added a
UserBlueprintFound
event. #2983
- Fixed a circular reference which made Bard freeze the page. #2959 #3005
- Register our custom cache driver earlier, which fixes compatibility with Laravel Telescope. #3023 #1721
- The Toggle fieldtype gives you a boolean when undefined, rather than null. 1f11c9c89 05601e49b
- Terms can contain supplemental data, which fixes error within search. #3008
- Fix
isInGroup
for Eloquent user driver. #2951 - Fix issue where only one term would be returned when you have two terms with the same slug in different taxonomies. c9624a49e
- Hide the "Duplicate Row" button when max grid rows have been reached. #3006
- Removed the zero indexed grid item count. b657efa28
- Fix
join
modifier when value is null. #3001 - Fix Term facade hints. #3012
- Bump
ini
from 1.3.5 to 1.3.8 #3009
- PHP 8 support. #2944
- Use the correct password reset url in emails when using the
user:forgot_password_form
. #2988 - Passing an invalid
from
value to anav
tag will output from the root, rather than throw an error. #2963
- Allow collection specific taxonomy views to work without mounting (when you have a single word collection). 352772eaa
- Updated German translation. #2968
- Fixed an issue where you couldn't re-select an asset after removing one. 844e3710d
- Prevent terms being excluded from search results by giving them a published status. #2950
- Fix the "View" dropdown link on the taxonomy term listing page. e26a1ad5f
- Fix terms not having the collection scoped URLs on the collection specific listing page. 175783dc6
- Fix a paginator related error when using Laravel 6. 6ade2a61c
- Fixed an issue where colon delimited strings in Antlers conditions weren't parsed correctly. #2396
- Fix breadcrumbs not rendering properly when not including home #2976
- Fix error for an empty search string #2974
- Fix error when paginating using Eloquent. 7f4fd19ea
- Added
hidden
to thetext
fieldtype'sinput_type
dropdown. #2952 - Improved visual spacing when adding Replicator blocks. #2955
- Updated French translations. #2870
- Reverted the
highlight.js
andtiptap-extensions
upgrades from 3.0.31. Fixes a Prosemirror error. #2919 - Fix users not being able to change their own passwords. 6fec3bace
- Fix users not being able to reset their passwords when using Eloquent. #2795
- Fix an unnecessary alert after saving a term. #2930
- Prevent the
statamic:install
command trying to creating.gitkeep
files at the wrong place. #2939
- The Select fieldtype's Replicator preview text uses labels. #2913
- When using Eloquent based users, prevent updating timestamps when logging in. f7d242e5c
- Added an Antlers toggle to the config of text fieldtypes. #2891
- The
.gitkeep
files generated by theinstall
command use directories defined in the config. #2888 - Updated translations. #2896 2ef2fda9c
- Fixed non-string IDs (like integers, when using Eloquent) within the Entries fieldtype. #2900
- Fixed error when attempting to filter entries by a null taxonomy term. #2904 #2912
- Upgraded
highlight.js
andtiptap-extensions
. b74c61e05 - Fix error when a
terms
fieldtype is used within a User. 6e04a0878 #2826 - Fix cmd+s not saving on a navigation. #2873
- Fix OAuth when using Eloquent users. #2901
- Pass in the current blueprint to the 'Create Another' URL. #2886
- UTF8 encode asset name. #2892
- Fixed the
localize
modifier. 7bf579393
- Added a sites variable. #2513
- Added the ability to limit number of sets in a Replicator field. #2866
- The search:results tag supports pagination. d059bc4eb
- Prevent comma in submission filenames when used in some locales. 927890a95
- Prevent form submissions generating new IDs. #2822
- Don't use the "after save" features when inside a Stack. #2827 #2469
- Global CP search results are filtered by permission. #2848
- Prevent error when getting image dimensions from a corrupt file. #2877
- Query string is maintained in pagination links in tags. d059bc4eb
- Fix issue where nested imports with prefixes causes compounding prefixes. #2869
- Prevent select fields with max_items set to 1 being unclearable. d04519d2b
- Select fields are searchable if you allow additions, even if you don't explicitly enable the searchable option. 5cba0bc
- Adjust Bard Set Picker placement. 80ff247b2
- Fix styling of pagination's
...
separator. f0f1cdef6 - Support cmd+s to save on Fieldset and Navagition form pages. b77a8d227
- Fixed that annoying little gap in the main nav when the trial banner isn't there. d9396a838
- Only turn fieldtype length limiter to red when you exceed the limit. Meeting is fine. 0c939faa3 7ce0200f1
- Fix the
rtfm
command's URL and text. 3185d65e5 - The
length
modifier works with collections. #2876
- Improved speed of CP entry, term, and form submission listings by only requesting values for visible columns. #2857
- Made some Blueprint related performance improvements. #2856
- Added unique classes based on the handle to each field wrapper div. statamic/ideas#388
- Replaced fzaninotto/faker with fakerphp/faker. #2819
- Collection widget shows entries for the current site. adbeaeba5
- Prevent situations where a structure could end up with a root page with children. #2852
- Render attributes whose value is false. #2845
- Prevent removing/ordering of options on read-only relationship selects. #2415
- Adjusted trial mode banner visibility. 4b83422b9
- Asset browsing has been given some performance improvements when dealing with large amounts of assets. #2828
- The
embed_url
modifier load embeds without cookies from Vimeo or YouTube. #2820 - Increase scannability of the fieldtype picker. statamic/ideas#384
- Fixed some issues with nav and breadcrumb tags on multisite. #2269
- Fix legacy bard data not displaying in listings. 13b70fa79
- Fix an issue where Bard text doesn't show up in listings sometimes. ab4194c88
- Field names in form validation can be translated. #2764
- Added an Indonesian translation #2426
- The
assets
tag can search by collection, and fields, and filter by type. #2716
- French, German, and Danish translations have been updated. #2808 #2804 #2809
- The name is passed along when creating custom search index drivers. #2781
- The
search:update
command defaults toall
so you can just hit enter. a0c7ad908 - Exceptions thrown within modifiers will now show the real exception in the stack trace. 0c443f751
- The
text
fieldtype will save integers instead of strings wheninput_type
isnumber
. #2708
- Fix shallow augmentation for nested relations. #2801
- Fix a recursion issue in Bard that made the page hang. #2805
- Prevent an error when adding a new set in Bard or Replicator. f9c448d1c
- Prevent an error when there's a Replicator set without any fields. 402feb229
- Fix issue where only the last field's value of a Replicator is shown in the preview. a5fd579f4
- Fix a weird table shrinky overflowy UI thing. #2595
- Localized entries get appropriate fallback values placed in the search index. #2789 88b245b
- Fix the
sum
modifier not being able to handleValue
objects. #2703 - Prevent
select
fields with lots of text from overflowing. #2702 - Prevent blueprint fields with long labels from overflowing. #2673
- Added Stache Locking. Reduces resource spikes on busy sites while building the cache. #2794
- Added an
entriesCount
method to taxonomy terms which lets us perform a more efficient count query. This speeds up Stache build time on taxonomy-heavy sites. #2792
- Added some missing translations. 36d973eb
- Fixed a typo in a Dutch translation. #2796
- Replicator can configure it's set collapsing behavior. Everything by default #2771, or accordion style 979daebec.
- Static caching supports invalidaton by Navigation and Global. #2778
- Radio fieldtype labels are shown in listings instead of just the values. #2731
- Add Slovene translation. #2777
- Improve Replicator and Bard performance when collapsing sets. #2787
- Fixed field conditions in Grids and imported fieldsets with prefixes. #2767
- Only look up addon editions if they're installed. #2782
- Taggable and Relationship fieldtype in select mode is reorderable by drag and drop. #2059
- Fix a few instances of title, status, etc not being updated in the UI appropriately. #1822
- Prevent select fields from converting booleans when used as config field. b2a425079
- Prevent an overzealous blink cache clear. 818c4fdc4
- Addon directories should include a trailing slash. seo-pro#140
- 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 requireext-json
, which improves the experience for PhpStorm users. #2735
- 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 aStreamedResponse
. #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
- Added a
smartypants
modifier andHtml::smartypants()
method. #2689
- 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
- The French translation has been updated. #2664
- 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
- Added an
md5
modifier. #2652
- 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
- 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
- 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
- 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
andfalse
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
- Added a
key
parameter to thecache
tag. #2589 - Search indexes can define transformers. #2462
- The
locale
method on theEntry
class can accept aSite
object. - The
toggle
fieldtype can understand0
and1
in your YAML files, rather than justtrue
andfalse
. - French translation has been updated. #2591
- Entries are placed appropriately into a collection's structure when localizing them. #2471
- The
date
method on theEntry
class checks forCarbon\Carbon
, rather thanIlluminate\Support\Carbon
. - The subrequest is passed along to the cascade in Live Preview, which fixes things like
segment_x
variables using the CP URL.
- Laravel 8 is now supported. #2547
- 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
- Fix handling of taxonomy routes when they have multiple words. #2273
- Setting
create: false
on aterms
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).
- 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.
- 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 theuser: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.
- The partial tag now supports slots.
- The preview area of the asset editor has been improved for SVGs.
- The get_content tag has been given a little performance boost.
- French translations have been updated. #2504
- Improve the UX of defining field conditions.
- 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
- 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.
- 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 returntrue
if it has a value offalse
ornull
. - The submission class sets its data and supplements properties to collections.
- Ability to remove a blueprint section programmatically. #2491
- You can pass a variable into the
nav
tag'sfrom
parameter and it will make sure it has a slash, allowing you to do:from="segment_1"
.
- 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.
- 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
- 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
- "Angle brackets can now be used in modifiers" from 3.0.9 has been reverted for now. #2022
- 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
- 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
- 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.
- 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
- 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
- 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
- Fix more instances of #2369
- The scope modifier 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.
- Improved multisite Glide support. #2379
- Added a GlideImageGenerated event. #2160
- The Glide tag will return the item's original URL if it's not resizable (like an svg). #2122
- Fixed more of that issue from 3.0.4. #2369
- Adjust the margin in the section fieldtype. #2154
- Fix an issue where using a modifier on an array of augmentables (e.g. entries or assets), nothing would be output.
- Fix an issue introduced in 3.0.4 where using a Collection would cause an error.
- Revamped the validation builder you see when editing a field in a Blueprint or Fieldset.
- The
trans
tag accepts alocale
parameter if you want to be explicit, just like thetrans()
helper.
- The table fieldtype is usable inside Replicator. #1447
- The search results tag will now filter results by the current site by default. #2343
- It'll also filter by published results by default. #2268
- Tag pairs using the
scope
modifier have access to cascading variables. #1550 - Using the
where
modifier no longer removes access to cascading variables. #2224 - Fix error when using the
scope
modifier on a Grid fieldtype. #2250
- Bard now has an option to always show the "Add Set" button.
- Widespread accessibility improvements through
aria
attributes and matching form labels+IDs - The Array fieldtype is now full width by default. It makes it look better more of the time. #2315
- Filter badges are no longer forced to lowercase for selfish aesthetic purposes. There are many legitimate cases for case sensitivity. #2219
- A bunch of form improvements. Fields are loopable, values are augmented like in entries, submission index and show views are prettier, and more. #2326
- The link tag now properly prefixes URLs with the current site base url. #2317
- Super long Select field values no longer spill out of the box like when you have too much spaghetti in your back pocket and sit down. 🍝 #2324
- Non-reorderable Grid rows can now be deleted, as one would expect. #2306
- A global variable named
title
will be used in templates, rather than the title of the set itself. #2329 - PHP files can no longer be uploaded to asset containers.
- Parent field is localizable by default. #2211
- Site selector when reordering entries.
- Prevent overwriting the entry variable. Prevents title, slug, parent, etc from incorrectly falling back to the root value. #2211
- Fix a "does not exist in structure" error when localizing a page. #2176
- The "Visit URL" button is updated when you change sites, or update the slug. #1864
- Fix an error when switching sites when creating an entry. #2261
- Fix entry reordering when using multiple sites. #1869
- Fix select fieldtype not rendering when you have numeric options/values. #2302
- The
wrap
modifier only wraps if there's something to wrap. #2299 - Fix missing breadcrumb. #2236
- Section fieldtype shouldn't be localizable. #2236
- Fix facade IDE typehint #2297
- Adjust contrast on some UI elements.
- Localizable field toggle. #2045
- The
form
tags get asubmission_created
boolean. #2285 - The
template
fieldtype will ignore views in thepartials
directory whenhide_partials
is enabled. #2249 - The "first child" option is only in
link
fieldtypes if the entry is in a structured collection. #2209 - A Blueprint's
parent
will be the Collection/Taxonomy when creating an Entry/Term. - Collection view mode button tooltips. #2241
- PHP short tags will be sanitized in Antlers templates.
- Vuex store gets the site when creating entries. #2237
- Entry locale defaults to the default site. #2275
- Entry inherits its layout from an origin entry, if one exists. #1830
- Global site selector is scrollable. #1838
- Rogue closing tag removed. #2253
- The
FormSubmitted
event gets asubmission
property. #2271 - Images are inline in Replicator previews. #2267
- Addon thumbnail alignment. #2272
- Simplify how our custom cache store creates paths. Fixes a Windows pathing issue. #952
- Fix shrunken toggle. #2170
- Translations. #2282 #2256
The day has finally come. Statamic 3 is out of beta and into the wild!
Learn more in our launch announcement