Commit graph

40046 commits

Author SHA1 Message Date
Grzegorz Sadowski
ef7f9e075b
Add config/reference.php to .gitignore 2025-12-17 10:49:02 +01:00
Grzegorz Sadowski
e5fe3bf5b3
[UPMERGE] 1.14 -> 2.1 (#18657)
This PR has been generated automatically.
For more details see
[upmerge_pr.yaml](/Sylius/Sylius/blob/2.1/.github/workflows/upmerge_pr.yaml).

**Remember!** The upmerge should always be merged with using `Merge pull
request` button.

In case of conflicts, please resolve them manually with usign the
following commands:
```
git fetch upstream
gh pr checkout <this-pr-number>
git merge upstream/2.1 -m "Resolve conflicts between 1.14 and 2.1"
```

If you use other name for the upstream remote, please replace `upstream`
with the name of your remote pointing to the `Sylius/Sylius` repository.

Once the conflicts are resolved, please run `git merge --continue` and
push the changes to this PR.
2025-12-17 08:52:10 +01:00
TheMilek
7b8b3ef071
Resolve conflicts between 1.14 and 2.1 2025-12-17 08:44:28 +01:00
Grzegorz Sadowski
ac880f5f41
[CS][DX] Refactor (#18652)
This PR has been generated automatically.
For more details see
[refactor.yaml](/Sylius/Sylius/blob/2.1/.github/workflows/refactor.yaml).
2025-12-17 07:36:38 +01:00
Michał Pysiak
176ee4490e
Add missing upgrade note to the 2.1 (#18655)
| Q               | A
|-----------------|-----
| Branch?         | 2.1
| Bug fix?        | no
| New feature?    | no
| BC breaks?      | no
| Deprecations? | no<!-- don't forget to update the UPGRADE-*.md file
-->
| Related tickets | after https://github.com/Sylius/Sylius/pull/18650
| License         | MIT

<!--
 - Bug fixes must be submitted against the 1.14 or 2.1 branch
 - Features and deprecations must be submitted against the 2.2 branch
 - Make sure that the correct base branch is set

To be sure you are not breaking any Backward Compatibilities, check the
documentation:

https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->
2025-12-17 07:36:21 +01:00
Grzegorz Sadowski
5d39358514
[CS][DX] Refactor (#18654)
This PR has been generated automatically.
For more details see
[refactor.yaml](/Sylius/Sylius/blob/2.1/.github/workflows/refactor.yaml).
2025-12-17 07:35:11 +01:00
Grzegorz Sadowski
81d067d937
Add missing upgrade note to the 2.1 2025-12-17 06:43:53 +01:00
Sylius Bot
00b7fe9c99 [CS][DX] Refactor 2025-12-17 02:35:51 +00:00
Sylius Bot
def30b47b5 [CS][DX] Refactor 2025-12-17 02:35:10 +00:00
Grzegorz Sadowski
41221ab7c1
Change application's version to v2.1.10-dev 2025-12-16 16:53:16 +01:00
Grzegorz Sadowski
1dab433897
Generate changelog for v2.1.9 2025-12-16 16:52:37 +01:00
Grzegorz Sadowski
27b3057e17
Change application's version to v2.1.9 2025-12-16 16:51:04 +01:00
Grzegorz Sadowski
288ad16305
Merge branch '1.14' into 2.1
* 1.14:
  Change application's version to v1.14.15-dev
  Generate changelog for v1.14.14
2025-12-16 16:49:52 +01:00
Grzegorz Sadowski
178e5e8f3e
Change application's version to v1.14.15-dev 2025-12-16 16:41:52 +01:00
Grzegorz Sadowski
7e98258b58
Generate changelog for v1.14.14 2025-12-16 16:41:37 +01:00
Grzegorz Sadowski
864fe9cded
Merge branch '1.14' into 2.1
* 1.14:
  Change application's version to v1.14.15-dev
  Generate changelog for v1.14.14
  Change application's version to v1.14.14
2025-12-16 16:31:03 +01:00
Grzegorz Sadowski
c640c26db1
[UPMERGE] 1.14 -> 2.1 (#18650)
This PR has been generated automatically.
For more details see
[upmerge_pr.yaml](/Sylius/Sylius/blob/2.1/.github/workflows/upmerge_pr.yaml).

**Remember!** The upmerge should always be merged with using `Merge pull
request` button.

In case of conflicts, please resolve them manually with usign the
following commands:
```
git fetch upstream
gh pr checkout <this-pr-number>
git merge upstream/2.1 -m "Resolve conflicts between 1.14 and 2.1"
```

If you use other name for the upstream remote, please replace `upstream`
with the name of your remote pointing to the `Sylius/Sylius` repository.

Once the conflicts are resolved, please run `git merge --continue` and
push the changes to this PR.
2025-12-16 16:27:19 +01:00
Grzegorz Sadowski
634e4e27e8
Remove unnecessary h1 element (#18642)
| Q               | A
|-----------------|-----
| Branch?         | 2.1
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| Deprecations?   | no
| Related tickets | fixes #18620
| License         | MIT
2025-12-16 16:17:17 +01:00
TheMilek
bab9248c0b
Make CoreBundle DBAL dependency consistent with the main composer 2025-12-16 16:12:23 +01:00
TheMilek
732168b430
Tests fix 2025-12-16 15:54:40 +01:00
Grzegorz Sadowski
20ad1861b8
Change application's version to v1.14.15-dev 2025-12-16 15:21:05 +01:00
Grzegorz Sadowski
2839136c1f
Generate changelog for v1.14.14 2025-12-16 15:20:49 +01:00
Grzegorz Sadowski
21ba431ea9
Change application's version to v1.14.14 2025-12-16 15:19:37 +01:00
Bartłomiej Sęk
bb27004601 Add missing h1 element for homepage 2025-12-16 15:01:44 +01:00
TheMilek
7dc41facc0
Resolve conflicts between 1.14 and 2.1 2025-12-16 14:53:44 +01:00
Grzegorz Sadowski
c287be3507
[RFC] Add telemetry feature 1.14 (#18635)
| Q               | A
|-----------------|-----
| Branch?         | 1.14 <!-- see the comment below -->
| Bug fix?        | no
| New feature?    | yes
| BC breaks?      | no
| License         | MIT

<!--
 - Bug fixes must be submitted against the 1.14 or 2.1 branch
 - Features and deprecations must be submitted against the 2.2 branch
 - Make sure that the correct base branch is set

To be sure you are not breaking any Backward Compatibilities, check the
documentation:

https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->

For details, this PR follows the design described in the RFC:
https://github.com/Sylius/Sylius/issues/18588
2025-12-16 14:23:56 +01:00
TheMilek
233a83b1f1
Add telemetry feature 2025-12-16 11:49:25 +01:00
Jan Góralski
ba96495dce
[Admin] Use specific block names in form themes (#18641)
| Q               | A
|-----------------|-----
| Branch?         | 2.1
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| Deprecations?   | no
| Related tickets | fixes #18640
| License         | MIT

  ## Summary

- Replace generic Twig block names with entity-specific names in form
themes to avoid overriding global blocks
- Fix `choice_label` option in `TranslatableAutocompleteType` to
properly respect `extra_options` override

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Refactor**
* Reorganized several admin form templates into more specific,
namespaced blocks for clarity and maintainability.

* **UI Enhancement**
* Added dropdown selectors when adding new rule/action/type entries in
shipping, promotions, and catalog promotion forms.

* **Refactor**
* Updated product attribute and form rendering entry points to use the
new scoped blocks.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-16 11:34:34 +01:00
Bartłomiej Sęk
49b7f36f80 Remove unnecessary h1 element 2025-12-16 11:26:04 +01:00
Wojdylak
be9b622ac5
[Admin] Fix choice_label override via extra_options in autocomplete types 2025-12-16 11:16:15 +01:00
Wojdylak
7560a46d2e
[Admin] Use specific block names in form themes 2025-12-16 11:16:01 +01:00
Wojdylak
e90e837dd3
[Admin] Use specific block names in shipping method form theme 2025-12-16 11:06:31 +01:00
Jan Góralski
bcbd15e70e
[Admin] Fix choice_label override via extra_options in autocomplete types (#18639)
| Q               | A
|-----------------|-----
| Branch?         | 2.1
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| Deprecations?   | no
| Related tickets | n/a
| License         | MIT

  ## Summary
- Allow overriding `choice_label` via `extra_options` in
`TaxonAutocompleteType`
- Remove unused `choice_name` option (has no effect with Symfony UX
Autocomplete)

  ## Why
`choice_name` only affects expanded choice fields (checkboxes/radios),
not select-based autocomplete.
The `choice_label` was set as static value, blocking `extra_options`
override.


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Refactor**
* Refactored autocomplete field configuration in product, product
attribute, product variant, and taxon forms for improved flexibility.
* Enhanced default option resolution for choice display and value
mapping.
* Improved customization support in translatable autocomplete components
through updated option handling.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-15 14:24:30 +01:00
Wojdylak
cfdf6416b5
[Admin] Fix choice_label override via extra_options in autocomplete types 2025-12-15 13:57:46 +01:00
Grzegorz Sadowski
0a417bf660
feat(hooks): trigger hooks on product index and product show (#18191)
| Q               | A
|-----------------|-----
| Branch?         | 2.1 <!-- see the comment below -->
| Bug fix?        | no
| New feature?    | yes
| BC breaks?      | no
| Deprecations?   | no
| Related tickets | no
| License         | MIT

To trigger some hooks like `sylius_shop.product.index#metatags` and
`sylius_shop.product.show#metatags`



<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Chores**
* Introduced new template variables for internal use without affecting
existing page behavior or appearance.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-15 12:05:38 +01:00
Maxime Huran
6d0ceacc24
feat(hooks): trigger hooks on product index and product show 2025-12-15 07:52:14 +01:00
Grzegorz Sadowski
247463a382
Remove choice_value from autocomplete types to fix performance issue (#18629)
| Q               | A
|-----------------|-----
| Branch?         | 2.1
| Bug fix?        | yes
| New feature?    | no
| BC breaks?      | no
| Deprecations?   | no
| Fixed tickets   | fixes #17953
| License         | MIT

## Summary

Removes explicit `choice_value => 'code'` from autocomplete form types
to fix a **critical performance issue**.

### The Problem

When `choice_value` is explicitly set (even to a property like `code`),
Symfony's `DoctrineChoiceLoader` cannot use the optimized
`getEntitiesByIds()` query. Instead, it falls back to loading **ALL
entities** via `getEntities()` without any WHERE clause.

With 4000+ products, this causes severe performance degradation.

### The Solution

- Remove `choice_value` option, letting Symfony use the default (entity
ID)
- This enables the optimized `WHERE id IN (...)` query
- Update all Behat contexts/elements to use `getId()` instead of
`getCode()`

### References

- [Symfony UX Issue #2736](https://github.com/symfony/ux/issues/2736) -
Extra query without WHERE when choice_value is defined
- [Symfony Issue
#57724](https://github.com/symfony/symfony/issues/57724) - EntityType
performance with large datasets
- [Lazy Choice Loader (Symfony
7.2)](https://symfony.com/blog/new-in-symfony-7-2-lazy-choice-loader)

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Improvements**
* Autocomplete fields across products, variants, options and taxons now
display and select by human-readable names while using stable internal
identifiers for form submissions.
* Catalog promotion scope controls updated for clearer name-based
selection and feedback when adding/removing scopes.
* Product image and variant selection flows enhanced to show and verify
selected variant names more reliably.
* Taxon parent selection improved for richer behavior in
JavaScript-enabled admin pages.

* **Documentation**
* Added upgrade notes explaining autocomplete behavior and migration
considerations.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-15 06:50:15 +01:00
Rafikooo
ff4cd59683
[Admin] Allow customizing autocomplete options via extra_options 2025-12-12 14:31:21 +01:00
Rafikooo
90a13011fd
[Docs] Add upgrade note for autocomplete choice_value removal 2025-12-12 14:31:16 +01:00
Rafał Jaskulski
635ef4a4ff
Updating polish translations using AI (#18593)
| Q               | A
|-----------------|-----
| Branch?         | 2.1
| License         | MIT





<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

* **Chores**
* Expanded and polished Polish translations across UI, validation,
flashes and forms for many modules (catalog, promotions, checkout,
shipping, payments, accounts, locale, products, tax, admin).
* Standardized wording, pluralization and length/format helper texts for
labels, errors and notifications (passwords, emails, shipments,
coupons).
* Added numerous user-facing messages and help texts; removed or
relocated some obsolete translation entries for consistency.

<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-12 12:59:02 +01:00
Rafikooo
9976627b92
[Translations] Fix Polish ICU pluralization format 2025-12-12 10:12:58 +01:00
Szymon Filipek
9c1656bc2d
Translations applied 2025-12-12 00:01:22 +01:00
Rafikooo
4deebdf3cf
[Behat] Update tests to work with entity IDs instead of codes in autocomplete
After removing choice_value from autocomplete types, the form values
are now entity IDs instead of codes. This commit updates Behat tests to:

- Use selectByName/removeByName instead of selectByValue/removeByValue
- Use getSelectedItems() or option[selected] text for assertions
- Compare with entity names instead of codes
- Add JS/non-JS driver handling for parent taxon selection

Refs: #17953
2025-12-11 12:04:12 +01:00
Rafikooo
e833ea633a
[Admin] Remove choice_value from autocomplete types to fix performance issue
When choice_value is set to 'code' on Symfony UX Autocomplete types,
DoctrineChoiceLoader cannot use optimized getEntitiesByIds() query,
causing ALL entities to be loaded instead of just the selected ones.

This change removes choice_value from all UX Autocomplete types,
letting Symfony use the default entity ID which enables the optimized
WHERE id IN (...) query.

Refs: #17953
2025-12-11 12:03:34 +01:00
Grzegorz Sadowski
d8a998c223
[Admin] Fix cache TTL in HubNotificationProvider and refactor tests (#18630)
Fixes cache TTL bug where `expiresAfter()` was never called due to
incorrect callback signature.

Changes:
- Fix cache callback to accept `ItemInterface` and set proper TTL
- Refactor tests from Prophecy to PHPUnit native mocks
- Add tests for `supports()` method and null request handling
- Deprecate unused `$clock` constructor argument (will be removed in
3.0)
2025-12-11 06:50:47 +01:00
Rafikooo
76c8febc7a
[Admin] Deprecate unused clock argument in HubNotificationProvider 2025-12-10 20:36:17 +01:00
Rafikooo
005849ebcd
[Admin] Fix cache TTL setting in HubNotificationProvider 2025-12-10 20:30:12 +01:00
Rafikooo
6fff3158fd
[Tests] Refactor HubNotificationProviderTest to use PHPUnit mocks 2025-12-10 14:55:37 +01:00
Rafał Jaskulski
49f67b7091
TASK: [2.1] [Maintenance] adjust translation guide in github issue template config (#18404)
| Q               | A
|-----------------|-----
| Branch?         | 2.1 <!-- see the comment below -->
| Bug fix?        | no
| New feature?    | no
| BC breaks?      | no
| Deprecations? | no <!-- don't forget to update the UPGRADE-*.md file
-->
| Related tickets | fixes #X, partially #Y, mentioned in #Z
| License         | MIT

<!--
 - Bug fixes must be submitted against the 1.14 or 2.0 branch
 - Features and deprecations must be submitted against the 2.1 branch
 - Make sure that the correct base branch is set

To be sure you are not breaking any Backward Compatibilities, check the
documentation:

https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->

<img width="800" height="593" alt="image"
src="https://github.com/user-attachments/assets/8060f6d7-e3b1-49a1-8eec-2cc71f39aaec"
/>

I noticed that the URL `translate.sylius.com` wasnt working anymore. So
i adjusted the title, url, and description with the latest informations
on how to contribute translations to sylius.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

- Documentation
- Updated the issue template to replace the Translations contact with a
UI Translations contact, including a refreshed link and clearer guidance
for requesting or discussing UI translation updates.
- Improves discoverability and accuracy for contributors seeking
translation support.
  - No impact on application behavior or user interface.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-10 09:55:55 +01:00
Rafał Jaskulski
7478c3a693
TASK: [2.1] [AttributeBundle] add missing translations for float attributes type (#18403)
| Q               | A
|-----------------|-----
| Branch?         | 2.1 <!-- see the comment below -->
| Bug fix?        | no
| New feature?    | no
| BC breaks?      | no
| Deprecations? | no <!-- don't forget to update the UPGRADE-*.md file
-->
| Related tickets | fixes #X, partially #Y, mentioned in #Z
| License         | MIT

<!--
 - Bug fixes must be submitted against the 1.14 or 2.0 branch
 - Features and deprecations must be submitted against the 2.1 branch
 - Make sure that the correct base branch is set

To be sure you are not breaking any Backward Compatibilities, check the
documentation:

https://docs.sylius.com/en/latest/book/organization/backward-compatibility-promise.html
-->

This pull request adds, and adjusts two translations for the float
attributes type in the AttributesBundle for German, and Austria German.


<img width="235" height="435" alt="2025-09-30 19_23_15-NVIDIA"
src="https://github.com/user-attachments/assets/4b925aea-c9b5-44be-9c34-0d1c9b6fbd1d"
/>


<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit

- New Features
- Added German label "Gleitkommazahl" for the “float” field in attribute
configuration and UI.

- Chores
- Harmonized German translations across DE, AT and CH locales by
replacing prior variants (e.g., "Fließkomma"/"Fließkommazahl") with
"Gleitkommazahl" for consistency.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-12-10 09:50:32 +01:00