Releases: symfony/ux
2.23.0 : Minor Improvements & Fixes
Hey UXer's!
Not a ground-breaking release, but some nice minor improvements and fixes.
Autocomplete
- Reset TomSelect when updating controller attributes by @pierredup in #1505
- Deprecate
ExtraLazyChoiceLoader
in favor ofLazyChoiceLoader
by @norkunas in #2458 - Fix Incompatibility filter_query and max_results (doc) by @ytilotti in #2440
- Configurable results by @J-Ben87 in #2541
Twig Components
- Update using macro docs by @smnandre in #2444
- Minor doc syntax fix by @javiereguiluz in #2459
- Document about unwanted behavior with
ExposeInTemplate
and computed methods by @Kocal in #2456 - Fix typo in docs by @JalenWasHere in #2452
- Remove word in documentation by @jmwill86 in #2475
- Various fix / cleans in documentation by @smnandre in #2471
- Use promoted properties in code sample by @tacman in #2484
- Add explicit string cast on string assertions by @Valmonzo in #2507
- Remove obsolete
TemplateNameParser
by @sneakyvv in #2506
Live Components
- Update CSRF docs by @smnandre in #2443
- "Hooks: Handle Component Behavior" spacing issue in docs by @nehalgajjar in #2435
- Check secret is not empty + add
[SensitiveParameter]
by @smnandre in #2461 - Allow configuring secret for fingerprints and checksums by @smnandre in #2462
- Use
container.build_hash
instead ofkernel.secret
inCacheWarmer
by @dkarlovi in #2451 - Remove form property in live component docs by @jannes-io in #2474
- Document
make:twig-component
by @seb-jean in #2480 - Add a link label in doc by @MrYamous in #2476
- Update doc on how to use
submitForm()
by @yalit in #2510 - Fix
ComponentWithFormTrait::extractFormValues()
with edge cases by @smnandre in #2491 - Add very simple download files docs by @zefyx in #2513
- Prevent
__component
property to be serialized when calledJSON.stringify()
by @Kocal in #2537 - Add Documentation for testing with
LiveCollectionType
by @yalit in #2517 - Fix formatting of the inline code for the text
RedirectResponse
by @zefyx in #2530 - Fix
ComponentWithFormTrait
not working in batch actions by @smnandre in #2553
Icons
Map
Chart.js
- Listen to Stimulus
disconnect
event to destroy the chart by @Shadow-Devil in #1944
Stimulus
- Update Stimulus Components URL by @94noni in #2495
- Fasten lazy loading + add debug
lazy:loading
andlazy:loaded
by @smnandre in #2463
Turbo
- Remove obsolete Mercure configuration (docs) by @smnandre in #2524
- Add stream format with request listener by @aleho in #2550
LazyImage
- Add a warning message to not recommend Lazy Image package by @javiereguiluz in #2501
Site
- Add BlueSky by @smnandre in #2436
- Update deps by @smnandre in #2441
- Visual improvments on IconModal by @Kocal in #2465
- Update site banner by @smnandre in #2489
- Upgrade PHP8.4 on psh by @smnandre in #2442
- Back to PHP 8.3 by @smnandre in #2494
- Add links to UX icons documentation by @smnandre in #2499
Miscellaneous
- Mention Doctor Rst in
CONTRIBUTING.md
by @smnandre in #2472 - Fix and display changed dist files in the CI by @Kocal in #2503
- Drop explicit Yarn dependencies caching steps for actions/setup-node by @Kocal in #2504
New Contributors
- @dkarlovi made their first contribution in #2451
- @JalenWasHere made their first contribution in #2452
- @ytilotti made their first contribution in #2440
- @Shadow-Devil made their first contribution in #1944
- @jmwill86 made their first contribution in #2475
- @Valmonzo made their first contribution in #2507
- @yalit made their first contribution in #2510
- @zefyx made their first contribution in #2513
- @J-Ben87 made their first contribution in #2541
Full Changelog: v2.22.1...v2.23.0
2.22.1 : Bug Squashing
Hey UX'ers!
Just a small, but important bug fix release.
Autocomplete
- Fix grouped options order by @zavarock in #1825
- Added Polish translation for "Add ..." message by @skmedix in #2418
Map
- Fix documentations codeblocks for the LiveComponent integration by @Kocal in #2412
- Fix default values of Stimulus Map Controller by @Kocal in #2420
Icons
- Fix
LockIconsCommand
definition when Iconify is disabled by @smnandre in #2416 - Fix doc typo by @karpilin in #2424
StimulusBundle
Live Components
- Update docs for
PostHydrate
,PreDehydrate
&PreReRender
by @nehalgajjar in #2431 - Handle loose comparison with empty placeholder by @FoxCie in #2426
Twig Components
- Add tip about
make:twig-component
command by @DennisdeBest in #2384 - Mention how to work with Twig macros in Twig Components by @javiereguiluz in #2432
Miscellaneous
- Apply natural import order for JS to synchronise the code base with Biome and its configuration by @chadyred in #2423
- Drop format, lint, check-format and check-lint commands, replace them with check and ci commands by @Kocal in #2428
- Replace CleanCSS by LightningCSS by @Kocal in #2429
Site
- Update Symfony 7.2 by @smnandre in #2411
- Show a visible link to the docs of each package by @javiereguiluz in #2309
New Contributors
- @zavarock made their first contribution in #1825
- @skmedix made their first contribution in #2418
- @karpilin made their first contribution in #2424
- @nehalgajjar made their first contribution in #2431
- @FoxCie made their first contribution in #2426
Full Changelog: v2.22.0...v2.22.1
2.22.0 : So long CSRF!
Hey UX'ers!
Here's a shiny new release for you! 🎉
Live components now rely on same-origin/CORS instead of CSRF tokens for protection. They're now stateless and the session is no longer required! In Turbo, <Turbo:Stream>
and <Turbo:Frame>
Twig components were added plus support for multiple Mercure topics in turbo_stream_listen
. The Map component now supports polylines and have come alive with Live Components. Across the board, we've improved performance, fixed bugs, and updated documentation.
Autocomplete
- Allow configuring TomSelect’s
labelField
by @MatTheCat in #2382 - Update
AutocompleteBundle.tr.php
by @xDeSwa in #2294 - Adjust
index.rst
format by @smnandre in #2297 - Note form requirements by @MrYamous in #2295
- Mention
preload
can be set tofalse
by @MatTheCat in #2348 - Fix handling of associated properties in DQL joins by @HugoSEIGLE in #2377
Live Components
- Remove CSRF tokens - rely on same-origin/CORS instead by @nicolas-grekas in #2251
- Fix documentation for select data-model by @Nek- in #2313
- Fix variable in docs by @xDeSwa in #2402
- Fix checkbox/radio value matching by @smnandre in #2401
- Refactor
elementBelongsToThisComponent
by @smnandre in #2399 - Fix required select not initialized by @dsoriano in #2403
Twig Components
- Cache component properties metadata by @smnandre in #2211
- Optimize TwigPreLexer by @smnandre in #2316
- Improve
BlockStack
performance by @smnandre in #2343 - Fix directory separator in Debug command by @clussiana in #2342
- Improve
ComponentFactory
performance by @smnandre in #2344 - Store mount methods in compiler pass by @smnandre in #2357
- Cache template class resolution by @smnandre in #2364
- Ignore "nested" for Alpine & Vue attributes by @smnandre in #2328
StimulusBundle
- Update Jetbrains stimulus plugin url by @Basster in #2299
- Check controllers source files for laziness by @MatTheCat in #2304
- Mention
removeComments
will no longer be necessary by @MatTheCat in #2347
Turbo
- Add generic
<Turbo:Stream>
component by @seb-jean in #2302 - Add
<Turbo:Frame>
component by @seb-jean in #2303 - Support custom
TurboStreamResponse
actions by @DRaichev in #2298 - Add support for providing multiple mercure topics to
turbo_stream_listen
by @norkunas in #2407 - Delete whitespace for
<twig:Turbo:Stream:*>
components by @seb-jean in #2300
Icons
- Fix commands receive polluted SVG by @smnandre in #2314
- Prepare lock / warmup optimization by @smnandre in #2351
- Support aliases in LockIconsCommand by @smnandre in #2356
- Fetch icons in batch in Import command by @smnandre in #2352
- Use dedicated cache pool by @IndraGunawan in #2410
Map
- Add polyline support by @sblondeau in #2340
- Make UX Map compatible with Live Components (and some internal things) by @Kocal in #2385
- Update documentation by @smnandre in #2317
- Update
index.rst
by @LesRouxDominerontLeMonde in #2339 - Introduce
ux_map.google_maps.default_map_id
configuration by @Kocal in #2350 - Add documentation about
ux_map.google_maps.default_map_id
by @Kocal in #2358 - Remove duplicate question mark ? in DSN string by @alexander-schranz in #2371
- Fix Twig Component example by @ker0x in #2373
- Add position and missing closing parenthesis by @tacman in #2360
- Fix typos 'an' should be 'a' in READMEs by @tacman in #2398
- Fix and improve TypeScript types, refactor same logic into dedicated methods (to reduce file size) by @Kocal in #2406
Svelte
React
Translator
Site
- Update dependencies by @smnandre in #2293
- Fix React/Svelte/Vue demo by @smnandre in #2284
- Update docker compose configuration by @Nek- in #2305
- Update
bin/link-locally
by @smnandre in #2310 - Test Symfony 7.2 beta by @smnandre in #2323
- Use variable webfont by @smnandre in #2327
- Update demo components paths by @smnandre in #2336
- Fix FileTree markup (minor) by @smnandre in #2335
- Update symfony by @smnandre in #2346
- Fix typo on cookbook index by @kbond in #2355
Miscellaneous
- Add myself to code-owners by @Kocal in #2308
- Update the issue template by @smnandre in #2320
- Add CI workflow to compute diff between files dist files by @Kocal in #2269
- Add per-package Yarn scripts (build, watch, test, lint, ...) by @Kocal in #2326
- Some improvements for dependencies management when testing by @Kocal in #2349
- Fix some misc doc issues by @javiereguiluz in #2387
- Add PR template and auto-close PR on subtree split repositories by @Kocal in #2395
- Add
CONTRIBUTING.md
by @Kocal in #2408
New Contributors
- @MrYamous made their first contribution in #2295
- @Basster made their first contribution in #2299
- @LesRouxDominerontLeMonde made their first contribution in #2339
- @clussiana made their first contribution in #2342
- @alexander-schranz made their first contribution in #2371
- @DRaichev made their first contribution in #2298
- @sblondeau made their first contribution in #2340
- @HugoSEIGLE made their first contribution in #2377
Full Changelog: v2.21.0...v2.22.0
2.21.0 : Turbo + TwigComponents = ❤️
Hey UX-er's!
In addition to many minor bug fixes and improvements across all packages, this release adds new
<twig:Turbo:Stream:*>
Twig components to Turbo. Also in Turbo, a newTurboStreamResponse
and
TurboStream
helpers we added.
Map
- Explicitly require StimulusBundle in Bridges, fix tests by @Kocal in #2207
- Update
index.rst
by @ebedy in #2229
Translator
Twig Components
- Fix an example in Twig Components doc by @javiereguiluz in #2213
- Fix
ux:icon
&ux:map
renders by @smnandre in #2210 - Fix internal variables are dispatched by @smnandre in #2220
- Fix wiring of
ComponentRuntime
by @kbond in #2231 - Fix outerblock markup example by @tobiasberge in #2235
Toggle Password
- Misc updates in TogglePassword docs by @javiereguiluz in #2214
React
- Update some dependencies to fix some issues from Dependabot by @Kocal in #2219
- Add
permanent
option toreact_component
function by @smnandre in #2283 - Update
phpunit.xml.dist
by @smnandre in #2286
Swup
StimulusBundle
Autocomplete
- Add czech and slovak translation for "Add ..." message by @fbuchlak in #2216
- Typo on Autocomplete page by @alexislefebvre in #2253
- Add missing types by @smnandre in #2265
- Remove
symfony/string
dependency by @smnandre in #2267 - Remove unused
symfony/security-csrf
dev dependency by @smnandre in #2264 - Update
AutocompleteBundle.de.php
by @simonsolutions in #2285 - Translate "Add ..." text with remote data setup by @jonasdekeukelaere in #2279
Icons
- Some updates in the full configuration example docs by @javiereguiluz in #2226
- Fix a typo in UX Icons docs by @dfridrich in #2275
- Patch to handle Iconify API change by @smnandre in #2289
- Improve
icons:lock
command verbosity by @smnandre in #2287
Turbo
- Add
Helper/TurboStream::append()
et al. methods by @nicolas-grekas in #2196 - Add
<twig:Turbo:Stream:*>
components by @nicolas-grekas in #2227 - Replace JS toolchain by asset-mapper when testing ux-turbo by @nicolas-grekas in #2232
- Fix to the right test by @GrinWay in #2234
Dropzone
Live Components
Miscellaneous
- Migrate from Yarn Classic to Yarn Berry by @Kocal in #2222
- Delete
UPGRADE.md
by @smnandre in #2242 - Clean
.gitignore
/.gitattributes
by @smnandre in #2243 - Remove yarn commands in documentations by @Kocal in #2263
- Remove stimulus-bundle unnecessary warning on documentation by @feymo in #2270
New Contributors
- @ebedy made their first contribution in #2229
- @tobiasberge made their first contribution in #2235
- @GrinWay made their first contribution in #2274
- @dfridrich made their first contribution in #2275
- @jonasdekeukelaere made their first contribution in #2279
Full Changelog: v2.20.0...v2.21.0
2.20.0 : Performance and Optimization!
Hey UX-ers!
This release is packed full of bug fixes and new features. You can now add Polygons in Map and configure icon sets and aliases in Icons. There are also some great performance optimizations, especially in Twig/Live components and StimulusBundle.
Map
- Rename
render_map
Twig functionux_map
by @smnandre in #2073 - Fix bridges
.gitattributes
by @smnandre in #2080 - Fix a Twig function name in docs by @javiereguiluz in #2107
- Misc updates in the docs by @javiereguiluz in #2112
- Rename
leaflet
toL
in event's payloads by @Kocal in #2113 - Adjust changelogs and fix
render_map
deprecated version by @Kocal in #2138 - Render map from Twig with
ux_map()
and<twig:ux:map />
by @smnandre in #2117 - Fix Google/Leaflet bridges when using Webpack Encore by @Kocal in #2199
- Adding polygons to google and leaflet + info window by @rrr63 in #2162
- Fixed typo in links to Symfony UX repo by @sblum51 in #2193
- Fix some links in docs by @javiereguiluz in #2198
Twig Components
- Original
Throwable
get lost during component render by @cuchac in #2030 - Fix debug command by @yceruto in #2088
- Twig code style & "boolean props" part by @smnandre in #2082
- Remove
$tag
parameter from*Node
, as it is now deprecated bytwig/twig
3.12 by @Kocal in #2114 - Add notice about needing
phpdocumentor/reflection-docblock
by @dejagersh in #2102 - Add some explanation about mixing Twig and HTML syntax in nested components by @javiereguiluz in #2125
- Deprecate
cva
twig function by @Kocal in #2144 - Update
index.rst
by @LaurentMarquet in #2170 - Use a
RuntimeExtension
by @smnandre in #2168 - Optimize the
ComponentLoggerListener
by @smnandre in #2167 - Fix HTML in the profiler panel by @javiereguiluz in #2181
- Optimize
ComponentFactory
by @smnandre in #2201
Live Components
- Fix PHP 8.4 errors + deprecations by @smnandre in #2079
- Add
setRouteLocale
inTestLiveComponent
by @smnandre in #2124 - Update CSRF token after component request by @tijnema in #2022
- Fix
DeferLiveComponentSubscriber
service definition by @smnandre in #2200
Autocomplete
- Reset form state on each request for applications that reuse the Symfony application between requests by @dotdevio in #2094
- Translate "Add ..." text by @jmsche in #2108
Icons
- Icon aliases by @smnandre in #2127
- Fix issues found by DOCtor-RST by @Kocal in #2145
- Add support for int/float attribute to
ux_icon
function by @Kocal in #2149 - Add versionadded for Icon Aliases to doc by @kbond in #2163
- Configure icon sets: path, alias & icon attributes by @smnandre in #2156
Dropzone
Translator
- Option to throw an exception instead of returning the message as is when the message is not found. by @Crovitche-1623 in #2185
StimulusBundle
- Improve
StimulusAttributes
rendering performances by switching tohtml
escaping strategy by @Kocal in #2180
Miscellaneous
- Run PHP-CS-Fixer by @Kocal in #2074
- Update php-cs-fixer config by @smnandre in #2077
- Configure
ISSUE_TEMPLATE
by @smnandre in #2084 - Upgrade JS build dependencies by @Kocal in #2075
- Fix Twig extension return types by @smnandre in #2076
- Link to UX support page by @smnandre in #2093
- Upgrade Vitest, use a real browser for Map Bridges tests by @Kocal in #2146
- Add tests on PHP8.4 by @smnandre in #2169
New Contributors
- @cuchac made their first contribution in #2030
- @dotdevio made their first contribution in #2094
- @dejagersh made their first contribution in #2102
- @tijnema made their first contribution in #2022
- @LaurentMarquet made their first contribution in #2170
- @chadyred made their first contribution in #2188
- @Crovitche-1623 made their first contribution in #2185
- @sblum51 made their first contribution in #2193
- @rrr63 made their first contribution in #2162
Full Changelog: v2.19.3...v2.20.0
2.19.3 : Translator fix
Map
- Fix doc link by @smnandre in #2058
- Fix Typo: Removal of an extra ";" by @yoanbernabeu in #2064
Translator
New Contributors
Full Changelog: v2.19.2...v2.19.3
2.19.2 : Enable Anon. Twig Components in Bundles
Another follow up to 2.19.0 that fixes UX Map plus enables a convention for providing anonymous Twig Components in 3rd-party bundles!
Map
- Re-add keyword "symfony-ux", to fix Symfony Flex
package.json
resolving by @Kocal in #2052 - [Leaflet] Fix marker icon gradients rendering, which can fails on some projects by @Kocal in #2055
Twig Components
Live Components
- Update naming of stimulus controller on default attributes - index.rst by @DennisdeBest in #2046
Autocomplete
- Fix warning and code formatting on Autocomplete by @alexislefebvre in #2049
New Contributors
- @alexislefebvre made their first contribution in #2049
Full Changelog: v2.19.1...v2.19.2
2.19.1 : UX Map Improvements
Just a small follow up to 2.19.0 that adds some missing UX Map features!
Map
- Add the possibility to not configure map zoom/center if fit bounds to markers by @Kocal in #2045
- Add support for
libraries
for Google Bridge, inject provider's SDK (L
orgoogle
) to dispatched events by @Kocal in #2044
Full Changelog: v2.19.0...v2.19.1
2.19.0 : New UX Map Package
Hey UX-ers!
This is a big new release with a lot of bug fixes, quality of live improvements, and a
new UX Map package. A new live_action()
Twig function was added to dramatically reduce
the boilerplate for Live Component actions.
Translator
- Revert Fix changing dump directory using AssetMapper by @maelanleborgne in #1913
- Disable cache warmup when translator is identity translator by @SanderVerkuil in #1965
- Fix CS on TranslatorCompilerPass by @Kocal in #1996
- Add configuration to filter dumped translations by domain by @maelanleborgne in #1930
Turbo
- Fix Doctrine Proxy are not Broadcasted by @smnandre in #1929
- Modernize code (ppp, types..) by @smnandre in #1931
- Fix mercure config-file by @Chris53897 in #1928
Twig Components
- Ignore array|sequence in exception message by @smnandre in #1940
- Allow @ prefix in nested attributes by @smnandre in #1966
- Allow attributes to be prefixed with
@
by @kbond in #1960 - Minor syntax fixes in the Twig component docs by @javiereguiluz in #1977
- Fix wrong example for HTML syntax by @WebMamba in #1985
- Fix null props not overwrite parent context by @WebMamba in #1989
- Fix random errors are throw when empty props by @WebMamba in #1988
- Mention that boolean properties require the dynamic syntax by @javiereguiluz in #1991
- Minor syntax fix in Twig Components docs by @javiereguiluz in #2021
Live Components
- Tokenize classes on all allowed whitespaces by @aleho in #1828
- Fix typing for loading hooks + HookManager by @YummYume in #1921
- Fix (de)hydration of composite and/or foreign ID entities by @MatTheCat in #1957
- Typo in LiveComponentHydrator.php by @JeanDavidDaviet in #1972
- Handle
loading="lazy"
for LiveComponent only by @smnandre in #1976 - Allow updates in arrays of DTOs by @cgrabenstein in #1990
- Add a new helper to interact with forms in functional tests by @yoye in #1992
- Fix 'onUpdated' hook call by @kempha in #1980
- Add 'live_action' twig function by @pierredup in #1946
- Document how to use
extra_options
in the Ajax-powered autocomplete by @jakubtobiasz in #1702 - Add missing end delimiter by @JanoschOltmanns in #2037
Dropzone
Icons
- Expose IconRendererInterface by @smnandre in #1889
- Emphasis HTML syntax requires TwigComponent by @smnandre in #1994
- Fix some misc issues in UX Icons docs by @javiereguiluz in #2027
- Add
ignore_not_found
config option by @smnandre in #2023
React
Lazy Image
Map
- Create Map component by @Kocal in #1937
- Rename "symfony/ux-map-%s" to "symfony/ux-%s-map" by @Kocal in #2031
- Fix custom attribute "data-controller" usage by @Kocal in #2032
- [Leaflet] Fix Marker inside-circle by @Kocal in #2036
- [Leaflet] Fix Popup's automatic-content by @Kocal in #2035
- Change "BeforeConnect" for "BeforeCreate" in documentation by @Kocal in #2039
- Add "extra" data for markers and infowindows by @Kocal in #2040
- Fix some comments in component defer part by @Nek- in #2043
Miscellaneous
- Upgrade target from es2017 to es2021 by @Kocal in #1987
- Drop ESLint and Prettier for Biome by @Kocal in #1848
- Upgrade Biomejs, fix patterns, don't use yarn workspaces by @Kocal in #2015
- Update README.md by @94noni in #2038
New Contributors
- @aleho made their first contribution in #1828
- @MatTheCat made their first contribution in #1957
- @SanderVerkuil made their first contribution in #1965
- @cgrabenstein made their first contribution in #1990
- @Chris53897 made their first contribution in #1928
- @yoye made their first contribution in #1992
- @kempha made their first contribution in #1980
- @JanoschOltmanns made their first contribution in #2037
- @Nek- made their first contribution in #2043
Full Changelog: v2.18.1...v2.19.0
2.18.1 : Hotfix
👋🏻 This is a small release that fixes some issues we had in 2.18.0.
Twig Components
- Revert throwing exception when public property is unitialized by @smnandre in #1911
- Revert removing
twig_component.controllers_json
by @smnandre in #1908
Live Components
Stimulus
Translator
- Fix changing dump directory using AssetMapper by @maelanleborgne in #1904
Full Changelog: v2.18.0...v2.18.1