Releases: symfony/ux
2.31.0 : E2E Tests with Playwright
Live Components
- Fix new URL generation when using
LivePropwith customfieldNameby @Kocal in #3058 - Small update to explicit custom template path on components by @DocFX in #3072
- Improve performance for
LiveUrlSubscriberby @dannyvw in #3077 - Replace the browser's URL before triggering
render:finishedhook by @xDeSwa in #3088 - Add missing import to code snippet by @rgeraads in #3127
- Add dispatch browser event assertion in
InteractsWithLiveComponentsby @Develog in #3136
Twig Components
- Remove floating text in documentation by @alexislefebvre in #3131
- Document how to define mandatory/default props by @alexislefebvre in #3132
Icons
- Updates for UX Icons docs by @javiereguiluz in #3063
- Explain svg colors and improve example configuration by @dbu in #2671
- Add documentation on icons colors by @StevenRenaux in #3082
Map
- Add
fitBoundsToMarkersoption to Twig extension and component by @ker0x in #3114 - Display warning when trying to define a custom icon for a
Markerthat already has anIconby @ker0x in #3118
Vue
- Fix Route PHP attribute in Vue Router Web History mode by @michael-bouvy in #3069
StimulusBundle
- Add missing closing brace in AssetMapper 6.3 example by @quentinRogeret34 in #3096
Toolkit
- Add npm & importmap package dependencies by @Kocal in #3071
- Add AlertDialog recipe by @Kocal in #3073
- Rework the "dependencies" Recipe JSON schema by @Kocal in #3076
- Minor fixes by @Kocal in #3085
- Delay/hide the "Community Kits" feature, minor fixes by @Kocal in #3097
- Rework recipe name by @Kocal in #3107
- Add missing UX Icons dependencies by @Kocal in #3129
- Add Spinner component by @bernard-ng in #3145
Translator
Site
- Add examples listing on homepage, improve example page by @Kocal in #3078
- Fix UX Translator demo on "price" parameter by @Kocal in #3081
- Lock icons by @Kocal in #3084
- Fix port to 9044 and upgrade UX dependencies by @Kocal in #3093
Miscellaneous
- Fix highest jobs with Doctrine ^3.0 by @Kocal in #3059
- Configure .gitattributes to ignore Vitest and Playwright config files from export by @Kocal in #3062
- PHP CS Fixer - apply const->var annotation conversion by @keradus in #3065
- Prevent pnpm to install new packages published the same day by @Kocal in #3083
- Fix deprecations with zenstruck/foundry:^2.7 by @Kocal in #3089
- Add doc for E2E steps + minor modifications by @raphael-geffroy in #3086
- Refactor "test_package.sh" to its original purpose, add multiples checks for packages definition by @Kocal in #3090
- Fix
composer configto avoid modifyingpackage.jsonautomatically by @Crovitche-1623 in #3091 - Remove explicit configuration
twig.exception_controllerfrom Kernel for testing by @Kocal in #3106 - Remove duplicated matrix entry for Symfony version in unit-tests.yaml by @Kocal in #3108
- Add
--jsonflag to composer config command by @Kocal in #3139 - Configure OIDC for trusted auto-publishing by @Kocal in #3142
New Contributors
- @keradus made their first contribution in #3065
- @DocFX made their first contribution in #3072
- @michael-bouvy made their first contribution in #3069
- @quentinRogeret34 made their first contribution in #3096
- @rgeraads made their first contribution in #3127
- @bernard-ng made their first contribution in #3145
- @Develog made their first contribution in #3136
Full Changelog: v2.30.0...v2.31.0
2.30.0 : PHP 8.5
Hey UX'ers!
This release focuses on stability and compatibility: Live Components and Maps get key
bug fixes, React and Icons see small improvements, and Symfony UX is now fully compatible
with PHP 8.5.
Twig Components
- Replace Twig comments with PHP comments by @Tastaturberuf in #3037
Live Components
- Return empty string for
data-value=""instead of falling back tonullby @mercuryseries in #3031 - Clean
versionaddedby @smnandre in #3049 - Refactor and fix some edge cases on new URL generation with path + query LiveProps by @Kocal in #3053
- Fix BC Break when defining
LivePropproperties with PHPDoc type and no-native type, when using TypeInfo by @norkunas in #3043
Map
- Fix InfoWindow auto-opening by @Kocal in #3034
- Correct and reword typos about polygons by @Kocal in #3035
- Deprecate option
titlefromPolygon,Polyline,RectangleandCirclein favor ofinfoWindowby @Kocal in #3036 - Add E2E tests, close #3022 by @Kocal in #3038
- Fix typo by @rrr63 in #3046
React
Icons
- Fallback to default dimensions 16/16 when Icon's dimensions on Iconify are missing by @stlgaits in #3042
Miscellaneous
- Create E2E app for browsers tests by @Kocal in #3014
- Rename
test_appstoappsby @Kocal in #3041 - Fix
highest-depsjob by @Kocal in #3044 - Ensure PHP 8.5 compatibility by @Kocal in #3045
- Re-configure LF eof in git by @Kocal in #3047
- Add E2E tests by @Kocal in #3048
- Remove some indirect deprecations by @Kocal in #3055
New Contributors
- @Tastaturberuf made their first contribution in #3037
- @stlgaits made their first contribution in #3042
Full Changelog: v2.29.2...v2.30.0
2.29.2 : fix LiveProp
Hey UX'ers!
This release fixes a Live Component, LiveProp URL generation bug, it now correctly re-use the previous logic with support of Serializer and custom modifiers.
Live Components
- Fix new URL calculation with
LivePropusing Serializer (and attributes), and when using custom modifier by @Kocal in #2988
Icons
- Update the links to some icon sets by @javiereguiluz in #2992
ToolKit
- Improve CI workflows for linting Kits by @Kocal in #2984
- Rework kits architecture, change term for "recipe" by @Kocal in #2986
Miscellaneous
- Remove unnecessary checks for PHP <8.1 (in tests) by @Kocal in #2999
- Make the Windows CI green by @Kocal in #3000
- Ensure UX Map assets are built first by @Kocal in #3001
- Remove PHP-CS-Fixer job by @Kocal in #3002
- Run latest PHP-CS-Fixer with improved configuration by @Kocal in #3003
- Fix highest dev jobs by @Kocal in #3004
- Configure Vitest for unit and browser tests (use @puppeteer/browsers and webdriverio) by @Kocal in #3010
- Use Playwright for Browser testing by @Kocal in #3013
Full Changelog: v2.29.1...v2.29.2
2.29.1 : npm fix
Hey UX'ers!
Small bug fix release to fix installing the Map bridges with npm.
Map
- Allows Bridges JavaScript assets to be installed with
npmwhen usingfile:vendor/symfony/ux-*-map/assetsby @Kocal in #2983
Full Changelog: v2.29.0...v2.29.1
2.29.0 : Symfony 8!
Hey UX'ers!
This release adds Symfony 8 support for all packages! In Map, we've added clustering support.
We've also deprecated the TogglePassword package, Symfony UX 3.0 will drop this package.
Autocomplete
Map
Live Components
- Fix
#[LiveProp(writable: true, url: true)]that was not updated as a query parameter by @mbuliard in #2976 - Fix typo on
Validconstraint name by @Seb33300 in #2980
TogglePassword
Vue
Miscellaneous
New Contributors
Full Changelog: v2.28.2...v2.29.0
2.28.2 : Whoopsie 2
Hey UX'ers!
This fixes a LiveComponent regression added in 2.28.0.
Live Components
Icons
- Change
xmlnsattribute of downloaded icons tohttp://www.w3.org/2000/svgby @roverwolf in #2959
Miscellaneous
- Rework
app-testsjob to usenpmas user's packages manager by @Kocal in #2953 - Fix npm releases with pnpm by @Kocal in #2954
- Add Fabbot as a GitHub Actions by @Kocal in #2955
- Apply fabbot rules by @nicolas-grekas in #2957
New Contributors
- @roverwolf made their first contribution in #2959
Full Changelog: v2.28.1...v2.28.2
2.28.1 : Whoopsie
Hey UX'ers!
We got a little too fancy in our package.json files.
Miscellaneous
- Fix
package.jsonfiles to not use "catalog" feature from PNPM, as it breaks installation fromvendor/PHP packages by @Kocal in #2952
Full Changelog: v2.28.0...v2.28.1
2.28.0 : Map Graduates 🎓
Hey UX'ers!
Map now has minZoom/maxZoom options and has graduated from experimental to stable! 🎉
In LiveComponents, the LiveProp can now map to a routing parameter. Autocomplete now
has the ability to disable plugins.
Warning
If using React with symfony/asset-mapper and NOT symfony/flex, there is a small BC break.
See the CHANGELOG for mitigation details.
Autocomplete
- Force installation of CSS files for AssetMapper by @leevigraham in #2902
- Upgrade Foundry to ^2.0 by @Kocal in #2928
- Allow plugins to be disabled through
tom_select_options.plugins.<plugin> = falseby @maartendekeizer in #401
Live Components
- Update css to cover more data-loading use cases by @barlito in #2891
- Fix BC break when using
PropertyTypeExtractorInterface::getType()on a#[LiveProp]propertyxwhen gettergetXexists by @Kocal in #2922 - Add validation modifiers (min_length, max_length, min_value, max_value) to data-model inputs by @xDeSwa in #2926
- Add the possibility to map
LivePropas a path parameter by @mbuliard in #2673
Icons
- Don't disable commands based on debug by @kbond in #2884
- Document
icon_setsconfiguration by @Kocal in #2938 - Fix
icon_setsconfiguration documentation, follow #2938 by @Kocal in #2939 - Some fixes on LiveComponent assets by @Kocal in #2940
Map
- Rewrite documentation about extra data by @Kocal in #2871
- Add options
minZoomandmaxZoomby @Kocal in #2896 - Mark package as non-experimental by @Kocal in #2945
- Replace deprecation Vitest option
browser.nametobrowser.instancesby @Kocal in #2947
Translator
- Minor fixes in tests context by @Kocal in #2870
- Add functional test to ensure only enabled locales are dumped by @Kocal in #2946
Swup
🚧 Toolkit 🚧
Site
Miscellaneous
- Run JS tests under multiple JS versions, define
.nvmrcto 22.6 by @Kocal in #2865 - Migrate PHPUnit configs and homogenize them by @Kocal in #2867
- Fix functional tests Turbo (Chrome 137 & dev-tools) by @Kocal in #2873
- Migrate
bin/*.jsto TypeScript, usetsxby @Kocal in #2866 - Upgrade Rollup dependencies by @Kocal in #2876
- Remove Babel dependencies by @Kocal in #2877
- Remove
@symfony/stimulus-testingdev dependencies by @Kocal in #2879 - Remove useless
eslint-comments by @Kocal in #2880 - (Re-)use
ramsey/composer-installaction when possible by @Kocal in #2885 - Run unit and functional tests under Windows too by @Kocal in #2816
- Fix components assets compilation on Windows server by @Kocal in #2890
- Fix typo
CONTRIBUTING.mdby @xDeSwa in #2927 - Explicitly import Vitest APIs instead of relying on globals by @Kocal in #2931
- Replace Yarn Berry by PNPM by @Kocal in #2932
- Upgrade Vitest to ^3.2.4 by @Kocal in #2933
- Modernize and simplify our packages building tools, replace Rollup by tsup by @Kocal in #2944
- Download only Chromium browser for Vitest/Playwright tests by @Kocal in #2948
New Contributors
- @barlito made their first contribution in #2891
- @maxperei made their first contribution in #2893
- @leevigraham made their first contribution in #2902
- @mbuliard made their first contribution in #2673
Full Changelog: v2.27.0...v2.28.0
2.27.0 : Map Powerup
Hey UX'ers!
This release adds a bunch of new features to Map: Circle and Rectangle support, attribution and zoom control
options, and more. Fixes, improvements, and optimizations are also included in Autocomplete, Twig Components,
and Live Components.
Autocomplete
Twig Components
- Fix escaping of Alpine.js attribute keys containing numeric characters by @klausi85 in #2833
- Update the docs about nested Twig components by @javiereguiluz in #2847
- Update the docs about the
mount()method of Twig components by @javiereguiluz in #2843
Live Components
- Fix query string decoding with no
=by @smnandre in #2829 - Optimize
LiveComponentStack::getCurrentLiveComponent()by @Kocal in #2821 - Add events assertions in
InteractsWithLiveComponentsby @Arkalo2 in #2712
Map
- Add option to configure attribution and zoom control by @dannyvw in #2792
- Do not override
fitBoundsToMarkerswhen using LiveComponent by @dannyvw in #2811 - Fix missing dynamic attributes on
<twig:ux:map>example by @raphael-geffroy in #2840 - Add Circle support by @Valmonzo in #2838
- [Google] Fix race conditions when loading Google Maps API, when rendering >=2 maps by @Kocal in #2854
- Add Rectangle support by @Valmonzo in #2845
- [Google] Fix
InfoWindowcompatibility withCircleandRectangleby @Kocal in #2858 - Minor improvements on TypeScript types by @Kocal in #2859
- Deprecate property
rawOptionsfromux:map:*:before-createevents, in favor ofbridgeOptionsby @Kocal in #2860 - Allows Map options customization in
ux:map:pre-connectevent (e.g.:zoom,options,bridgeOptions...) by @Kocal in #2861 - Update test to include circle and rectangle data attributes by @Valmonzo in #2862
- Add
extradata toMapby @Kocal in #2863
Icons
- Docs: Merging code blocks; language improvements by @ThomasLandauer in #2793
- Explain Icons SVG size by @dbu in #2670
Site
- Trim Icon's DataList's
<dd>to get a better copy value by @CyrilKrylatov in #2836
Miscellaneous
- Add missing return type in test Kernel by @smnandre in #2830
- Fix
linkscript by adding Bridges support by @Kocal in #2839 - PHPStan: use PHP version from the matrix by @alexislefebvre in #2842
- Configure
doctrine.orm.enable_native_lazy_objectsto fix deprecation in PHP 8.4+ by @Kocal in #2851 - Reduce number of PHPStan jobs by @Kocal in #2852
- Prevent
yarn watchto exit if TypeScript plugin is unable to compile by @Kocal in #2853 - Upgrade Biome.js to ^2 by @Kocal in #2856
New Contributors
- @CyrilKrylatov made their first contribution in #2836
- @klausi85 made their first contribution in #2833
- @Arkalo2 made their first contribution in #2712
Full Changelog: v2.26.1...v2.27.0
2.26.1 : Conflict Resolution
Hey UX'ers!
Just a small release to fix a Live Component composer conflict.
Live Components
Miscellaneous
Full Changelog: v2.26.0...v2.26.1